=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/nm/nm.c,v retrieving revision 1.32 retrieving revision 1.33 diff -u -r1.32 -r1.33 --- src/usr.bin/nm/nm.c 2009/10/27 23:51:21 1.32 +++ src/usr.bin/nm/nm.c 2011/02/06 18:34:00 1.33 @@ -1,4 +1,4 @@ -/* $OpenBSD: nm.c,v 1.32 2009/10/27 23:51:21 deraadt Exp $ */ +/* $OpenBSD: nm.c,v 1.33 2011/02/06 18:34:00 jasper Exp $ */ /* $NetBSD: nm.c,v 1.7 1996/01/14 23:04:03 pk Exp $ */ /* @@ -354,7 +354,10 @@ char *strtab, *p; int num, rval = 0; int namelen; + off_t restore; + restore = ftello(fp); + MMAP(symtab, len, PROT_READ, MAP_PRIVATE|MAP_FILE, fileno(fp), off); if (symtab == MAP_FAILED) return (1); @@ -391,6 +394,8 @@ printf("%s in %s\n", strtab, p); } + fseeko(fp, restore, SEEK_SET); + free(p); MUNMAP(symtab, len); return (rval); @@ -544,7 +549,6 @@ } else { symtaboff = 0; symtablen = 0; - goto skip; } }