diff options
Diffstat (limited to 'src/lread.c')
| -rw-r--r-- | src/lread.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/lread.c b/src/lread.c index e9f3d7da967..25e3ff01d47 100644 --- a/src/lread.c +++ b/src/lread.c | |||
| @@ -3720,7 +3720,11 @@ static size_t oblookup_last_bucket_number; | |||
| 3720 | Lisp_Object | 3720 | Lisp_Object |
| 3721 | check_obarray (Lisp_Object obarray) | 3721 | check_obarray (Lisp_Object obarray) |
| 3722 | { | 3722 | { |
| 3723 | if (!VECTORP (obarray) || ASIZE (obarray) == 0) | 3723 | /* We don't want to signal a wrong-type-argument error when we are |
| 3724 | shutting down due to a fatal error, and we don't want to hit | ||
| 3725 | assertions in VECTORP and ASIZE if the fatal error was during GC. */ | ||
| 3726 | if (!fatal_error_in_progress | ||
| 3727 | && (!VECTORP (obarray) || ASIZE (obarray) == 0)) | ||
| 3724 | { | 3728 | { |
| 3725 | /* If Vobarray is now invalid, force it to be valid. */ | 3729 | /* If Vobarray is now invalid, force it to be valid. */ |
| 3726 | if (EQ (Vobarray, obarray)) Vobarray = initial_obarray; | 3730 | if (EQ (Vobarray, obarray)) Vobarray = initial_obarray; |