)]}'
{
  "commit": "4f8a58c3d2e1fa5fcf7dc7f07bd89ad428fb09f0",
  "tree": "1f947d939c3bcf9951ea14f906eb941fc522dc03",
  "parents": [
    "4f19950660da9ae61ad9931b0d9b68ee102b7849"
  ],
  "author": {
    "name": "Tomas Gunnarsson",
    "email": "tommi@webrtc.org",
    "time": "Wed Jan 19 10:36:23 2022"
  },
  "committer": {
    "name": "WebRTC LUCI CQ",
    "email": "webrtc-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Wed Jan 19 12:17:47 2022"
  },
  "message": "Remove 2 Invokes to the network thread when creating a channel.\n\n...and one when destroying a channel object.\n\nThis CL removes Init_n() and Deinit_n() from the BaseChannel class.\nChannel classes now use SetRtpTransport to do initialization and\nuninitialization on the network thread.\n\nNotably if an implementation has called SetRtpTransport() with a valid\ntransport pointer, it is required that SetRtpTransport be called again\nwith a nullptr before the channel object can be deleted.\n\nIn situations where multiple channels are created, this can mean\na substantial reduction in thread hops. We still hop to the worker\nin order to construct the objects - this can probably be avoided\nand SetChannel() is still a synchronous operation for the transceivers.\nFurthermore, teardown of channel objects also still happens\nsynchronously and across network/worker/signaling threads.\n\nBug: webrtc:11992\nChange-Id: I68ca7596e181fc82996e3e290733d97381aa5e78\nReviewed-on: https://webrtc-review.googlesource.com/c/src/+/246740\nReviewed-by: Harald Alvestrand \u003chta@webrtc.org\u003e\nCommit-Queue: Tomas Gunnarsson \u003ctommi@webrtc.org\u003e\nCr-Commit-Position: refs/heads/main@{#35738}\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "fa1cddf1d93b6fb6e22df0b77849ccd74672a3f4",
      "old_mode": 33188,
      "old_path": "pc/channel.cc",
      "new_id": "dac0cbcf68a3bd801a92c0e4c7208049ec1f5544",
      "new_mode": 33188,
      "new_path": "pc/channel.cc"
    },
    {
      "type": "modify",
      "old_id": "7d7aeb6aeab5e5868a6a911cc0f481e1152e9426",
      "old_mode": 33188,
      "old_path": "pc/channel.h",
      "new_id": "fd5495c152de64c49b9929a80a9dd987f69180b1",
      "new_mode": 33188,
      "new_path": "pc/channel.h"
    },
    {
      "type": "modify",
      "old_id": "7f1cd982a49ff1e621e770658e79ba3ae621fb50",
      "old_mode": 33188,
      "old_path": "pc/channel_manager.cc",
      "new_id": "304283eca4ae7e983cd5dc08a6ed580da46ea1ef",
      "new_mode": 33188,
      "new_path": "pc/channel_manager.cc"
    },
    {
      "type": "modify",
      "old_id": "43fa27935f263269513e64faebb982b5c911659e",
      "old_mode": 33188,
      "old_path": "pc/channel_manager.h",
      "new_id": "0952099e824e61ade8a2b06202c38572af0d5a32",
      "new_mode": 33188,
      "new_path": "pc/channel_manager.h"
    },
    {
      "type": "modify",
      "old_id": "88de1f6a48c6daef86e838619c2557acfd88ced5",
      "old_mode": 33188,
      "old_path": "pc/channel_manager_unittest.cc",
      "new_id": "80f30c1c71f9283fccefcaafc8dc402e2b47286b",
      "new_mode": 33188,
      "new_path": "pc/channel_manager_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "42497b86df405a46f2a934ee425377faeec8ae02",
      "old_mode": 33188,
      "old_path": "pc/channel_unittest.cc",
      "new_id": "0a12a7fed0f1f9f07ed791932223c0c5bfd072a2",
      "new_mode": 33188,
      "new_path": "pc/channel_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "8043dd0d5c263091d21750e8b2bc2f3e3ed7e391",
      "old_mode": 33188,
      "old_path": "pc/rtp_sender_receiver_unittest.cc",
      "new_id": "612762248253d9700384fe19182f817ce8cfe6b0",
      "new_mode": 33188,
      "new_path": "pc/rtp_sender_receiver_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "25ae8043ecd53fc888a0a698adf313b4bb722570",
      "old_mode": 33188,
      "old_path": "pc/rtp_transceiver.cc",
      "new_id": "e152d76bf5fa394962fa689c9a75682a70b77441",
      "new_mode": 33188,
      "new_path": "pc/rtp_transceiver.cc"
    },
    {
      "type": "modify",
      "old_id": "c995329273713ff695cc75172ba7c19101b712f2",
      "old_mode": 33188,
      "old_path": "pc/rtp_transceiver.h",
      "new_id": "b8dbb677dd55eeb21b010ac9d00fde6330e5b631",
      "new_mode": 33188,
      "new_path": "pc/rtp_transceiver.h"
    },
    {
      "type": "modify",
      "old_id": "35d9265e03896d96a75c4fe8628dd05b65f97f29",
      "old_mode": 33188,
      "old_path": "pc/rtp_transceiver_unittest.cc",
      "new_id": "a1a2a197fb6b2b9390fb30cad2fa77499dcf0156",
      "new_mode": 33188,
      "new_path": "pc/rtp_transceiver_unittest.cc"
    },
    {
      "type": "modify",
      "old_id": "4ab336c19f81d7c8bca680ada51e5547dc13b632",
      "old_mode": 33188,
      "old_path": "pc/sdp_offer_answer.cc",
      "new_id": "ea1c4c4d23c700c91dbf61d471afad67ffcb7df3",
      "new_mode": 33188,
      "new_path": "pc/sdp_offer_answer.cc"
    },
    {
      "type": "modify",
      "old_id": "5a9bc5d7c02ce2185aa2e307d63d53c6b2abcb9e",
      "old_mode": 33188,
      "old_path": "pc/test/fake_peer_connection_for_stats.h",
      "new_id": "877949d2e01b819d0a8535fb40a1986b8ebbf271",
      "new_mode": 33188,
      "new_path": "pc/test/fake_peer_connection_for_stats.h"
    }
  ]
}
