1. 31 Mar, 2016 3 commits
    • xdiff/xprepare: fix a memory leak · 6045afd3
      The xdl_prepare_env() function may initialise an xdlclassifier_t
      data structure via xdl_init_classifier(), which allocates memory
      to several fields, for example 'rchash', 'rcrecs' and 'ncha'.
      If this function later exits due to the failure of xdl_optimize_ctxs(),
      then this xdlclassifier_t structure, and the memory allocated to it,
      is not cleaned up.
      
      In order to fix the memory leak, insert a call to xdl_free_classifier()
      before returning.
      
      This patch was originally written by Ramsay Jones (see commit
      87f16258367a3b9a62663b11f898a4a6f3c19d31 in git.git).
      Patrick Steinhardt committed
    • xdiff/xprepare: use the XDF_DIFF_ALG() macro to access flag bits · 1bce1487
      Commit 307ab20b3 ("xdiff: PATIENCE/HISTOGRAM are not independent option
      bits", 19-02-2012) introduced the XDF_DIFF_ALG() macro to access the
      flag bits used to represent the diff algorithm requested. In addition,
      code which had used explicit manipulation of the flag bits was changed
      to use the macros.
      
      However, one example of direct manipulation remains. Update this code to
      use the XDF_DIFF_ALG() macro.
      
      This patch was originally written by Ramsay Jones (see commit
      5cd6978a9cfef58de061a9525f3678ade479564d in git.git).
      Patrick Steinhardt committed
  2. 01 Mar, 2016 1 commit
  3. 23 Feb, 2016 1 commit
  4. 22 Oct, 2015 1 commit
  5. 05 Oct, 2015 2 commits
  6. 10 Jul, 2015 1 commit
  7. 07 Jul, 2015 1 commit
    • xdiff: upgrade to core git 2.4.5 · 234ca40a
      Upgrade xdiff to version used in core git 2.4.5 (0df0541).
      
      Corrects an issue where an LF is added at EOF while applying
      an unrelated change (ba31180), cleans up some unused code (be89977 and
      e5b0662), and provides an improved callback to avoid leaking internal
      (to xdiff) structures (467d348).
      
      This also adds some additional functionality that we do not yet take
      advantage of, namely the ability to ignore changes whose lines are
      all blank (36617af).
      Edward Thomson committed
  8. 05 Dec, 2014 1 commit
  9. 21 Apr, 2012 1 commit
  10. 20 Apr, 2012 1 commit
  11. 17 Apr, 2012 1 commit
  12. 02 Mar, 2012 4 commits
    • Update diff to use iterators · 74fa4bfa
      This is a major reorganization of the diff code.  This changes
      the diff functions to use the iterators for traversing the
      content.  This allowed a lot of code to be simplified.  Also,
      this moved the functions relating to outputting a diff into a
      new file (diff_output.c).
      
      This includes a number of other changes - adding utility
      functions, extending iterators, etc. plus more tests for the
      diff code.  This also takes the example diff.c program much
      further in terms of emulating git-diff command line options.
      Russell Belfer committed
    • Initial implementation of git_diff_blob · cd33323b
      This gets the basic plumbing in place for git_diff_blob.
      There is a known issue where additional parameters like
      the number of lines of context to display on the diff
      are not working correctly (which leads one of the new
      unit tests to fail).
      Russell Belfer committed
    • Eliminate xdiff compiler warnings · 8b75f7f3
      This cleans up the various GCC compiler warnings with the
      xdiff code that was copied in.
      Russell Belfer committed
    • Import xdiff library from git · 3a5ad90a
      This is the initial import of the xdiff code (LGPL) from
      core git as of rev f349b562086e2b7595d8a977d2734ab2ef9e71ef
      Russell Belfer committed