1. 23 Feb, 2022 2 commits
  2. 09 Nov, 2021 1 commit
  3. 08 Aug, 2021 1 commit
  4. 30 Dec, 2020 1 commit
  5. 27 Dec, 2020 1 commit
  6. 27 Nov, 2020 1 commit
  7. 25 Nov, 2019 1 commit
  8. 23 Aug, 2019 1 commit
  9. 14 Jun, 2019 1 commit
    • posix: remove `p_fallocate` abstraction · 2d85c7e8
      By now, we have repeatedly failed to provide a nice
      cross-platform implementation of `p_fallocate`. Recent tries to
      do that escalated quite fast to a set of different CMake checks,
      implementations, fallbacks, etc., which started to look real
      awkward to maintain. In fact, `p_fallocate` had only been
      introduced in commit 4e3949b7 (tests: test that largefiles can
      be read through the tree API, 2019-01-30) to support a test with
      large files, but given the maintenance costs it just seems not to
      be worht it.
      
      As we have removed the sole user of `p_fallocate` in the previous
      commit, let's drop it altogether.
      Patrick Steinhardt committed
  10. 24 May, 2019 1 commit
  11. 22 Feb, 2019 2 commits
  12. 30 Jan, 2019 1 commit
  13. 22 Jan, 2019 1 commit
  14. 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
  15. 23 Jun, 2017 1 commit
  16. 28 Feb, 2017 1 commit
    • odb_loose: fsync tests · e6ed0d2f
      Introduce a simple counter that `p_fsync` implements.  This is useful
      for ensuring that `p_fsync` is called when we expect it to be, for
      example when we have enabled an odb backend to perform `fsync`s when
      writing objects.
      Edward Thomson committed
  17. 29 Dec, 2016 1 commit
  18. 16 Mar, 2016 1 commit
  19. 31 Dec, 2015 2 commits
  20. 13 Feb, 2015 1 commit
  21. 10 Aug, 2014 1 commit
  22. 20 May, 2014 1 commit
  23. 16 May, 2014 1 commit
  24. 02 May, 2014 1 commit
  25. 16 Feb, 2014 1 commit
    • Check for EWOULDBLOCK as well as EAGAIN on write. · 0197d410
      On some systems, notably HP PA-RISC systems running Linux or HP-UX,
      EWOULDBLOCK and EAGAIN are not the same value.  POSIX (and these OSes) allow
      EWOULDBLOCK to occur on write(2) (and send(2), etc.), so check explicitly
      for this case as well as EAGAIN by defining and using a macro GIT_ISBLOCKED
      that considers both.
      
      The macro is necessary because MSYS does not provide EWOULDBLOCK and
      compilation fails if an attempt is made to use it unconditionally.  On most
      systems, where the two values are the same, the compiler will simply
      optimize this check out and it will have no effect.
      brian m. carlson committed
  26. 11 Dec, 2013 1 commit
    • Test cancel from indexer progress callback · 7697e541
      This adds tests that try canceling an indexer operation from
      within the progress callback.
      
      After writing the tests, I wanted to run this under valgrind and
      had a number of errors in that situation because mmap wasn't
      working.  I added a CMake option to force emulation of mmap and
      consolidated the Amiga-specific code into that new place (so we
      don't actually need separate Amiga code now, just have to turn on
      -DNO_MMAP).
      
      Additionally, I made the indexer code propagate error codes more
      reliably than it used to.
      Russell Belfer committed
  27. 23 Jun, 2013 1 commit
  28. 16 Feb, 2013 1 commit
  29. 08 Jan, 2013 1 commit
  30. 07 Nov, 2012 1 commit
  31. 22 Jun, 2012 1 commit
  32. 08 May, 2012 1 commit
  33. 07 May, 2012 1 commit
  34. 17 Apr, 2012 1 commit
  35. 15 Mar, 2012 1 commit
    • Continue error conversion · deafee7b
      This converts blob.c, fileops.c, and all of the win32 files.
      Also, various minor cleanups throughout the code.  Plus, in
      testing the win32 build, I cleaned up a bunch (although not
      all) of the warnings with the 64-bit build.
      Russell Belfer committed
  36. 09 Mar, 2012 1 commit
    • error-handling: On-disk config file backend · dda708e7
      Includes:
      
      	- Proper error reporting when encountering syntax errors in a
      	config file (file, line number, column).
      
      	- Rewritten `config_write`, now with 99% less goto-spaghetti
      
      	- Error state in `git_filebuf`: filebuf write functions no longer
      	need to be checked for error returns. If any of the writes performed
      	on a buffer fail, the last call to `git_filebuf_commit` or
      	`git_filebuf_hash` will fail accordingly and set the appropiate error
      	message. Baller!
      Vicent Martí committed
  37. 13 Feb, 2012 1 commit