]> git.pld-linux.org Git - packages/qt4.git/blob - qt-everywhere-opensource-src-4.8.3-QTBUG-4862.patch
bump icu abi to 72
[packages/qt4.git] / qt-everywhere-opensource-src-4.8.3-QTBUG-4862.patch
1 diff -up qt-everywhere-opensource-src-4.8.3/src/corelib/io/qfilesystemengine_unix.cpp.QTBUG-4862 qt-everywhere-opensource-src-4.8.3/src/corelib/io/qfilesystemengine_unix.cpp
2 --- qt-everywhere-opensource-src-4.8.3/src/corelib/io/qfilesystemengine_unix.cpp.QTBUG-4862     2012-09-10 20:36:50.000000000 -0500
3 +++ qt-everywhere-opensource-src-4.8.3/src/corelib/io/qfilesystemengine_unix.cpp        2012-10-22 14:16:42.672111081 -0500
4 @@ -624,6 +624,25 @@ QString QFileSystemEngine::homePath()
5  {
6      QString home = QFile::decodeName(qgetenv("HOME"));
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  }
30
This page took 0.028424 seconds and 3 git commands to generate.