* infcmd.c (set_environment_command): Avoid skipping first
authorJohn Gilmore <gnu@cygnus>
Thu, 19 Nov 1992 00:04:44 +0000 (00:04 +0000)
committerJohn Gilmore <gnu@cygnus>
Thu, 19 Nov 1992 00:04:44 +0000 (00:04 +0000)
char of env value if an '=' appears in it.  Bug report and fix
by Mark Jungerman, <maj@lucid.com>.

Thu Nov  5 23:04:38 1992 Rob Ryan (rr2b@andrew.cmu.edu)

        * xcoffexec.c (vmap_symtab): fixed a bug where if a object has no
        member, and the stat pointer passed to vmap_symtab was NULL, the
        wrong vmap entries would be modified.  Fixes behavior where
        attempting to load symbols for a module with no member would mess
        up already read in symbols.

gdb/ChangeLog
gdb/xcoffexec.c

index 6ee9ac3..271f95d 100644 (file)
@@ -5,8 +5,6 @@ Wed Nov 18 15:05:45 1992  Ian Lance Taylor  (ian@cygnus.com)
 
 Wed Nov 18 14:39:57 1992  Stu Grossman  (grossman at cygnus.com)
 
-       * infcmd.c (set_environment_command):  Make set env FOO x=y work.
-       Fix from maj@lucid.com.
        * remote-udi.c (udi_open):  Reset vars so that user can re-run
        programs without leaving GDB.
        * (many routines):  Slightly improve error handling.
@@ -150,6 +148,12 @@ Sun Nov 15 09:22:09 1992  Fred Fish  (fnf@cygnus.com)
        * expprint.c (print_subexp):  Add OP_BOOL case. 
        **** end-sanitize-chill ****
 
+Fri Nov 13 20:36:28 1992  John Gilmore  (gnu@cygnus.com)
+
+       * infcmd.c (set_environment_command):  Avoid skipping first
+       char of env value if an '=' appears in it.  Bug report and fix
+       by Mark Jungerman, <maj@lucid.com>.
+
 Fri Nov 13 20:24:10 1992  Stu Grossman  (grossman at cygnus.com)
 
        * infcmd.c (step_over_calls):  Improve comments.
@@ -159,6 +163,14 @@ Fri Nov 13 20:24:10 1992  Stu Grossman  (grossman at cygnus.com)
        Also, don't return garbage when some line info exists, but there
        was no good match.
 
+Thu Nov  5 23:04:38 1992 Rob Ryan (rr2b@andrew.cmu.edu)
+
+        * xcoffexec.c (vmap_symtab): fixed a bug where if a object has no
+        member, and the stat pointer passed to vmap_symtab was NULL, the
+        wrong vmap entries would be modified.  Fixes behavior where
+        attempting to load symbols for a module with no member would mess
+        up already read in symbols.
+
 Wed Nov 11 17:09:17 1992  Stu Grossman  (grossman at cygnus.com)
 
        * Makefile.in:  Remove dependancies for 29k-share/dfe/yank.o and
index 6187a59..3b2c7a6 100644 (file)
@@ -392,27 +392,28 @@ struct stat *vip;
        } else if (vp->member[0]) {
          /* no match, and member present, not this one. */
          continue;
-       } else {
+       } else if (vip) {
+         /* No match, and no member. need to be sure.
+            If we were given a stat structure, see if the open file
+            underlying this BFD matches.  */
          struct stat si;
          FILE *io;
          
-         /*
-          * no match, and no member. need to be sure.
-          */
          io = bfd_cache_lookup(objfile->obfd);
          if (!io)
            fatal("cannot find BFD's iostream for sym");
-         /*
-          * see if we are referring to the same file
-          */
+
+         /* see if we are referring to the same file */
          if (fstat(fileno(io), &si) < 0)
            fatal("cannot fstat BFD for sym");
          
-         if (vip && (si.st_dev != vip->st_dev
+         if ((si.st_dev != vip->st_dev
              || si.st_ino != vip->st_ino))
            continue;
+       } else {
+          continue;    /* No stat struct: no way to match it */
        }
-       
+
        if (vp->tstart != old_start) {
 
          /* Once we find a relocation base address for one of the symtabs