]> Sergey Matveev's repositories - nnn.git/commitdiff
Fallbacks for absent NAME_MAX and PATH_MAX (#455)
authorSijmen J. Mulder <ik@sjmulder.nl>
Wed, 29 Jan 2020 13:31:07 +0000 (14:31 +0100)
committerGitHub <noreply@github.com>
Wed, 29 Jan 2020 13:31:07 +0000 (19:01 +0530)
* Fallbacks for absent NAME_MAX and PATH_MAX

Certainly NAME_MAX isn't guaranteed to exist and on (some versions of?)
Illumos and SmartOS it doesn't, so provide some reasonably accommodating
fallbacks.

* Smaller limits

* Remove now redundant PATH_MAX definition for Hurd

src/nnn.c

index 851293aa14662be4a7c54acba124442134bb4cc0..407616c29f176140c34afc8c736b87e16cb73fba 100644 (file)
--- a/src/nnn.c
+++ b/src/nnn.c
@@ -74,9 +74,6 @@
 #include <fcntl.h>
 #include <libgen.h>
 #include <limits.h>
-#ifdef __gnu_hurd__
-#define PATH_MAX 4096
-#endif
 #ifndef NOLOCALE
 #include <locale.h>
 #endif
 #define S_BLKSIZE 512 /* S_BLKSIZE is missing on Android NDK (Termux) */
 #endif
 
+/*
+ * NAME_MAX and PATH_MAX may not exist, e.g. with dirent.c_name being a
+ * flexible array on Illumos. Use somewhat accomodating fallback values.
+ */
+#ifndef NAME_MAX
+#define NAME_MAX 255
+#endif
+
+#ifndef PATH_MAX
+#define PATH_MAX 4096
+#endif
+
 #define _ABSSUB(N, M) (((N) <= (M)) ? ((M) - (N)) : ((N) - (M)))
 #define DOUBLECLICK_INTERVAL_NS (400000000)
 #define XDELAY_INTERVAL_MS (350000) /* 350 ms delay */