Просмотр исходного кода

Made __PHYSFS_ui64FitsAddressSpace's behaviour match its name.

Ryan C. Gordon 15 лет назад
Родитель
Сommit
c92f3035f9
3 измененных файлов с 6 добавлено и 6 удалено
  1. 2 2
      src/physfs.c
  2. 2 2
      src/physfs_internal.h
  3. 2 2
      src/platform_macosx.c

+ 2 - 2
src/physfs.c

@@ -2246,7 +2246,7 @@ const PHYSFS_Allocator *PHYSFS_getAllocator(void)
 
 static void *mallocAllocatorMalloc(PHYSFS_uint64 s)
 {
-    BAIL_IF_MACRO(__PHYSFS_ui64FitsAddressSpace(s), ERR_OUT_OF_MEMORY, NULL);
+    BAIL_IF_MACRO(!__PHYSFS_ui64FitsAddressSpace(s), ERR_OUT_OF_MEMORY, NULL);
     #undef malloc
     return malloc((size_t) s);
 } /* mallocAllocatorMalloc */
@@ -2254,7 +2254,7 @@ static void *mallocAllocatorMalloc(PHYSFS_uint64 s)
 
 static void *mallocAllocatorRealloc(void *ptr, PHYSFS_uint64 s)
 {
-    BAIL_IF_MACRO(__PHYSFS_ui64FitsAddressSpace(s), ERR_OUT_OF_MEMORY, NULL);
+    BAIL_IF_MACRO(!__PHYSFS_ui64FitsAddressSpace(s), ERR_OUT_OF_MEMORY, NULL);
     #undef realloc
     return realloc(ptr, (size_t) s);
 } /* mallocAllocatorRealloc */

+ 2 - 2
src/physfs_internal.h

@@ -1046,8 +1046,8 @@ void __PHYSFS_sort(void *entries, PHYSFS_uint32 max,
  *  size_t, suitable to pass to malloc. This is kinda messy, but effective.
  */
 #define __PHYSFS_ui64FitsAddressSpace(s) ( \
-    (sizeof (PHYSFS_uint64) > sizeof (size_t)) && \
-    ((s) > (__PHYSFS_UI64(0xFFFFFFFFFFFFFFFF) >> (64-(sizeof(size_t)*8)))) \
+    (sizeof (PHYSFS_uint64) <= sizeof (size_t)) || \
+    ((s) < (__PHYSFS_UI64(0xFFFFFFFFFFFFFFFF) >> (64-(sizeof(size_t)*8)))) \
 )
 
 

+ 2 - 2
src/platform_macosx.c

@@ -324,14 +324,14 @@ static void macosxAllocatorDeinit(void)
 
 static void *macosxAllocatorMalloc(PHYSFS_uint64 s)
 {
-    BAIL_IF_MACRO(__PHYSFS_ui64FitsAddressSpace(s), ERR_OUT_OF_MEMORY, NULL);
+    BAIL_IF_MACRO(!__PHYSFS_ui64FitsAddressSpace(s), ERR_OUT_OF_MEMORY, NULL);
     return CFAllocatorAllocate(cfallocdef, (CFIndex) s, 0);
 } /* macosxAllocatorMalloc */
 
 
 static void *macosxAllocatorRealloc(void *ptr, PHYSFS_uint64 s)
 {
-    BAIL_IF_MACRO(__PHYSFS_ui64FitsAddressSpace(s), ERR_OUT_OF_MEMORY, NULL);
+    BAIL_IF_MACRO(!__PHYSFS_ui64FitsAddressSpace(s), ERR_OUT_OF_MEMORY, NULL);
     return CFAllocatorReallocate(cfallocdef, ptr, (CFIndex) s, 0);
 } /* macosxAllocatorRealloc */