1. 10 Jun, 2018 1 commit
  2. 31 Jan, 2018 2 commits
  3. 30 Dec, 2017 1 commit
  4. 29 Dec, 2017 1 commit
  5. 03 Jul, 2017 1 commit
    • Make sure to always include "common.h" first · 0c7f49dd
      Next to including several files, our "common.h" header also declares
      various macros which are then used throughout the project. As such, we
      have to make sure to always include this file first in all
      implementation files. Otherwise, we might encounter problems or even
      silent behavioural differences due to macros or defines not being
      defined as they should be. So in fact, our header and implementation
      files should make sure to always include "common.h" first.
      
      This commit does so by establishing a common include pattern. Header
      files inside of "src" will now always include "common.h" as its first
      other file, separated by a newline from all the other includes to make
      it stand out as special. There are two cases for the implementation
      files. If they do have a matching header file, they will always include
      this one first, leading to "common.h" being transitively included as
      first file. If they do not have a matching header file, they instead
      include "common.h" as first file themselves.
      
      This fixes the outlined problems and will become our standard practice
      for header and source files inside of the "src/" from now on.
      Patrick Steinhardt committed
  6. 14 Nov, 2016 1 commit
  7. 22 Aug, 2016 1 commit
  8. 21 Apr, 2016 1 commit
  9. 02 Apr, 2016 1 commit
  10. 31 Mar, 2016 3 commits
  11. 24 Mar, 2016 7 commits
  12. 23 Mar, 2016 6 commits
  13. 20 Mar, 2016 1 commit
  14. 17 Feb, 2016 2 commits
  15. 11 Feb, 2016 1 commit
  16. 28 Oct, 2015 1 commit
  17. 13 Sep, 2015 1 commit
  18. 11 Sep, 2015 1 commit
    • iterator: advance the tree iterator smartly · a1859e21
      While advancing the tree iterator, if we advance over things that
      we aren't interested in, then call `current`.  Which may *itself*
      call advance.
      
      While advancing the tree iterator, if we advance over things that
      we aren't interested in, then call `current`.  Which may *itself*
      call advance.
      
      While advancing the tree iterator, if we advance over things that
      we aren't interested in, then call `current`.  Which may *itself*
      call advance.
      
      While advancing the tree iterator, if we advance over things that
      we aren't interested in, then call `current`.  Which may *itself*
      call advance.
      
      While advancing the tree iterator, if we advance over things that
      we aren't interested in, then call `current`.  Which may *itself*
      call advance.
      
      Error: stack overflow.
      Edward Thomson committed
  19. 31 Aug, 2015 1 commit
    • iterator: saner pathlist matching for idx iterator · d53c8880
      Some nicer refactoring for index iteration walks.
      
      The index iterator doesn't binary search through the pathlist space,
      since it lacks directory entries, and would have to binary search
      each index entry and all its parents (eg, when presented with an index
      entry of `foo/bar/file.c`, you would have to look in the pathlist for
      `foo/bar/file.c`, `foo/bar` and `foo`).  Since the index entries and the
      pathlist are both nicely sorted, we walk the index entries in lockstep
      with the pathlist like we do for other iteration/diff/merge walks.
      Edward Thomson committed
  20. 30 Aug, 2015 2 commits
  21. 28 Aug, 2015 3 commits
  22. 03 Aug, 2015 1 commit