)]}'
{
  "commit": "3907bf2bdbd8e1a1f93563457214f4f996349bf7",
  "tree": "c9c0aea813f9c8960154e83030c9a7bde1689c9d",
  "parents": [
    "7efbf637b0bf4d9d2296a44550c51e50b4c44532"
  ],
  "author": {
    "name": "Tommi",
    "email": "tommi@webrtc.org",
    "time": "Mon Mar 09 21:31:21 2026"
  },
  "committer": {
    "name": "WebRTC LUCI CQ",
    "email": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue Mar 10 06:59:48 2026"
  },
  "message": "Use asynchronous posting for PeerConnection signaling tasks\n\nUpdate RunOnSignalingThread to use PostTask with thread safety flags\ninstead of BlockingCall. The places where RunOnSignalingThread is used,\nbypass the proxy but used BlockingCall to remain functionally compatible\nwith the proxies. The methods are however asynchronous, so the\nBlockingCall can be avoided. That was not done in the first step when\nRunOnSignalingThread was introduced in order to not bring too many\nchanges (the main focus was on allowing non thread-hopping getters).\nThis change is a follow up step that transitions the initial step of the\ntask execution from a synchronous, blocking operation to an asynchronous\nwhen called from a different thread.\n\nAs a btw change, SetLocalDescription and SetRemoteDescription now\nconsistently manage the lifetime of their arguments using\nstd::unique_ptr and scoped_refptr to ensure that\nSessionDescriptionInterface and SetSessionDescriptionObserver objects\nremain valid until the asynchronous task completes on the signaling\nthread, preventing potential use-after-free or memory leak issues.\n\nBug: webrtc:442220720\nChange-Id: I71cda2643c8ddd89622436df08bf889c0a35c56d\nReviewed-on: https://webrtc-review.googlesource.com/c/src/+/454980\nCommit-Queue: Tomas Gunnarsson \u003ctommi@webrtc.org\u003e\nReviewed-by: Harald Alvestrand \u003chta@webrtc.org\u003e\nCr-Commit-Position: refs/heads/main@{#47095}\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "57812745ea9b3df9cb50d6ab78bc0ec50656db50",
      "old_mode": 33188,
      "old_path": "pc/peer_connection.cc",
      "new_id": "cd4ad8b463d39b7f08c5ba5d995101f6a291f500",
      "new_mode": 33188,
      "new_path": "pc/peer_connection.cc"
    },
    {
      "type": "modify",
      "old_id": "10f2f13fc1c90cd15f55d3ba51485c0fae4c3c6b",
      "old_mode": 33188,
      "old_path": "pc/sdp_offer_answer.cc",
      "new_id": "590a46563f56598750a95cf4e7b793fc42d3b17e",
      "new_mode": 33188,
      "new_path": "pc/sdp_offer_answer.cc"
    },
    {
      "type": "modify",
      "old_id": "05fca5920efb50bc4e3a41e72bfb637a1c164a89",
      "old_mode": 33188,
      "old_path": "pc/sdp_offer_answer.h",
      "new_id": "7be0f6626a4927ea83bebb75c4ad566fba7018d4",
      "new_mode": 33188,
      "new_path": "pc/sdp_offer_answer.h"
    }
  ]
}
