1. 11 Jul, 2013 2 commits
    • Fix warnings on Win64 · 584f2d30
      Russell Belfer committed
    • Update git__swap thread helper · 814de0bc
      This makes git__swap use the __sync_lock_test_and_set primitive
      with GCC and the InterlockedExchangePointer primitive with MSVC.
      Previously is used compare_and_swap in a way that was probably
      unintuitive for most thinking (i.e. it could fail to swap in the
      value if another thread raced in).  Now it will always succeed
      and the last thread to run in a race will win instead of the
      first thread.
      
      This also fixes up a little confusion between volatile void **
      and void * volatile * that came up with the Win32 compiler.
      Russell Belfer committed
  2. 10 Jul, 2013 38 commits