• Paul Eggert's avatar
    Fix GC bugs related to uninitialized vectors · d0145537
    Paul Eggert authored
    Avoid problems if GC occurs while initializing a vector.
    Problem with Fdelete reported by Pip Cet in:
    https://lists.gnu.org/r/emacs-devel/2020-08/msg00313.html
    I looked for similar problems elsewhere and found quite a few.
    * src/coding.c (make_subsidiaries):
    * src/composite.c (syms_of_composite):
    * src/font.c (build_style_table, Ffont_get_glyphs):
    * src/nsselect.m (clean_local_selection_data):
    * src/nsxwidget.m (js_to_lisp):
    * src/syntax.c (init_syntax_once):
    * src/window.c (Fcurrent_window_configuration):
    * src/xselect.c (selection_data_to_lisp_data)
    (clean_local_selection_data):
    Use make_nil_vector instead of make_uninit_vector.
    * src/fns.c (Fdelete):
    * src/xwidget.c (webkit_js_to_lisp):
    Use allocate_nil_vector instead of allocate_vector.
    * src/search.c (Fnewline_cache_check):
    Use make_vector instead of make_uninit_vector.
    d0145537
composite.c 63.1 KB