1. 04 Aug, 2012 1 commit
    • Update iterators for consistency across library · 5dca2010
      This updates all the `foreach()` type functions across the library
      that take callbacks from the user to have a consistent behavior.
      The rules are:
      
      * A callback terminates the loop by returning any non-zero value
      * Once the callback returns non-zero, it will not be called again
        (i.e. the loop stops all iteration regardless of state)
      * If the callback returns non-zero, the parent fn returns GIT_EUSER
      * Although the parent returns GIT_EUSER, no error will be set in
        the library and `giterr_last()` will return NULL if called.
      
      This commit makes those changes across the library and adds tests
      for most of the iteration APIs to make sure that they follow the
      above rules.
      Russell Belfer committed
  2. 26 Jul, 2012 1 commit
    • Fix git_tree_walk to return user error · 2031760c
      This makes sure that an error code returned by the callback function
      of `git_tree_walk` will stop the iteration and get propagated back
      to the caller verbatim.
      
      Also, this adds a minor helper function `git_tree_entry_byoid` that
      searches a `git_tree` for an entry with the given OID.  This isn't
      a fast function, but it's easier than writing the loop yourself as
      an external user of the library.
      Russell Belfer committed
  3. 25 Jul, 2012 1 commit
  4. 24 Jul, 2012 7 commits
  5. 23 Jul, 2012 3 commits
  6. 21 Jul, 2012 3 commits
  7. 20 Jul, 2012 1 commit
  8. 19 Jul, 2012 2 commits
  9. 17 Jul, 2012 5 commits
  10. 16 Jul, 2012 2 commits
  11. 15 Jul, 2012 4 commits
  12. 14 Jul, 2012 1 commit
  13. 13 Jul, 2012 4 commits
  14. 12 Jul, 2012 5 commits