Avoid unconditional PATH_MAX usage
authorPino Toscano <toscano.pino@tiscali.it>
Sun, 29 Jun 2025 19:50:45 +0000 (22:50 +0300)
committerDmitry Shachnev <mitya57@debian.org>
Sun, 29 Jun 2025 19:50:45 +0000 (22:50 +0300)
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 01aed7ad14e315d0d27498a761ee6357485dea4b..740082c97ef30e2db7d95da83e020754c394ba17 100644 (file)
@@ -690,7 +690,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