]> git.eshelyaron.com Git - emacs.git/commitdiff
[! MAP_FILE] (MAP_FILE): Define to zero.
authorRoland McGrath <roland@gnu.org>
Sat, 11 Dec 1993 22:26:14 +0000 (22:26 +0000)
committerRoland McGrath <roland@gnu.org>
Sat, 11 Dec 1993 22:26:14 +0000 (22:26 +0000)
(unexec): Remove unused variable BUF.
Use MAP_FILE bit in mmap call.
(run_time_remap): Use MAP_FILE bit in mmap call.

src/unexsunos4.c

index 664a7db6997e5ca6f642853f122a459a9d310662..48934f214471cdf4effcfa13123608f844878ffd 100644 (file)
 #include <stdio.h>
 #include <a.out.h>
 
+/* NetBSD needs this bit, but SunOS does not have it.  */
+#ifndef MAP_FILE
+#define MAP_FILE 0
+#endif
+
+
 /*
  * for programs other than emacs
  * define data_start + initialized here,  and make sure
@@ -63,7 +69,6 @@ unexec (new_name, a_name, bndry, bss_start, entry)
      char *new_name, *a_name;
      unsigned bndry, bss_start, entry;
 {
-  char buf[PAGSIZ];
   int fd, new;
   char *old;
   struct exec ohdr;            /* Allocate on the stack,  not needed in the next life */
@@ -93,7 +98,7 @@ unexec (new_name, a_name, bndry, bss_start, entry)
       exit (1);
     }
 
-  old = (char *)mmap (0, stat.st_size, PROT_READ, MAP_SHARED, fd, 0);
+  old = (char *)mmap (0, stat.st_size, PROT_READ, MAP_FILE|MAP_SHARED, fd, 0);
   if (old == (char *)-1)
     {
       fprintf (stderr, "%s: ", a_name);
@@ -267,7 +272,7 @@ is_it (path)
               * addresses in the data segment not part of __DYNAMIC
               */
              mmap (data_start, rd_only_len, PROT_READ | PROT_EXEC,
-                   MAP_SHARED | MAP_FIXED, fd,
+                   MAP_FILE | MAP_SHARED | MAP_FIXED, fd,
                    N_DATOFF (hdr) + data_start - N_DATADDR (hdr));
              close (fd);
              return 1;