diff --git a/src/corelib/io/qlockfile_unix.cpp b/src/corelib/io/qlockfile_unix.cpp index d7a4a70da7c..ae776d41377 100644 --- a/src/corelib/io/qlockfile_unix.cpp +++ b/src/corelib/io/qlockfile_unix.cpp @@ -57,6 +57,8 @@ #elif defined(Q_OS_LINUX) # include # include +#elif defined(Q_OS_HAIKU) +# include #elif defined(Q_OS_BSD4) && !defined(Q_OS_IOS) # include # if defined(__GLIBC__) && defined(__FreeBSD_kernel__) @@ -251,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 };