1. 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
  2. 03 Jan, 2019 2 commits
  3. 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
  4. 19 Dec, 2018 5 commits
  5. 14 Dec, 2018 3 commits
  6. 06 Dec, 2018 2 commits
  7. 05 Dec, 2018 1 commit
  8. 04 Dec, 2018 12 commits
  9. 03 Dec, 2018 1 commit
    • crlf_data: move to a "to_workdir" folder · 13a8bc92
      Move the crlf_data folders reponsible for holding the state of the
      filters going into the working directory to "to_workdir" variations of
      the folder name to accommodate future growth into the "to odb" filter
      variation.  Update the script to create these new folders as appopriate.
      Edward Thomson committed
  10. 01 Dec, 2018 7 commits
  11. 30 Nov, 2018 1 commit
  12. 29 Nov, 2018 1 commit