• Paul Eggert's avatar
    Fix coding-related core dumps with gcc -ftrapv. · c1892f11
    Paul Eggert authored
    The code was computing A - B, where A and B are pointers, and B is
    random garbage.  This can lead to core dumps on platforms that
    have special pointer registers, and it also leads to core dumps on
    x86-64 when compiled with gcc -ftrapv.  The fix is to compute
    A - B only when B is initialized properly.
    * coding.c (coding_set_source, coding_set_destination): Return void.
    (coding_change_source, coding_change_destinations): New functions,
    with the old behaviors of coding_set_source and coding_set_destination.
    All callers that need an offset changed to use these new functions.
    c1892f11
coding.c 322 KB