• Matt McCutchen's avatar
    Several fixes for merge file handling: · daa8d920
    Matt McCutchen authored
    - Free a mergelist's parent_dirscanned filters the last time it is
      popped or as soon as the filters are discarded due to the "n"
      modifier.  Aside from not leaking memory, this is needed to clean up
      any mergelists defined during the parent_dirscan to avoid crashing by
      trying to restore nonexistent state for them in pop_local_filters.
    - Make push_local_filters save the current mergelist_cnt, and make
      pop_local_filters assert that it has the correct number of mergelists
      before restoring their state.
    - Assert that mergelists get deactivated in strict LIFO order to catch
      any glitches as soon as they happen.  Free linked lists of filters in
      reverse order to make that the case.
    - Add a bunch of mergelist-related debug output (--debug=filter2).
    daa8d920
rsync.h 31.9 KB