Ok - I misspoke.... mmap returns MAP_FAILED, not neccessarily -1 :-).
authorJeremy Allison <jra@samba.org>
Thu, 21 Jun 2001 19:56:25 +0000 (19:56 +0000)
committerJeremy Allison <jra@samba.org>
Thu, 21 Jun 2001 19:56:25 +0000 (19:56 +0000)
Jeremy.
(This used to be commit 2d1c6d1f6b55a0a78eb8afbe16d2ad8b3253a220)

source3/tdb/tdb.c

index c27f03fc35d80e0a92eb41cc84cfdb289c94c6f2..97c8e00ae685961014a0fe26b0910fc9dddf6002 100644 (file)
 #define MAP_FILE 0
 #endif
 
+#ifndef MAP_FAILED
+#define MAP_FAILED ((void *)-1)
+#endif
+
 #define BUCKET(hash) ((hash) % tdb->header.hash_size)
 TDB_DATA tdb_null;
 
@@ -89,10 +93,10 @@ static void tdb_mmap(TDB_CONTEXT *tdb)
                                    MAP_SHARED|MAP_FILE, tdb->fd, 0);
 
                /*
-                * NB. When mmap fails it returns -1 *NOT* NULL !!!!
+                * NB. When mmap fails it returns MAP_FAILED *NOT* NULL !!!!
                 */
 
-               if (tdb->map_ptr == (void *)-1) {
+               if (tdb->map_ptr == MAP_FAILED) {
                        tdb->map_ptr = NULL;
                        TDB_LOG((tdb, 2, "tdb_mmap failed for size %d (%s)\n", 
                                 tdb->map_size, strerror(errno)));