Also removes all virtual methods. Permits using a thread from
rtc_base_approved (namely event tracing).
BUG=webrtc:5158
R=tommi@webrtc.org
Review URL: https://codereview.webrtc.org/1469013002
Cr-Commit-Position: refs/heads/master@{#10760}
Used for tests that cannot be run in parallel due to using non-virtual
resources such as filesystems and sockets. Initially moves socket
unittests from rtc_unittest since
PhysicalSocketTest.TestUdpReadyToSendIPv4 is one of the worst flake
offenders.
Future prospect targets are GTEST_DEATH tests that are flaky on Mac in
parallel for instance.
BUG=chromium:445880
R=kjellander@webrtc.org
Review URL: https://codereview.webrtc.org/1426643003 .
Cr-Commit-Position: refs/heads/master@{#10446}
The main intended use case is as a function argument, replacing the
harder-to-read and harder-to-use separate pointer and size arguments.
It's easier to read because it's just one argument instead of two, and
with clearly defined semantics; it's easier to use because it has
iterators, and will automatically figure out the size of arrays.
BUG=webrtc:5028
R=andrew@webrtc.org, solenberg@webrtc.org
Review URL: https://codereview.webrtc.org/1408403002 .
Cr-Commit-Position: refs/heads/master@{#10415}
It's a simple std::experimental::optional-wannabe. For simplicity and
portability, it still secretly contains a (default-constructed) T when
it's supposedly empty. This restriction is fine for simple types.
One important application is for the return type of functions. For
example, a function which either returns a size_t or fails can return
rtc::Maybe<size_t>.
BUG=webrtc:5028
R=andrew@webrtc.org, mgraczyk@chromium.org
Review URL: https://codereview.webrtc.org/1413763003 .
Cr-Commit-Position: refs/heads/master@{#10353}
The current use of rtc::FifoBuffer can lead to reading across DTLS packet
boundaries which could cause packets to not being processed correctly.
This CL introduces the new class rtc::BufferQueue and changes the
StreamInterfaceChannel to use it instead of the rtc::FifoBuffer.
BUG=chromium:447431
R=juberti@google.com
Review URL: https://webrtc-codereview.appspot.com/52509004
Cr-Commit-Position: refs/heads/master@{#9254}
Provides a read-only interface for reading byte and bit-sized data from
an underlying buffer in network/big-endian order. Also provides a method
for reading exponential golomb encoded values, which will be useful in
H.264 packet parsing (separate CL).
BUG=
R=pthatcher@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/49719004
Cr-Commit-Position: refs/heads/master@{#9046}
During my work on setting up a GN build for
WebRTC, I discovered that the base.gyp is trying
to remove source files (for the Chromium build)
that are not added in the initial set.
I assume these files should be listed and that
GYP just doesn't complain when it's trying to
remove a file that is not present in the sources
list.
natserver_main.cc is also removed, since it's not used anywhere.
There are also a couple of other header files that are
used in other code that probably also should be listed in
base.gyp (please do this in another CL):
* compile_assert.h
* dscp.h
* move.h
* template_util.h
BUG=None
TEST=Trybots passing clobber compile step.
R=henrike@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/13659004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6438 4adac7df-926f-26a2-2b94-8c16560cd09d