)]}'
{
  "commit": "62d84b19359a8ddd3df5b6293d1b05ef5281f532",
  "tree": "b614f0c9c9671eb6beaec448a7d22dc1ad44e298",
  "parents": [
    "098cf45f4e853f3c85c14af0e475bfae0839f027"
  ],
  "author": {
    "name": "Christopher Ferris",
    "email": "cferris@google.com",
    "time": "Mon Oct 20 19:09:19 2014 -0700"
  },
  "committer": {
    "name": "Christopher Ferris",
    "email": "cferris@google.com",
    "time": "Wed Oct 22 13:20:39 2014 -0700"
  },
  "message": "Fix race condition in timer disarm/delete.\n\nWhen setting a repeat timer using the SIGEV_THREAD mechanism, it\u0027s possible\nthat the callback can be called after the timer is disarmed or deleted.\nThis happens because the kernel can generate signals that the timer thread\nwill continue to handle even after the timer is supposed to be off.\n\nAdd two new tests to verify that disarming/deleting doesn\u0027t continue to\ncall the callback.\n\nModify the repeat test to finish more quickly than before.\n\nRefactor the Counter implementation a bit.\n\nBug: 18039727\n\n(cherry pick from commit 0724132c3263145f2a667f453a199d313a5b3d9f)\n\nChange-Id: I135726ea4038a47920a6c511708813b1a9996c42\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7ad0ef1fb353f8e08398635eee5e4abd3964dfa0",
      "old_mode": 33188,
      "old_path": "libc/bionic/posix_timers.cpp",
      "new_id": "3c664d9c857c3148d7aaf59ccd0fda0b24e5c52b",
      "new_mode": 33188,
      "new_path": "libc/bionic/posix_timers.cpp"
    },
    {
      "type": "modify",
      "old_id": "26c699339bef67423429023b6fd5ebf54354a1b7",
      "old_mode": 33188,
      "old_path": "tests/time_test.cpp",
      "new_id": "7a551b42a5fd448c5a6be9f5b9641bf5bafdb03c",
      "new_mode": 33188,
      "new_path": "tests/time_test.cpp"
    }
  ]
}
