diff options
| author | Paul Eggert | 2020-12-25 01:38:31 -0800 |
|---|---|---|
| committer | Paul Eggert | 2020-12-25 01:40:39 -0800 |
| commit | ec8a17e938c3ef213709ea6b6b3e565333a9c508 (patch) | |
| tree | 1558c79f3c269d9ae1b068bb7c66fce04707b32c /src/alloc.c | |
| parent | b8b17038e140fe215a76f2e899c00b9b95614886 (diff) | |
| download | emacs-ec8a17e938c3ef213709ea6b6b3e565333a9c508.tar.gz emacs-ec8a17e938c3ef213709ea6b6b3e565333a9c508.zip | |
Adjust to recent Gnulib changes
The latest Gnulib merge brought in free-posix, which causes 'free'
to preserve errno. This lets us simplify some Emacs code that
calls 'free'.
* admin/merge-gnulib (GNULIB_MODULES): Add free-posix.
This module is pulled in by canonicalize-lgpl anyway,
so we might as well rely on it.
* lib-src/emacsclient.c (get_current_dir_name):
Sync better with src/sysdep.c.
* lib-src/etags.c (process_file_name, etags_mktmp):
* lib-src/update-game-score.c (unlock_file):
* src/fileio.c (file_accessible_directory_p):
* src/sysdep.c (get_current_dir_name_or_unreachable):
Simplify by assuming that 'free' preserves errno.
* src/alloc.c (malloc_unblock_input):
Preserve errno, so that xfree preserves errno.
* src/sysdep.c (get_current_dir_name_or_unreachable):
Simplify by using strdup instead of malloc+memcpy.
No need for realloc (and the old code leaked memory anyway on
failure); just use free+malloc.
Diffstat (limited to 'src/alloc.c')
| -rw-r--r-- | src/alloc.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/alloc.c b/src/alloc.c index adbfa1883c5..0b387dd8c1b 100644 --- a/src/alloc.c +++ b/src/alloc.c | |||
| @@ -732,7 +732,11 @@ static void | |||
| 732 | malloc_unblock_input (void) | 732 | malloc_unblock_input (void) |
| 733 | { | 733 | { |
| 734 | if (block_input_in_memory_allocators) | 734 | if (block_input_in_memory_allocators) |
| 735 | unblock_input (); | 735 | { |
| 736 | int err = errno; | ||
| 737 | unblock_input (); | ||
| 738 | errno = err; | ||
| 739 | } | ||
| 736 | } | 740 | } |
| 737 | # define MALLOC_BLOCK_INPUT malloc_block_input () | 741 | # define MALLOC_BLOCK_INPUT malloc_block_input () |
| 738 | # define MALLOC_UNBLOCK_INPUT malloc_unblock_input () | 742 | # define MALLOC_UNBLOCK_INPUT malloc_unblock_input () |