[Pkg-owncloud-commits] [owncloud-client] 400/470: Disambiguate socket API pathes on Windows with user name

Sandro Knauß hefee-guest at moszumanska.debian.org
Thu May 12 16:25:32 UTC 2016


This is an automated email from the git hooks/post-receive script.

hefee-guest pushed a commit to branch master
in repository owncloud-client.

commit ce6a365328b23f294e27b95f01b2782ca7e92e95
Author: Daniel Molkentin <danimo at owncloud.com>
Date:   Wed Apr 20 16:51:17 2016 +0200

    Disambiguate socket API pathes on Windows with user name
    
    Addresses #3411
---
 binary                                                 |  2 +-
 shell_integration/windows/OCUtil/RemotePathChecker.cpp | 16 ++++++++++++++--
 src/gui/socketapi.cpp                                  |  3 ++-
 3 files changed, 17 insertions(+), 4 deletions(-)

diff --git a/binary b/binary
index ac42257..a564805 160000
--- a/binary
+++ b/binary
@@ -1 +1 @@
-Subproject commit ac422574995d2339d98fff552f11450b18d7bcff
+Subproject commit a56480559ddda3af36b63bb42cfc6cfe05ebc6db
diff --git a/shell_integration/windows/OCUtil/RemotePathChecker.cpp b/shell_integration/windows/OCUtil/RemotePathChecker.cpp
index 85b0135..d03a383 100644
--- a/shell_integration/windows/OCUtil/RemotePathChecker.cpp
+++ b/shell_integration/windows/OCUtil/RemotePathChecker.cpp
@@ -31,12 +31,24 @@
 
 using namespace std;
 
+#define BUFSIZE 512
+
+std::wstring getUserName() {
+    DWORD  len = BUFSIZE;
+    TCHAR  buf[BUFSIZE];
+    if (GetUserName(buf, &len)) {
+        return std::wstring(&buf[0], len);
+    } else {
+        return std::wstring();
+    }
+}
 
 // This code is run in a thread
 void RemotePathChecker::workerThreadLoop()
 {
     auto pipename = std::wstring(L"\\\\.\\pipe\\");
-    pipename += L"ownCloud";
+    pipename += L"ownCloud\\";
+    pipename += getUserName();
 
     bool connected = false;
     CommunicationSocket socket;
@@ -241,4 +253,4 @@ RemotePathChecker::FileState RemotePathChecker::_StrToFileState(const std::wstri
 	}
 
 	return StateNone;
-}
\ No newline at end of file
+}
diff --git a/src/gui/socketapi.cpp b/src/gui/socketapi.cpp
index 91887f0..0614168 100644
--- a/src/gui/socketapi.cpp
+++ b/src/gui/socketapi.cpp
@@ -67,7 +67,8 @@ SocketApi::SocketApi(QObject* parent)
 
     if (Utility::isWindows()) {
         socketPath = QLatin1String("\\\\.\\pipe\\")
-        + QLatin1String("ownCloud");
+                + QLatin1String("ownCloud") + '\\'
+                + QString::fromLocal8Bit(qgetenv("USERNAME"));
         // TODO: once the windows extension supports multiple
         // client connections, switch back to the theme name
         // See issue #2388

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-owncloud/owncloud-client.git



More information about the Pkg-owncloud-commits mailing list