]> git.pld-linux.org Git - packages/qt4.git/blame - qt-everywhere-opensource-src-4.8.5-QTBUG-4862.patch
rebuild with openssl 3.0.0
[packages/qt4.git] / qt-everywhere-opensource-src-4.8.5-QTBUG-4862.patch
CommitLineData
a0850133
AM
1diff -up qt-everywhere-opensource-src-4.8.5/src/corelib/io/qfilesystemengine_unix.cpp.QTBUG-4862 qt-everywhere-opensource-src-4.8.5/src/corelib/io/qfilesystemengine_unix.cpp
2--- qt-everywhere-opensource-src-4.8.5/src/corelib/io/qfilesystemengine_unix.cpp.QTBUG-4862 2013-06-09 12:02:50.323221694 -0500
3+++ qt-everywhere-opensource-src-4.8.5/src/corelib/io/qfilesystemengine_unix.cpp 2013-06-09 12:38:53.140804742 -0500
4@@ -624,6 +624,25 @@ QString QFileSystemEngine::homePath()
4c749030
JP
5 home = QFile::decodeName(QByteArray(pw->pw_dir));
6 }
a0850133
AM
7 if (home.isEmpty())
8+ {
9+#if !defined(QT_NO_THREAD) && defined(_POSIX_THREAD_SAFE_FUNCTIONS) && !defined(Q_OS_OPENBSD)
10+ int size_max = sysconf(_SC_GETPW_R_SIZE_MAX);
11+ if (size_max == -1)
12+ size_max = 1024;
13+ QVarLengthArray<char, 1024> buf(size_max);
14+#endif
15+ struct passwd *pw = 0;
16+ uid_t user_id = getuid();
17+ pw = getpwuid(user_id);
18+#if !defined(QT_NO_THREAD) && defined(_POSIX_THREAD_SAFE_FUNCTIONS) && !defined(Q_OS_OPENBSD)
19+ struct passwd entry;
20+ getpwuid_r(user_id, &entry, buf.data(), buf.size(), &pw);
21+#else
22+ pw = getpwuid(user_id);
23+#endif
24+ home = QFile::decodeName(QByteArray(pw->pw_dir));
25+ }
26+ if (home.isEmpty())
27 home = rootPath();
28 return QDir::cleanPath(home);
29 }
This page took 0.033797 seconds and 4 git commands to generate.