)]}'
{
  "commit": "7d46aaa9199b9c9d3ddd33ce91d57e89a657d6e9",
  "tree": "d824f501fbb1039a8eafb76772bedf499c677a12",
  "parents": [
    "b8e217c4e6cd732b12359d880882a3a45923cf51"
  ],
  "author": {
    "name": "Taso Dane",
    "email": "taso@google.com",
    "time": "Fri May 01 02:40:50 2026 -0700"
  },
  "committer": {
    "name": "Android Build Coastguard Worker",
    "email": "android-build-coastguard-worker@google.com",
    "time": "Thu Jul 09 19:03:51 2026 -0700"
  },
  "message": "[AppWidget] Strip URI grants in ConfigActivityProxy\n\nAppWidgetConfigActivityProxy is a system-privileged activity that\nrelays the result of a widget configuration activity back to the\nhost. Since the proxy\u0027s PendingIntent is created by the system,\ncalling setResult() with an intent containing URI permission grant\nflags would cause the system to grant those permissions to the\ncaller. This allows a malicious widget provider to trick the system\ninto granting it unauthorized URI permissions.\n\nThis change strips the URI permission grant flags from the result\nintent before calling setResult() in the proxy activity. This\nensures that no URI permissions are inadvertently granted by the\nsystem UID.\n\nBug: 498916138\nTest: atest FrameworksCoreTests:android.appwidget.AppWidgetConfigActivityProxyTest\nFlag: EXEMPT BUGFIX\n\nAutogenerated by MendIt (go/androidmendit)\nCherrypick-From: https://googleplex-android-review.googlesource.com/q/commit:e2c75d70260ad97f24feef6b8ec1a0ebfe364347\nCherrypick-From: https://googleplex-android-review.googlesource.com/q/commit:80e84dab91f60a4c7175759802b30d4ad3241c39\nMerged-In: I770b26d0e28e1090abae452e3bc00af51bf9b30e\nChange-Id: I770b26d0e28e1090abae452e3bc00af51bf9b30e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d6a87d3d653a4b716fb258757d3801c073d3b784",
      "old_mode": 33188,
      "old_path": "core/java/android/appwidget/AppWidgetConfigActivityProxy.java",
      "new_id": "d6874127c7b5a0902bf077274098e66d7692c762",
      "new_mode": 33188,
      "new_path": "core/java/android/appwidget/AppWidgetConfigActivityProxy.java"
    },
    {
      "type": "modify",
      "old_id": "4573386a6b0380d52497096051ed94d55aa4aacc",
      "old_mode": 33188,
      "old_path": "core/tests/coretests/Android.bp",
      "new_id": "7d61bf5946f2e15c7cc52951db00928e1cce03bd",
      "new_mode": 33188,
      "new_path": "core/tests/coretests/Android.bp"
    },
    {
      "type": "modify",
      "old_id": "a786166eaec3154d50fc28d6325f7a9d57663dec",
      "old_mode": 33188,
      "old_path": "core/tests/coretests/AndroidManifest.xml",
      "new_id": "3dfffdd3a93385c9435b290fba2427fd66dbc033",
      "new_mode": 33188,
      "new_path": "core/tests/coretests/AndroidManifest.xml"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4562b301693aba1163bbbcdc9763c30366e5ad7e",
      "new_mode": 33188,
      "new_path": "core/tests/coretests/src/android/appwidget/AppWidgetConfigActivityProxyTest.kt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2a2a29c3fc226e04c5d241f751debb1e7fd5c339",
      "new_mode": 33188,
      "new_path": "core/tests/coretests/src/android/appwidget/TEST_MAPPING"
    }
  ]
}
