30 lines
1.1 KiB
Diff
30 lines
1.1 KiB
Diff
From: Pino Toscano <toscano.pino@tiscali.it>
|
|
Date: Fri, 5 May 2023 07:44:33 +0000
|
|
Subject: Avoid unconditional PATH_MAX usage
|
|
|
|
Forwarded: no
|
|
Last-Update: 2020-04-19
|
|
|
|
Use a "safe" size in case PATH_MAX is not defined; in the end, this should not
|
|
be used, as a allocating realpath() will be used instead.
|
|
---
|
|
src/corelib/io/qfilesystemengine_unix.cpp | 4 ++++
|
|
1 file changed, 4 insertions(+)
|
|
|
|
diff --git a/src/corelib/io/qfilesystemengine_unix.cpp b/src/corelib/io/qfilesystemengine_unix.cpp
|
|
index 58e06ee..b0e123a 100644
|
|
--- a/src/corelib/io/qfilesystemengine_unix.cpp
|
|
+++ b/src/corelib/io/qfilesystemengine_unix.cpp
|
|
@@ -689,7 +689,11 @@ QFileSystemEntry QFileSystemEngine::canonicalName(const QFileSystemEntry &entry,
|
|
Q_UNUSED(data);
|
|
return QFileSystemEntry(slowCanonicalized(absoluteName(entry).filePath()));
|
|
#else
|
|
+#ifdef PATH_MAX
|
|
char stack_result[PATH_MAX+1];
|
|
+#else
|
|
+ char stack_result[4096+1];
|
|
+#endif
|
|
char *resolved_name = nullptr;
|
|
# if defined(Q_OS_DARWIN) || defined(Q_OS_ANDROID)
|
|
// On some Android and macOS versions, realpath() will return a path even if
|