)]}'
{
  "commit": "95aad18f2ee6c24d2709bf566255201c0d9f70ca",
  "tree": "da8342578f09b403a3d5d1677ca96b81801f0b3a",
  "parents": [
    "cd8b15b2cf454ef2a94f8ee77de2bad8b4bc7cb5"
  ],
  "author": {
    "name": "Lokbondo Kung",
    "email": "lokokung@google.com",
    "time": "Wed Oct 01 11:20:46 2025 -0700"
  },
  "committer": {
    "name": "Dawn LUCI CQ",
    "email": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Wed Oct 01 11:20:46 2025 -0700"
  },
  "message": "[dawn][wire] Make the server object tracking thread-safe.\n\n- Since server-side callbacks can now be spontaneous, i.e. may\n  be called on different threads such as in Metal threads, we need\n  to make sure that the object table on the server is protected.\n  We use a Mutex instead of the MutexProtected helpers because it\u0027s\n  easier to use given the requirements. (See comment in ServerBase.h).\n- Removes direct access to the KnownObjects vectors in\n  ServerBase so that they can be controlled via helpers that\n  acquire locks when necessary.\n\nBug: 412761856\nChange-Id: I9a2f36851ff9f0809312e69dd9853ff7d2a89a4c\nReviewed-on: https://dawn-review.googlesource.com/c/dawn/+/261280\nReviewed-by: Corentin Wallez \u003ccwallez@chromium.org\u003e\nReviewed-by: Kai Ninomiya \u003ckainino@chromium.org\u003e\nCommit-Queue: Loko Kung \u003clokokung@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e58b3ba704fb98929ad21b8b68d78609cc891bf8",
      "old_mode": 33188,
      "old_path": "generator/templates/dawn/wire/server/ServerBase.h",
      "new_id": "edded22b8e53194437e69410b14409d40f297f5b",
      "new_mode": 33188,
      "new_path": "generator/templates/dawn/wire/server/ServerBase.h"
    },
    {
      "type": "modify",
      "old_id": "46fc4c8ebd09e738afb35fd1ee8be66bbae2ba1d",
      "old_mode": 33188,
      "old_path": "generator/templates/dawn/wire/server/ServerDoers.cpp",
      "new_id": "f90a9de4483b5ba235723b547c04bc2cc8311eb7",
      "new_mode": 33188,
      "new_path": "generator/templates/dawn/wire/server/ServerDoers.cpp"
    },
    {
      "type": "modify",
      "old_id": "5b946817a243d05fea4b0b0aa411bc6b7e9c5c15",
      "old_mode": 33188,
      "old_path": "generator/templates/dawn/wire/server/ServerHandlers.cpp",
      "new_id": "c954823421d2e3d77c2d1ce9c23b1c1b07335519",
      "new_mode": 33188,
      "new_path": "generator/templates/dawn/wire/server/ServerHandlers.cpp"
    },
    {
      "type": "modify",
      "old_id": "8eef438603b2854769db3d00aacc741b5d6da22e",
      "old_mode": 33188,
      "old_path": "src/dawn/wire/server/Server.cpp",
      "new_id": "ef4d7e8f9a9af0f1c614489beeabd37ef21738e9",
      "new_mode": 33188,
      "new_path": "src/dawn/wire/server/Server.cpp"
    },
    {
      "type": "modify",
      "old_id": "cfab1066ab4865e92b80088a08d888e9e26da80b",
      "old_mode": 33188,
      "old_path": "src/dawn/wire/server/Server.h",
      "new_id": "37ff0f201c836eda858401f786c6b404f490f736",
      "new_mode": 33188,
      "new_path": "src/dawn/wire/server/Server.h"
    },
    {
      "type": "modify",
      "old_id": "37db366f78233a918f2c778cd769b2bea5ec97fc",
      "old_mode": 33188,
      "old_path": "src/dawn/wire/server/ServerAdapter.cpp",
      "new_id": "7d55994d9b41b240b0998978f4d9b9aaa44a8dd0",
      "new_mode": 33188,
      "new_path": "src/dawn/wire/server/ServerAdapter.cpp"
    },
    {
      "type": "modify",
      "old_id": "e27d382df80ce921913ebd49810abb5ccb6e922e",
      "old_mode": 33188,
      "old_path": "src/dawn/wire/server/ServerBuffer.cpp",
      "new_id": "759ba7893a23f11f4cebf944414b7ba811d9e6f0",
      "new_mode": 33188,
      "new_path": "src/dawn/wire/server/ServerBuffer.cpp"
    },
    {
      "type": "modify",
      "old_id": "595994250736e07e98c66a505757481e2230205d",
      "old_mode": 33188,
      "old_path": "src/dawn/wire/server/ServerDevice.cpp",
      "new_id": "ef51d89c666f2a4d5be0f277e4de2642139d8234",
      "new_mode": 33188,
      "new_path": "src/dawn/wire/server/ServerDevice.cpp"
    },
    {
      "type": "modify",
      "old_id": "48e31d406b6b22c6eb6e0b7379c79ee1bb4d3b43",
      "old_mode": 33188,
      "old_path": "src/dawn/wire/server/ServerInstance.cpp",
      "new_id": "bae3ab267dd16d562560212daf62b30fe5c65f65",
      "new_mode": 33188,
      "new_path": "src/dawn/wire/server/ServerInstance.cpp"
    },
    {
      "type": "modify",
      "old_id": "dbac14265e4419189cf98c2894fb0c711f775c46",
      "old_mode": 33188,
      "old_path": "src/dawn/wire/server/ServerSurface.cpp",
      "new_id": "9b6965bc65b9ad1d9d1c13bff0a3b1c872fac5f2",
      "new_mode": 33188,
      "new_path": "src/dawn/wire/server/ServerSurface.cpp"
    }
  ]
}
