From b3c8bdcc0d1e4b2ab298847a7902b6d60410a5bc Mon Sep 17 00:00:00 2001 From: Thomas Preud'homme Date: Fri, 24 Nov 2017 23:24:09 +0000 Subject: New upstream version 1.2.3.6 --- ExtraSocket.cpp | 66 ++++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 47 insertions(+), 19 deletions(-) (limited to 'ExtraSocket.cpp') diff --git a/ExtraSocket.cpp b/ExtraSocket.cpp index 08b0979..8175c5f 100644 --- a/ExtraSocket.cpp +++ b/ExtraSocket.cpp @@ -1,32 +1,60 @@ /** \file ExtraSocket.h \brief Define the socket of ultracopier \author alpha_one_x86 -\version 0.3 -\date 2010 \licence GPL3, see the file COPYING */ #include "ExtraSocket.h" +#include +#include QString ExtraSocket::pathSocket(const QString &name) { #ifdef Q_OS_UNIX - return name+"-"+QString::number(getuid()); + return name+QStringLiteral("-")+QString::number(getuid()); #else - QString userName; - DWORD size=0; - if(GetUserNameW(NULL,&size) || (GetLastError()!=ERROR_INSUFFICIENT_BUFFER)) - { - } - else - { - WCHAR * userNameW=new WCHAR[size]; - if(GetUserNameW(userNameW,&size)) - { - userName.fromWCharArray(userNameW,size*2); - userName=QString(QByteArray((char*)userNameW,size*2-2).toHex()); - } - delete userNameW; - } - return name+"-"+userName; + QString userName; + + /* bad way for catchcopy compatibility + char uname[1024]; + DWORD len=1023; + if(GetUserNameA(uname, &len)!=FALSE) + userName=QString::fromLatin1(toHex(uname));*/ + + QChar charTemp; + DWORD size=255; + WCHAR * userNameW=new WCHAR[size]; + if(GetUserNameW(userNameW,&size)) + { + QByteArray tempArray; + userName=QString::fromWCharArray(userNameW,size-1); + int index=0; + while(index