comparison src/dumper.c @ 456:e7ef97881643 r21-2-43

Import from CVS: tag r21-2-43
author cvs
date Mon, 13 Aug 2007 11:41:24 +0200
parents 3d3049ae1304
children c33ae14dd6d0
comparison
equal deleted inserted replaced
455:5b97c1cd6ed0 456:e7ef97881643
1247 } 1247 }
1248 1248
1249 lseek (fd, 0, SEEK_SET); 1249 lseek (fd, 0, SEEK_SET);
1250 1250
1251 #ifdef HAVE_MMAP 1251 #ifdef HAVE_MMAP
1252 /* Unix 98 requires that sys/mman.h define MAP_FAILED,
1253 but many earlier implementations don't. */
1254 # ifndef MAP_FAILED
1255 # define MAP_FAILED ((void *) -1L)
1256 # endif
1252 pdump_start = (char *) mmap (0, pdump_length, PROT_READ|PROT_WRITE, MAP_PRIVATE, fd, 0); 1257 pdump_start = (char *) mmap (0, pdump_length, PROT_READ|PROT_WRITE, MAP_PRIVATE, fd, 0);
1253 if (pdump_start != (char *) MAP_FAILED) 1258 if (pdump_start != (char *) MAP_FAILED)
1254 { 1259 {
1255 pdump_free = pdump_file_unmap; 1260 pdump_free = pdump_file_unmap;
1256 close (fd); 1261 close (fd);
1257 return 1; 1262 return 1;
1258 } 1263 }
1259 #endif 1264 #endif /* HAVE_MMAP */
1260 1265
1261 pdump_mallocadr = xmalloc (pdump_length+255); 1266 pdump_mallocadr = xmalloc (pdump_length+255);
1262 pdump_free = pdump_file_free; 1267 pdump_free = pdump_file_free;
1263 pdump_start = (char *)((255 + (unsigned long)pdump_mallocadr) & ~255); 1268 pdump_start = (char *)((255 + (unsigned long)pdump_mallocadr) & ~255);
1264 read (fd, pdump_start, pdump_length); 1269 read (fd, pdump_start, pdump_length);