1. 28 Feb, 2016 1 commit
  2. 12 Feb, 2016 1 commit
  3. 21 Dec, 2015 1 commit
  4. 30 Nov, 2015 1 commit
  5. 20 Nov, 2015 1 commit
  6. 17 Nov, 2015 4 commits
    • racy: make git_index_read_index handle raciness · 5f32c506
      Ensure that `git_index_read_index` clears the uptodate bit on
      files that it modifies.
      
      Further, do not propagate the cache from an on-disk index into
      another on-disk index.  Although this should not be done, as
      `git_index_read_index` is used to bring an in-memory index into
      another index (that may or may not be on-disk), ensure that we do
      not accidentally bring in these bits when misused.
      Edward Thomson committed
    • racy: ensure git_index_read_tree clears uptodate · c30051f0
      Ensure that `git_index_read_tree` clears the uptodate bit on files
      that it modifies.
      Edward Thomson committed
    • index: test for smudged entries on write only · 956f4da8
      Test that entries are only smudged when we write the index: the
      entry smudging is to prevent us from updating an index in a way
      that it would be impossible to tell that an item was racy.
      Consider when we load an index:  any entries that have the same
      (or newer) timestamp than the index itself are considered racy,
      and are subject to further scrutiny.
      
      If we *save* that index with the same entries that we loaded,
      then the index would now have a newer timestamp than the entries,
      and they would no longer be given that additional scrutiny, failing
      our racy detection!  So test that we smudge those entries only on
      writing the new index, but that we can detect them (in diff) without
      having to write.
      Edward Thomson committed
    • index: don't detect raciness in uptodate entries · d1101263
      Keep track of entries that we believe are up-to-date, because we
      added the index entries since the index was loaded.  This prevents
      us from unnecessarily examining files that we wrote during the
      cleanup of racy entries (when we smudge racily clean files that have
      a timestamp newer than or equal to the index's timestamp when we
      read it).  Without keeping track of this, we would examine every
      file that we just checked out for raciness, since all their timestamps
      would be newer than the index's timestamp.
      Edward Thomson committed
  7. 19 Sep, 2015 1 commit
  8. 29 Jun, 2015 1 commit
  9. 26 Jun, 2015 1 commit
  10. 22 Jun, 2015 5 commits
  11. 16 Jun, 2015 1 commit
    • diff: add failing test for racy-git in the index · 77596fcf
      We update the index and then immediately change the contents of the
      file. This makes the diff think there are no changes, as the timestamp
      of the file agrees with the cached data. This is however a bug, as the
      file has obviously changed contents.
      
      The test is a bit fragile, as it assumes that the index writing and the
      following modification of the file happen in the same second, but it's
      enough to show the issue.
      Carlos Martín Nieto committed