Fix tmp dir for >1 user
authorRoy Marples <roy@marples.name>
Fri, 15 May 2015 14:49:36 +0000 (14:49 +0000)
committerRoy Marples <roy@marples.name>
Fri, 15 May 2015 14:49:36 +0000 (14:49 +0000)
src/dhcpcd-qt/dhcpcd-singleton.cpp

index 4094d481ba361e6faa30ce92421dfb70798b7dbf..42ebd28f522505250279cf93ce3891ff12efe516 100644 (file)
@@ -55,17 +55,18 @@ bool DhcpcdSingleton::lock()
        string file;
        const char *display;
 
        string file;
        const char *display;
 
-       if (mkdir(DHCPCD_TMP_DIR, DHCPCD_TMP_DIR_PERM) == -1 &&
+       file = DHCPCD_TMP_DIR;
+       file += "-";
+       file += getlogin();
+       if (mkdir(file.c_str(), DHCPCD_TMP_DIR_PERM) == -1 &&
            errno != EEXIST)
        {
            errno != EEXIST)
        {
-               cerr << "dhcpcd-qt: " << "mkdir: " << DHCPCD_TMP_DIR << ": "
+               cerr << "dhcpcd-qt: " << "mkdir: " << file << ": "
                    << strerror(errno) << endl;
                return false;
        }
 
                    << strerror(errno) << endl;
                return false;
        }
 
-       file = DHCPCD_TMP_DIR;
-       file += "/dhcpcd-qt-";
-       file += getlogin();
+       file += "/dhcpcd-qt";
        display = getenv("DISPLAY");
        if (display && *display != '\0' && strchr(display, '/') == NULL) {
                file += '.';
        display = getenv("DISPLAY");
        if (display && *display != '\0' && strchr(display, '/') == NULL) {
                file += '.';