Fix changing of Music folder for 'Personal' mpd collection.
This commit is contained in:
committed by
craig.p.drummond
parent
087f0f03bd
commit
eb50e7b8df
@@ -39,9 +39,10 @@
|
||||
1.1.3
|
||||
-----
|
||||
1. (Hopefully) fix selection order of items - and order added to playqueue.
|
||||
2. Update German translation, use 'ß' instead of 'ss' for certain words.
|
||||
2. Updated German translation.
|
||||
3. Add Russian translation, thanks to Julia Dronova.
|
||||
4. Online services support does not require taglib.
|
||||
5. Fix changing of Music folder for 'Personal' mpd collection.
|
||||
|
||||
1.1.2
|
||||
-----
|
||||
|
||||
@@ -139,10 +139,10 @@ void MPDUser::setMusicFolder(const QString &folder)
|
||||
QFile cfgFile(Utils::configDir(constDir, true)+constConfigFile);
|
||||
QStringList lines;
|
||||
if (cfgFile.open(QIODevice::ReadOnly|QIODevice::Text)) {
|
||||
while (!cfgFile.atEnd() && (det.dir.isEmpty() || det.hostname.isEmpty())) {
|
||||
while (!cfgFile.atEnd()) {
|
||||
QString line = cfgFile.readLine();
|
||||
if (line.startsWith(constMusicFolderKey)) {
|
||||
lines.append(constMusicFolderKey+" \""+folder+"\"");
|
||||
lines.append(constMusicFolderKey+" \""+folder+"\"\n");
|
||||
} else {
|
||||
lines.append(line);
|
||||
}
|
||||
@@ -154,12 +154,24 @@ void MPDUser::setMusicFolder(const QString &folder)
|
||||
if (cfgFile.open(QIODevice::WriteOnly|QIODevice::Text)) {
|
||||
QTextStream out(&cfgFile);
|
||||
foreach (const QString &line, lines) {
|
||||
out << line << endl;
|
||||
out << line;
|
||||
}
|
||||
}
|
||||
}
|
||||
det.dir=folder;
|
||||
det.dirReadable=QDir(det.dir).isReadable();
|
||||
if (0!=getPid()) {
|
||||
controlMpd(true); // Stop
|
||||
controlMpd(false); // Start
|
||||
}
|
||||
}
|
||||
|
||||
void MPDUser::setDetails(const MPDConnectionDetails &d)
|
||||
{
|
||||
setMusicFolder(d.dir);
|
||||
bool dirReadable=det.dirReadable;
|
||||
det=d;
|
||||
det.dirReadable=dirReadable;
|
||||
}
|
||||
|
||||
static void removeDir(const QString &d)
|
||||
|
||||
@@ -46,7 +46,7 @@ public:
|
||||
void cleanup();
|
||||
|
||||
const MPDConnectionDetails & details(bool createFiles=false) { init(createFiles); return det; }
|
||||
void setDetails(const MPDConnectionDetails &d) { det=d; }
|
||||
void setDetails(const MPDConnectionDetails &d);
|
||||
|
||||
private:
|
||||
void init(bool create);
|
||||
|
||||
Reference in New Issue
Block a user