Mercurial > hg > xemacs-beta
diff src/unexfreebsd.c @ 2:ac2d302a0011 r19-15b2
Import from CVS: tag r19-15b2
author | cvs |
---|---|
date | Mon, 13 Aug 2007 08:46:35 +0200 |
parents | 376386a54a3c |
children | 850242ba4a81 |
line wrap: on
line diff
--- a/src/unexfreebsd.c Mon Aug 13 08:45:53 2007 +0200 +++ b/src/unexfreebsd.c Mon Aug 13 08:46:35 2007 +0200 @@ -289,8 +289,15 @@ /* We can get relocation sites in the bss region, for objects whose contents are copied from a shared library. We don't need or want to restore these at present. */ +#ifndef sparc if (ri->r_copy) return; +#else + /* Struct relocation_info_sparc doesn't have member r_copy. + Instead, we use the address to check if this is run-time-copied. */ + if (ri->r_address >= ts->bssaddr && ri->r_address < ts->endaddr) + return; +#endif offset = unexec_addr_to_offset (ri->r_address, ts); if (offset == -1) @@ -351,6 +358,7 @@ source++; *target = *source; } + break; default: unexec_error ("unknown reloc type %d seen during unexec()", 0, ri->r_type);