diff options
| author | Andrea Corallo | 2019-11-11 13:19:23 +0100 |
|---|---|---|
| committer | Andrea Corallo | 2020-01-01 11:38:03 +0100 |
| commit | 3bc77cca86fbed8c12fb6c10c51e1237d65c9143 (patch) | |
| tree | 1f3613d8266a08380d92fccc15ac97a121d79d8f /src/comp.c | |
| parent | 13816f14b2f459a97d309f202f218282888e9bc9 (diff) | |
| download | emacs-3bc77cca86fbed8c12fb6c10c51e1237d65c9143.tar.gz emacs-3bc77cca86fbed8c12fb6c10c51e1237d65c9143.zip | |
minimal error handling in load_comp_unit
Diffstat (limited to 'src/comp.c')
| -rw-r--r-- | src/comp.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/comp.c b/src/comp.c index 0e190e88874..f72d25a6ba9 100644 --- a/src/comp.c +++ b/src/comp.c | |||
| @@ -3210,7 +3210,9 @@ load_comp_unit (dynlib_handle_ptr handle) | |||
| 3210 | Lisp_Object subr = Fsymbol_function (f_sym); | 3210 | Lisp_Object subr = Fsymbol_function (f_sym); |
| 3211 | if (!NILP (subr)) | 3211 | if (!NILP (subr)) |
| 3212 | { | 3212 | { |
| 3213 | eassert (SUBRP (subr)); | 3213 | /* FIXME: This is really not robust in case of subr redefinition. */ |
| 3214 | if (!SUBRP (subr)) | ||
| 3215 | error ("Native code load error, subr redefined or wrong relocation."); | ||
| 3214 | f_relocs[i] = XSUBR (subr)->function.a0; | 3216 | f_relocs[i] = XSUBR (subr)->function.a0; |
| 3215 | } else if (!strcmp (f_str, "wrong_type_argument")) | 3217 | } else if (!strcmp (f_str, "wrong_type_argument")) |
| 3216 | { | 3218 | { |