1. 17 Jan, 2019 10 commits
  2. 15 Jan, 2019 2 commits
  3. 14 Jan, 2019 4 commits
  4. 10 Jan, 2019 4 commits
  5. 09 Jan, 2019 5 commits
  6. 08 Jan, 2019 1 commit
  7. 07 Jan, 2019 1 commit
  8. 06 Jan, 2019 3 commits
    • Windows is hard. · 321d19c1
      lhchavez committed
    • Attempt at fixing the MingW64 compilation · b5e8272f
      It seems like MingW64's size_t is defined differently than in Linux.
      lhchavez committed
    • Fix a bunch of warnings · 7b453e7e
      This change fixes a bunch of warnings that were discovered by compiling
      with `clang -target=i386-pc-linux-gnu`. It turned out that the
      intrinsics were not necessarily being used in all platforms! Especially
      in GCC, since it does not support __has_builtin.
      
      Some more warnings were gleaned from the Windows build, but I stopped
      when I saw that some third-party dependencies (e.g. zlib) have warnings
      of their own, so we might never be able to enable -Werror there.
      lhchavez committed
  9. 04 Jan, 2019 6 commits
  10. 03 Jan, 2019 2 commits
  11. 02 Jan, 2019 2 commits
    • global: move init callbacks into an array · b46c3594
      We currently have an explicit callchain of all the initialization
      callbacks in our `init_common` function. This is perfectly fine, but
      requires us to manually keep track of how many shutdown callbacks there
      may be installed: to avoid allocations before libgit2 is fully
      initialized, we assume that every initializer may register at most one
      shutdown function. These shutdown functions are stored in a static array
      of size `MAX_SHUTDOWN_CB`, which then needs to be updated manually
      whenever a new initializer function is being added.
      
      The situation can be easily fixed: convert the callchain of init
      functions into an array and iterate over it to initialize all
      subsystems. This allows us to define the `git__shutdown_callbacks` array
      with the same size as the initializer array and rids us of the need to
      always update `MAX_SHUTDOWN_CB`.
      Patrick Steinhardt committed
    • hash: convert `global_init` macros to real function · 03dc6480
      The `git_hash_global_init` function is simply defined as a macro to zero
      for most of the different hash implementations. This makes it impossible
      to treat it like a function pointer, which is required for a later
      commit where we want to improve the way global initialization works.
      Fix the issue by converting all no-op macros to an inline function
      returning zero.
      
      There's a small gotcha here, though: as most hash implementations only
      have a header file, but not a corresponding implementation file, we
      cannot declare the function as non-static. But declaring it as `static
      inline` fails, too, as there is a previous declaration as non-static. So
      we have to move the function declaration after the include that brings
      in the function definition, as it is allowed to have a non-static
      declaration after a static definition, but not the other way round.
      Patrick Steinhardt committed