)]}'
{
  "commit": "e3dda19b31ee974fd749d55bc97d8bfc0e976bb4",
  "tree": "31abfc36cc895daab1e244f91b8fe11955e52e9f",
  "parents": [
    "5360a17ce7a596b0fb976a1be6a2b51753e87824"
  ],
  "author": {
    "name": "Nathan Hjelm",
    "email": "hjelmn@google.com",
    "time": "Fri Jun 11 22:27:19 2021 -0600"
  },
  "committer": {
    "name": "Nathan Hjelm",
    "email": "hjelmn@google.com",
    "time": "Fri Jun 11 22:27:19 2021 -0600"
  },
  "message": "darwin: release device parent reference when re-enumerating device\n\nThis commit fixes a dangling device reference that can occur when a device is\nbeing re-enumerated. The problem is the code was unconditionally re-caching the\nparent device which then takes a reference on the parent device. If the field\nwas already populated this reference was not needed. To ensure the code works\neven if the parent device also changes during the re-enumeration the code\nrelease the parent reference and grabs a fresh reference.\n\nFixes #924\n\nSigned-off-by: Nathan Hjelm \u003chjelmn@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "72023377f98ed47e5d4135eb0798c222c167d7cf",
      "old_mode": 33188,
      "old_path": "libusb/os/darwin_usb.c",
      "new_id": "6de81024a2807b53b284f5f1f2b8a096148cbf67",
      "new_mode": 33188,
      "new_path": "libusb/os/darwin_usb.c"
    },
    {
      "type": "modify",
      "old_id": "f37504483057699378d7f2cf52012dfc6e30d65f",
      "old_mode": 33188,
      "old_path": "libusb/version_nano.h",
      "new_id": "1f2431b97f6813b90ee1d5d52077bea5c2af2d3e",
      "new_mode": 33188,
      "new_path": "libusb/version_nano.h"
    }
  ]
}
