1. 23 Feb, 2022 1 commit
  2. 11 May, 2021 1 commit
  3. 06 May, 2021 1 commit
  4. 11 Aug, 2019 1 commit
  5. 10 Jun, 2018 1 commit
  6. 07 Apr, 2017 1 commit
    • filter: only close filter if it's been initialized correctly · cf07db2f
      In the function `git_filter_list_stream_data`, we initialize, write and
      subesquently close the stream which should receive content processed by
      the filter. While we skip writing to the stream if its initialization
      failed, we still try to close it unconditionally -- even if the
      initialization failed, where the stream might not be set at all, leading
      us to segfault.
      
      Semantics in this code is not really clear. The function handling the
      same logic for files instead of data seems to do the right thing here in
      only closing the stream when initialization succeeded. When stepping
      back a bit, this is only reasonable: if a stream cannot be initialized,
      the caller would not expect it to be closed again. So actually, both
      callers of `stream_list_init` fail to do so. The data streaming function
      will always close the stream and the file streaming function will not
      close the stream if writing to it has failed.
      
      The fix is thus two-fold:
      
      - callers of `stream_list_init` now close the stream iff it has been
        initialized
      - `stream_list_init` now closes the lastly initialized stream if
        the current stream in the chain failed to initialize
      
      Add a test which segfaulted previous to these changes.
      Patrick Steinhardt committed
  7. 01 Jul, 2015 1 commit
  8. 26 May, 2015 1 commit
  9. 06 May, 2014 1 commit
    • Add filter options and ALLOW_UNSAFE · 5269008c
      Diff and status do not want core.safecrlf to actually raise an
      error regardless of the setting, so this extends the filter API
      with an additional options flags parameter and adds a flag so that
      filters can be applied with GIT_FILTER_OPT_ALLOW_UNSAFE, indicating
      that unsafe filter application should be downgraded from a failure
      to a warning.
      Russell Belfer committed
  10. 25 Jan, 2014 1 commit
  11. 14 Nov, 2013 1 commit
  12. 17 Sep, 2013 4 commits
    • Bug fixes and cleanups · eefc32d5
      This contains a few bug fixes and some header and API cleanups.
      
      The main API change is that filters should now use GIT_PASSTHROUGH
      to indicate that they wish to skip processing a file instead of
      GIT_ENOTFOUND.
      
      The bug fixes include a possible out-of-range buffer access in
      the ident filter, a filter ordering problem I introduced into the
      custom filter tests on Windows, and a filter buf NUL termination
      issue that was coming up on Linux.
      Russell Belfer committed
    • More filtering tests including order · eab3746b
      This adds more tests of filters, including the ident filter when
      mixed with custom filters.  I was able to combine with the reverse
      filter and demonstrate that the order of filter application with
      the default priority constants matches the order of core Git.
      
      Also, this fixes two issues in the ident filter: preventing ident
      expansion on binary files and avoiding a NULL dereference when
      dollar sign characters are found without Id.
      Russell Belfer committed
    • Make filter tests somewhat more robust · ad7417d7
      The global and system config could interfere with the filter
      tests by imposing CRLF filtering where it was not anticipated.
      This better isolates the tests from the system settings.
      Russell Belfer committed
    • Port tests from PR 1683 · b47349b8
      This ports over some of the tests from
          https://github.com/libgit2/libgit2/pull/1683
      by @yorah and @ethomson
      Russell Belfer committed