diff options
author | Richard M. Stallman <rms@gnu.org> | 2002-10-07 22:50:47 +0000 |
---|---|---|
committer | Richard M. Stallman <rms@gnu.org> | 2002-10-07 22:50:47 +0000 |
commit | d4e3d7f27089ee0dfc29e4788de124afc435eaec (patch) | |
tree | c09e37acfebf0de3cc9269ff2b2229499752e0c5 /src/unexelf.c | |
parent | a6ce686959bdae6ac006e07f1a72482fa4c3012a (diff) | |
download | emacs-d4e3d7f27089ee0dfc29e4788de124afc435eaec.tar.gz |
Redo 9/16 change, but only if IRIX6_5.
Diffstat (limited to 'src/unexelf.c')
-rw-r--r-- | src/unexelf.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/unexelf.c b/src/unexelf.c index cf3fc9d5bcd..d0543dc41c9 100644 --- a/src/unexelf.c +++ b/src/unexelf.c @@ -1012,6 +1012,23 @@ unexec (new_name, old_name, data_start, bss_start, entry_address) ".lit4") || !strcmp ((old_section_names + NEW_SECTION_H (n).sh_name), ".lit8") + /* The conditional bit below was in Oliva's original code + (1999-08-25) and seems to have been dropped by mistake + subsequently. It prevents a crash at startup under X in + `IRIX64 6.5 6.5.17m' with c_dev 7.3.1.3m. It causes no + trouble on the other ELF platforms I could test (Irix + 6.5.15m, Solaris 8, Debian Potato x86, Debian Woody + SPARC); however, it's reported to cause crashes under + some version of GNU/Linux. It's not yet clear what's + changed in that Irix version to cause the problem, or why + the fix sometimes fails under GNU/Linux. There's + probably no good reason to have something Irix-specific + here, but this will have to do for now. IRIX6_5 is the + most specific macro we have to test. -- fx 2002-10-01 */ +#ifdef IRIX6_5 + || !strcmp ((old_section_names + NEW_SECTION_H (n).sh_name), + ".got") +#endif || !strcmp ((old_section_names + NEW_SECTION_H (n).sh_name), ".sdata1") || !strcmp ((old_section_names + NEW_SECTION_H (n).sh_name), @@ -1195,6 +1212,10 @@ unexec (new_name, old_name, data_start, bss_start, entry_address) ".lit4") || !strcmp ((old_section_names + NEW_SECTION_H (nn).sh_name), ".lit8") +#ifdef IRIX6_5 /* see above */ + || !strcmp ((old_section_names + NEW_SECTION_H (nn).sh_name), + ".got") +#endif || !strcmp ((old_section_names + NEW_SECTION_H (nn).sh_name), ".sdata1") || !strcmp ((old_section_names + NEW_SECTION_H (nn).sh_name), |