]> git.ipfire.org Git - thirdparty/rspamd.git/commitdiff
[Fix] Do not use GC64 workaround on 32bit platforms, omg
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Thu, 17 Sep 2020 22:30:34 +0000 (23:30 +0100)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Thu, 17 Sep 2020 22:30:34 +0000 (23:30 +0100)
Issue: #3459

contrib/lua-lpeg/lptypes.h

index e69a9ed6bc8a0fccbd2e0f0c18ca2cf5cdf70f6d..5748c8560cbe7d82f953eb173789a8568cbb613e 100644 (file)
@@ -17,6 +17,7 @@
 
 #include <assert.h>
 #include <limits.h>
+#include <stdint.h>
 
 #include "lua.h"
 
@@ -151,8 +152,9 @@ typedef struct Charset {
 
 #define testchar(st,c) (((int)(st)[((c) >> 3)] & (1 << ((c) & 7))))
 
-/* Special workaround for luajit */
-#if defined(WITH_LUAJIT) && !(defined(_X86_) || defined(__x86_64__) || defined(__i386__) || defined(__powerpc__))
+/* Special workaround for luajit lightuserdata limitations with GC64 */
+#if defined(WITH_LUAJIT) && INTPTR_MAX == INT64_MAX && \
+       !(defined(_X86_) || defined(__x86_64__) || defined(__i386__) || defined(__powerpc__))
 # define LPEG_LUD_WORKAROUND 1
 void * lpeg_allocate_mem_low(size_t sz);
 void lpeg_free_mem_low(void *p);