diff options
Diffstat (limited to 'src/corelib/io/qlockfile_unix.cpp')
-rw-r--r-- | src/corelib/io/qlockfile_unix.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/corelib/io/qlockfile_unix.cpp b/src/corelib/io/qlockfile_unix.cpp index 365f3e07ab..ae776d4137 100644 --- a/src/corelib/io/qlockfile_unix.cpp +++ b/src/corelib/io/qlockfile_unix.cpp @@ -44,7 +44,10 @@ #include "private/qabstractfileengine_p.h" #include "private/qtemporaryfile_p.h" +#if !defined(Q_OS_INTEGRITY) #include <sys/file.h> // flock +#endif + #include <sys/types.h> // kill #include <signal.h> // kill #include <unistd.h> // gethostname @@ -54,6 +57,8 @@ #elif defined(Q_OS_LINUX) # include <unistd.h> # include <cstdio> +#elif defined(Q_OS_HAIKU) +# include <kernel/OS.h> #elif defined(Q_OS_BSD4) && !defined(Q_OS_IOS) # include <sys/user.h> # if defined(__GLIBC__) && defined(__FreeBSD_kernel__) @@ -248,6 +253,11 @@ QString QLockFilePrivate::processNameByPid(qint64 pid) } buf[len] = 0; return QFileInfo(QFile::decodeName(buf)).fileName(); +#elif defined(Q_OS_HAIKU) + thread_info info; + if (get_thread_info(pid, &info) != B_OK) + return QString(); + return QFile::decodeName(info.name); #elif defined(Q_OS_BSD4) && !defined(Q_OS_IOS) # if defined(__GLIBC__) && defined(__FreeBSD_kernel__) int mib[4] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, pid }; |