Avoid unconditional PATH_MAX usage
authorPino Toscano <toscano.pino@tiscali.it>
Thu, 24 Nov 2022 17:38:09 +0000 (17:38 +0000)
committerDmitry Shachnev <mitya57@debian.org>
Thu, 24 Nov 2022 17:38:09 +0000 (17:38 +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 58e06ee1c2c3ba8675955c415680394d34320433..b0e123a047fb0fd30c91a153866a5637e945523c 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