Avoid unconditional PATH_MAX usage
authorPino Toscano <toscano.pino@tiscali.it>
Sun, 3 Mar 2024 09:03:16 +0000 (09:03 +0000)
committerSteve Langasek <vorlon@debian.org>
Sun, 3 Mar 2024 09:03:16 +0000 (09:03 +0000)
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.

Gbp-Pq: Name path_max.diff

src/corelib/io/qfilesystemengine_unix.cpp

index 42739097f2ff6ac8bf6669ab34bb7027159d2fbc..6833acf06134a05bab5ea2a08bfcae13c1ca9121 100644 (file)
@@ -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