)]}'
{
  "commit": "f1424da7d757d1ea439393d8183bc45e49912ee6",
  "tree": "66dac7ff9402c21e28a47ee41870e3b52ece2df6",
  "parents": [
    "078396f82d93754004467251bdc5ebf3b72a2c38"
  ],
  "author": {
    "name": "Tommi",
    "email": "tommi@webrtc.org",
    "time": "Sat May 09 13:36:41 2026"
  },
  "committer": {
    "name": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Sat May 09 20:11:39 2026"
  },
  "message": "Reland \"Move signaling safety flag into SctpDataChannel and clarify its purpose\"\n\nThis is a reland of commit 81d438a4fb11bc0de35229bd3894db6712935319\n\nThe reland captures the controller flag in the ObserverAdapter directly\nrather than accessing it via the channel object.\n\nOriginal change\u0027s description:\n\u003e Move signaling safety flag into SctpDataChannel and clarify its purpose\n\u003e\n\u003e Encapsulate the signaling thread safety flag within SctpDataChannel and\n\u003e rename to `controller_safety` to clarify its purpose. Remove details\n\u003e about the flag from the CreateProxy() interface. The observer previously\n\u003e received this flag via the CreateProxy method, but the observer is\n\u003e associated with the channel (not the proxy). Basically, the proxy\n\u003e creation layer should not need to know about the flag mechanism and the\n\u003e channel object was out of the loop, so this was a bit awkward.\n\u003e\n\u003e Bug: webrtc:510487699\n\u003e Change-Id: I57638ade52305b6479a9a9165747336c679631cd\n\u003e Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/304841\n\u003e Reviewed-by: Danil Chapovalov \u003cdanilchap@webrtc.org\u003e\n\u003e Commit-Queue: Tomas Gunnarsson \u003ctommi@webrtc.org\u003e\n\u003e Cr-Commit-Position: refs/heads/main@{#47649}\n\nBug: webrtc:510487699\nChange-Id: I7dd7db0f76047d9f741d8280e0adfb4206fdbd5b\nReviewed-on: https://webrtc-review.googlesource.com/c/src/+/471140\nCommit-Queue: Tomas Gunnarsson \u003ctommi@webrtc.org\u003e\nReviewed-by: Danil Chapovalov \u003cdanilchap@webrtc.org\u003e\nCr-Commit-Position: refs/heads/main@{#47669}\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c8a4e1acb85bf0d3f45f164c62c228b20c140f08",
      "old_mode": 33188,
      "old_path": "pc/data_channel_controller.cc",
      "new_id": "3ce3c26a26b86b0b2e0b81cf7443216e27babdbf",
      "new_mode": 33188,
      "new_path": "pc/data_channel_controller.cc"
    },
    {
      "type": "modify",
      "old_id": "57f7e847271079fa1f4d06f3a9138be5172f6f7a",
      "old_mode": 33188,
      "old_path": "pc/rtc_stats_collector_unittest.cc",
      "new_id": "988329338e0a4ced10e594d3784463a83b36179b",
      "new_mode": 33188,
      "new_path": "pc/rtc_stats_collector_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "6d7305aadbb72c2d03c3bda45e83fab9038616e7",
      "old_mode": 33188,
      "old_path": "pc/sctp_data_channel.cc",
      "new_id": "12dcbf194aa3211265dc3e34fc0d7a181f872d09",
      "new_mode": 33188,
      "new_path": "pc/sctp_data_channel.cc"
    },
    {
      "type": "modify",
      "old_id": "693661b0ba994df0b7ac677e394eaf8c57c9beed",
      "old_mode": 33188,
      "old_path": "pc/sctp_data_channel.h",
      "new_id": "70280226bd4df4bed38ee5a641bbb5b04a7a71b2",
      "new_mode": 33188,
      "new_path": "pc/sctp_data_channel.h"
    },
    {
      "type": "modify",
      "old_id": "c4e30ee0b658928c4adb1ed5cf5ca5d76ffa32f4",
      "old_mode": 33188,
      "old_path": "pc/sctp_data_channel_unittest.cc",
      "new_id": "1223f9e540664508ee6a10d14d11db5f97094849",
      "new_mode": 33188,
      "new_path": "pc/sctp_data_channel_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "f6368a5c032c7531ec4c3e60eeb25fb369f4eb2e",
      "old_mode": 33188,
      "old_path": "pc/test/fake_data_channel_controller.h",
      "new_id": "c003f4abf85053bced7876bed102607f3855a9fe",
      "new_mode": 33188,
      "new_path": "pc/test/fake_data_channel_controller.h"
    },
    {
      "type": "modify",
      "old_id": "0de9786b99d7388fe410fa2fa8544013c7d575ec",
      "old_mode": 33188,
      "old_path": "pc/test/fake_peer_connection_for_stats.h",
      "new_id": "18fce8503aec1f3df490abb7a216d3548e4209e9",
      "new_mode": 33188,
      "new_path": "pc/test/fake_peer_connection_for_stats.h"
    },
    {
      "type": "modify",
      "old_id": "f2822cb6e27194f09163231243f4b27735ac7eef",
      "old_mode": 33188,
      "old_path": "pc/test/mock_data_channel.h",
      "new_id": "fdc554cfdffb838bf7ca5cfb6fc59734a58fbc10",
      "new_mode": 33188,
      "new_path": "pc/test/mock_data_channel.h"
    }
  ]
}
