)]}'
{
  "commit": "1fcacc7ecb6027cabcf8eba99f7fcc2021e6caa4",
  "tree": "a0d49fecb2eca0f223705864fa9ee0d34c6f9968",
  "parents": [
    "b94ba857121667a99a5fd74d093bd0b80ae6fb6c"
  ],
  "author": {
    "name": "Albert Kong",
    "email": "albertkong@google.com",
    "time": "Fri Apr 10 13:56:51 2026 -0700"
  },
  "committer": {
    "name": "Android Build Coastguard Worker",
    "email": "android-build-coastguard-worker@google.com",
    "time": "Thu Jul 09 17:47:43 2026 -0700"
  },
  "message": "Fix URI grant persistence bypass\n\nPrevent IOException during XML serialization by checking string lengths\nbefore writing to the grants file. This stops a malicious app from\nindefinitely persisting a URI grant after revocation by providing an\noverly long URI.\n\nhashtag:b/262884935\nFixes: 262884935\nTest: atest UriGrantsManagerServiceTests\nFlag: EXEMPT BUGFIX\nCherrypick-From: https://googleplex-android-review.googlesource.com/q/commit:23a398d0f7a171f5f97c5f13052f9ee3bcf7c298\nCherrypick-From: https://googleplex-android-review.googlesource.com/q/commit:89932dbb52489cadcf7a2a10b0d63161a7134dbe\nCherrypick-From: https://googleplex-android-review.googlesource.com/q/commit:e5ba9c7afa4ec0cd21bb78bff820ec0489c9d370\nMerged-In: I9f211dbfad84ce23222f256d4a8b18d976624345\nChange-Id: I9f211dbfad84ce23222f256d4a8b18d976624345\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a581b083f645b4cf16cbb891d45862e3f00dd926",
      "old_mode": 33188,
      "old_path": "services/core/java/com/android/server/uri/UriGrantsManagerService.java",
      "new_id": "f1dc303fe36627b8192bc4af2262a719d8e4486c",
      "new_mode": 33188,
      "new_path": "services/core/java/com/android/server/uri/UriGrantsManagerService.java"
    },
    {
      "type": "modify",
      "old_id": "0d1f36794f499a4ab1e9752ff19a32b8f6ec288e",
      "old_mode": 33188,
      "old_path": "services/core/java/com/android/server/uri/UriPermission.java",
      "new_id": "a6144287bea81bab786aa14b7e09973e193d6413",
      "new_mode": 33188,
      "new_path": "services/core/java/com/android/server/uri/UriPermission.java"
    },
    {
      "type": "modify",
      "old_id": "24abc183cad1de5f15ab1f31581bf6a6513dd638",
      "old_mode": 33188,
      "old_path": "services/tests/servicestests/src/com/android/server/uri/UriGrantsManagerServiceTest.java",
      "new_id": "3c549a4a527e627596a488c4f049f5edc2af2a28",
      "new_mode": 33188,
      "new_path": "services/tests/servicestests/src/com/android/server/uri/UriGrantsManagerServiceTest.java"
    }
  ]
}
