| commit | c33e4910c5dba2ba51eb95789d885f3eeb7e3d70 | [log] [tgz] |
|---|---|---|
| author | Yves Gerey <yvesg@webrtc.org> | Thu Jan 02 20:17:38 2020 |
| committer | Commit Bot <commit-bot@chromium.org> | Tue Jan 07 04:18:51 2020 |
| tree | b35ae0912ed99bcc25c49f267022e1aa3643c9e1 | |
| parent | e8d54b924d13b27a84b919d0b6a0a16cfe0bd844 [diff] |
Prevent 'use after free' by waiting for all queued tasks to be processed.
Sometimes, a task bound to VideoSendStreamTest was called
after the underlying object had been destructed:
1. |test| goes out of scope.
2. There might still have been a task in fixture's queue,
setup by OnSendRtp (capturing [this]) and invoked before
the destruction of the fixture.
This CL uses the same workaround than BandwidthStatsTest:
block until all posted tasks are processed.
This fixes the following flaky tests:
* VideoSendStreamTest.ChangingNetworkRoute
* VideoSendStreamTest.RespectsMinTransmitBitrate*
Bug: webrtc:11156
Change-Id: I229c96d2abbbb60b43e9d9f62ad112507a21fe48
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/163984
Reviewed-by: Niels Moller <nisse@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Yves Gerey <yvesg@google.com>
Cr-Commit-Position: refs/heads/master@{#30152}
WebRTC is a free, open software project that provides browsers and mobile applications with Real-Time Communications (RTC) capabilities via simple APIs. The WebRTC components have been optimized to best serve this purpose.
Our mission: To enable rich, high-quality RTC applications to be developed for the browser, mobile platforms, and IoT devices, and allow them all to communicate via a common set of protocols.
The WebRTC initiative is a project supported by Google, Mozilla and Opera, amongst others.
See http://www.webrtc.org/native-code/development for instructions on how to get started developing with the native code.
Authoritative list of directories that contain the native API header files.