]> wimlib.net Git - wimlib/blobdiff - include/wimlib/util.h
Rewrite of write_stream_list(), and writing packed resources
[wimlib] / include / wimlib / util.h
index c61c1f9751bb15317c516b92b4f15633ce533522..8e9d695ed090a1cbd35ad75e37da425be7663a7b 100644 (file)
 
 #define BUILD_BUG_ON(condition) ((void)sizeof(char[1 - 2*!!(condition)]))
 
+/* Maximum number of array elements to allocate on the stack (used in various
+ * places when large temporary buffers are needed).  */
+#define STACK_MAX 32768
+
 #ifdef ENABLE_CUSTOM_MEMORY_ALLOCATOR
 extern void *
 wimlib_malloc(size_t) _malloc_attribute;
@@ -134,6 +138,17 @@ hash_u64(u64 n)
        return n * 0x9e37fffffffc0001ULL;
 }
 
+static inline int
+cmp_u64(u64 n1, u64 n2)
+{
+       if (n1 < n2)
+               return -1;
+       else if (n1 > n2)
+               return 1;
+       else
+               return 0;
+}
+
 /* is_any_path_separator() - characters treated as path separators in WIM path
  * specifications and capture configuration files (the former will be translated
  * to WIM_PATH_SEPARATOR; the latter will be translated to