Changeset: 9eeea3c7a3fc for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=9eeea3c7a3fc
Modified Files:
        gdk/gdk_utils.mx
Branch: default
Log Message:

Merged from Apr2011


diffs (106 lines):

diff --git a/gdk/gdk_utils.mx b/gdk/gdk_utils.mx
--- a/gdk/gdk_utils.mx
+++ b/gdk/gdk_utils.mx
@@ -494,8 +494,35 @@
                GlobalMemoryStatus(&memStat);
                _MT_npages = memStat.dwTotalPhys / _MT_pagesize;
        }
-#elif defined(HAVE_SYS_SYSCTL_H) && (defined(HW_PHYSMEM64) || 
defined(HW_MEMSIZE) || defined(HW_PHYSMEM))
-# if SIZEOF_SIZE_T == SIZEOF_INT && defined(HW_PHYSMEM)
+#elif defined(HAVE_SYS_SYSCTL_H) && defined(HW_MEMSIZE)
+       /* Darwin, 64-bits */
+       {
+               uint64_t size = 0;
+               size_t len = sizeof(size);
+               int mib[2];
+
+               /* Everyone should have permission to make this call, 
+                * if we get a failure something is really wrong. */
+               mib[0] = CTL_HW;
+               mib[1] = HW_MEMSIZE;
+               sysctl(mib, 2, &size, &len, NULL, 0);
+               _MT_npages = size / _MT_pagesize;
+       }
+#elif defined(HAVE_SYS_SYSCTL_H) && defined (HW_PHYSMEM64)
+       /* OpenBSD, 64-bits */
+       {
+               int64_t size = 0;
+               size_t len = sizeof(size);
+               int mib[2];
+
+               /* Everyone should have permission to make this call, 
+                * if we get a failure something is really wrong. */
+               mib[0] = CTL_HW;
+               mib[1] = HW_PHYSMEM64;
+               sysctl(mib, 2, &size, &len, NULL, 0);
+               _MT_npages = size / _MT_pagesize;
+       }
+#elif defined(HAVE_SYS_SYSCTL_H) && defined(HW_PHYSMEM)
        /* FreeBSD, NetBSD, OpenBSD, Darwin, 32-bits */
        {
                int size = 0;
@@ -509,35 +536,6 @@
                sysctl(mib, 2, &size, &len, NULL, 0);
                _MT_npages = size / _MT_pagesize;
        }
-# elif defined(HW_MEMSIZE)
-       /* FreeBSD, NetBSD, Darwin, 64-bits */
-       {
-               uint64_t size = 0;
-               size_t len = sizeof(size);
-               int mib[2];
-
-               /* Everyone should have permission to make this call, 
-                * if we get a failure something is really wrong. */
-               mib[0] = CTL_HW;
-               mib[1] = HW_MEMSIZE;
-               sysctl(mib, 2, &size, &len, NULL, 0);
-               _MT_npages = size / _MT_pagesize;
-       }
-# elif defined (HW_PHYSMEM64)
-       /* OpenBSD, 64-bits */
-       {
-               int64_t size = 0;
-               size_t len = sizeof(size);
-               int mib[2];
-
-               /* Everyone should have permission to make this call, 
-                * if we get a failure something is really wrong. */
-               mib[0] = CTL_HW;
-               mib[1] = HW_PHYSMEM64;
-               sysctl(mib, 2, &size, &len, NULL, 0);
-               _MT_npages = size / _MT_pagesize;
-       }
-# endif
 #elif defined(HAVE_SYSCONF) && defined(_SC_PHYS_PAGES)
        _MT_npages = sysconf(_SC_PHYS_PAGES);
 #else
diff --git a/monetdb5/modules/mal/mal_io.mx b/monetdb5/modules/mal/mal_io.mx
--- a/monetdb5/modules/mal/mal_io.mx
+++ b/monetdb5/modules/mal/mal_io.mx
@@ -880,7 +880,13 @@
                        BBPunfix(b->batCacheid);
                        throw(MAL, "io.imports", OPERATION_FAILED "Empty file 
or fstat broken");
                }
-               base = cur = (char *) MT_mmap(*fnme, MMAP_SEQUENTIAL, 0, 
st.st_size);
+#if SIZEOF_SIZE_T == SIZEOF_INT
+               if (st.st_size > ~ (size_t) 0) {
+                       BBPunfix(b->batCacheid);
+                       throw(MAL, "io.imports", OPERATION_FAILED "File too 
large");
+               }
+#endif
+               base = cur = (char *) MT_mmap(*fnme, MMAP_SEQUENTIAL, 0, 
(size_t) st.st_size);
                end = cur + st.st_size;
                if (cur == (char *) -1) {
                        BBPunfix(b->batCacheid);
diff --git a/testing/difflib.c b/testing/difflib.c
--- a/testing/difflib.c
+++ b/testing/difflib.c
@@ -48,7 +48,6 @@
 
 #define getpid _getpid
 #define unlink _unlink
-#define strdup _strdup
 #else
 #define DIFF   "diff"
 
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to