support for 64-bit Apple OS in memory check

git-svn-id: https://flam3.googlecode.com/svn/trunk@91 77852712-ef1d-11de-8684-7d64432d61a3
This commit is contained in:
Erik Reckase 2010-11-21 18:37:22 +00:00 committed by Scott Draves
parent ba1a8451bf
commit 83ecdc6104

View File

@ -49,15 +49,21 @@ int calc_nstrips(flam3_frame *spec) {
mem_available = mem_available =
(double)sysconf(_SC_PHYS_PAGES) * sysconf(_SC_PAGESIZE); (double)sysconf(_SC_PHYS_PAGES) * sysconf(_SC_PAGESIZE);
#elif defined __APPLE__ #elif defined __APPLE__
unsigned int physmem; #ifdef __LP64__
size_t len = sizeof(physmem); long physmem;
static int mib[2] = { CTL_HW, HW_PHYSMEM }; size_t len = sizeof(physmem);
if (sysctl(mib, 2, &physmem, &len, NULL, 0) == 0 && len == sizeof(physmem)) { static int mib[2] = { CTL_HW, HW_MEMSIZE };
mem_available = (double )physmem; #else
} else { unsigned int physmem;
fprintf(stderr, "warning: unable to determine physical memory.\n"); size_t len = sizeof(physmem);
mem_available = 2e9; static int mib[2] = { CTL_HW, HW_PHYSMEM };
} #endif
if (sysctl(mib, 2, &physmem, &len, NULL, 0) == 0 && len == sizeof(physmem)) {
mem_available = (double )physmem;
} else {
fprintf(stderr, "warning: unable to determine physical memory.n");
mem_available = 2e9;
}
#else #else
fprintf(stderr, "warning: unable to determine physical memory.\n"); fprintf(stderr, "warning: unable to determine physical memory.\n");
mem_available = 2e9; mem_available = 2e9;