It's not possible to enable it for the rtc_base_approved
target but since a larger refactoring is ongoing for webrtc/base
this CL doesn't attempt to fix that.
Changes made:
* Move webrtc/system_wrappers/include/stringize_macros.h into
webrtc/base:rtc_base_approved_unittests (and corresponding
unit test to rtc_base_approved_unittests).
* Move md5digest.* from rtc_base_approved to rtc_base_test_utils target.
* Move webrtc/system_wrappers/include/stringize_macros.h (+test) into
webrtc/base.
* Remove unused use include of webrtc/base/fileutils.h in
webrtc/base/pathutils.cc
BUG=webrtc:6828, webrtc:3806, webrtc:7480
NOTRY=True
Review-Url: https://codereview.webrtc.org/2717083002
Cr-Commit-Position: refs/heads/master@{#17766}
Reason for revert:
Fix bug in original CL.
Original issue's description:
> Revert of Android Logging.java: Load native library only when needed (patchset #3 id:40001 of https://codereview.webrtc.org/2803203002/ )
>
> Reason for revert:
> Breaks C++ logs in Java apps.
>
> Original issue's description:
> > Android Logging.java: Load native library only when needed
> >
> > Logging.java currently always tries to load jingle_peerconnection_so in
> > the static section, but some clients don't want to use it. This CL loads
> > jingle_peerconnection_so only when a client requests it by calling one
> > of:
> > * Logging.enableLogThreads
> > * Logging.enableLogTimeStamps
> > * Logging.enableTracing
> > * Logging.enableLogToDebugOutput
> >
> > BUG=b/36410678
> >
> > Review-Url: https://codereview.webrtc.org/2803203002
> > Cr-Commit-Position: refs/heads/master@{#17647}
> > Committed: dee5eb14e1
>
> TBR=sakal@webrtc.org,glaznev@webrtc.org,noahric@chromium.org,magjed@webrtc.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=b/36410678
>
> Review-Url: https://codereview.webrtc.org/2816753002
> Cr-Commit-Position: refs/heads/master@{#17676}
> Committed: 6e4a4427dcTBR=sakal@webrtc.org,glaznev@webrtc.org,noahric@chromium.org,brandtr@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=b/36410678
Review-Url: https://codereview.webrtc.org/2817593003
Cr-Commit-Position: refs/heads/master@{#17677}
Reason for revert:
Breaks C++ logs in Java apps.
Original issue's description:
> Android Logging.java: Load native library only when needed
>
> Logging.java currently always tries to load jingle_peerconnection_so in
> the static section, but some clients don't want to use it. This CL loads
> jingle_peerconnection_so only when a client requests it by calling one
> of:
> * Logging.enableLogThreads
> * Logging.enableLogTimeStamps
> * Logging.enableTracing
> * Logging.enableLogToDebugOutput
>
> BUG=b/36410678
>
> Review-Url: https://codereview.webrtc.org/2803203002
> Cr-Commit-Position: refs/heads/master@{#17647}
> Committed: dee5eb14e1TBR=sakal@webrtc.org,glaznev@webrtc.org,noahric@chromium.org,magjed@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=b/36410678
Review-Url: https://codereview.webrtc.org/2816753002
Cr-Commit-Position: refs/heads/master@{#17676}
Logging.java currently always tries to load jingle_peerconnection_so in
the static section, but some clients don't want to use it. This CL loads
jingle_peerconnection_so only when a client requests it by calling one
of:
* Logging.enableLogThreads
* Logging.enableLogTimeStamps
* Logging.enableTracing
* Logging.enableLogToDebugOutput
BUG=b/36410678
Review-Url: https://codereview.webrtc.org/2803203002
Cr-Commit-Position: refs/heads/master@{#17647}
Because it's easy and generally useful, and because a later CL in this
series needs it.
BUG=webrtc:7459
Review-Url: https://codereview.webrtc.org/2808603002
Cr-Commit-Position: refs/heads/master@{#17633}
Reason for revert:
Deleting scopedptrcollection.h broke an internal project.
Original issue's description:
> Delete class ScopedPtrCollection. Replaced with vector of unique_ptr.
>
> BUG=None
>
> Review-Url: https://codereview.webrtc.org/2808463002
> Cr-Commit-Position: refs/heads/master@{#17605}
> Committed: 188596f20fTBR=pthatcher@webrtc.org,kwiberg@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=None
Review-Url: https://codereview.webrtc.org/2812553002
Cr-Commit-Position: refs/heads/master@{#17607}
Reason for revert:
Trying to re-land after solving some related issues.
There are no changes compared to the original CL.
Original issue's description:
> Revert of Loosening the coupling between WebRTC and //third_party/protobuf (patchset #16 id:300001 of https://codereview.webrtc.org/2747863003/ )
>
> Reason for revert:
> I will try to reland next week because it is causing some problems.
>
> Original issue's description:
> > To accommodate some downstream WebRTC users we need to loosen
> > the coupling between our code and the //third_party/protobuf.
> >
> > This includes using typedefs to define strings instead of
> > assuming std::string.
> >
> > After this refactoring it will be possible to link with other
> > protobuf implementations than the current one.
> >
> > We moved the PRESUBMIT check to another CL [1]. The goal of this
> > presubmit is to avoid the direct usage of google::protobuf outside
> > of the webrtc/base/protobuf_utils.h header file.
> >
> > [1] - https://codereview.webrtc.org/2753823003/
> >
> > BUG=webrtc:7340
> > NOTRY=True
> >
> > Review-Url: https://codereview.webrtc.org/2747863003
> > Cr-Commit-Position: refs/heads/master@{#17466}
> > Committed: 16ab93b952
>
> TBR=kjellander@webrtc.org,henrik.lundin@webrtc.org,kwiberg@webrtc.org,michaelt@webrtc.org,peah@webrtc.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=webrtc:7340
>
> Review-Url: https://codereview.webrtc.org/2786363002
> Cr-Commit-Position: refs/heads/master@{#17483}
> Committed: d00aad5eb2TBR=kjellander@webrtc.org,henrik.lundin@webrtc.org,kwiberg@webrtc.org,michaelt@webrtc.org,peah@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:7340
NOTRY=True
Review-Url: https://codereview.webrtc.org/2791963003
Cr-Commit-Position: refs/heads/master@{#17584}
Because on gcc, cast to void doesn't silence the warning. See
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66425
Also add an RTC_ prefix to the macro instead of only defining it if it
wasn't already defined, to ensure that we always get our own version.
BUG=none
Review-Url: https://codereview.webrtc.org/2797983003
Cr-Commit-Position: refs/heads/master@{#17563}
They provide parsing of numbers from char* and std::string into any of
the fundamental integer types. Values are returned
in an rtc::Optional, which is left empty if parsing was unsuccessful.
BUG=webrtc:5806
Review-Url: https://codereview.webrtc.org/2696003004
Cr-Commit-Position: refs/heads/master@{#17557}
I can't believe it's been this long before I found out we didn't have
them...
BUG=none
Review-Url: https://codereview.webrtc.org/2804673002
Cr-Commit-Position: refs/heads/master@{#17544}
Reason for revert:
I will try to reland next week because it is causing some problems.
Original issue's description:
> To accommodate some downstream WebRTC users we need to loosen
> the coupling between our code and the //third_party/protobuf.
>
> This includes using typedefs to define strings instead of
> assuming std::string.
>
> After this refactoring it will be possible to link with other
> protobuf implementations than the current one.
>
> We moved the PRESUBMIT check to another CL [1]. The goal of this
> presubmit is to avoid the direct usage of google::protobuf outside
> of the webrtc/base/protobuf_utils.h header file.
>
> [1] - https://codereview.webrtc.org/2753823003/
>
> BUG=webrtc:7340
> NOTRY=True
>
> Review-Url: https://codereview.webrtc.org/2747863003
> Cr-Commit-Position: refs/heads/master@{#17466}
> Committed: 16ab93b952TBR=kjellander@webrtc.org,henrik.lundin@webrtc.org,kwiberg@webrtc.org,michaelt@webrtc.org,peah@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:7340
Review-Url: https://codereview.webrtc.org/2786363002
Cr-Commit-Position: refs/heads/master@{#17483}
Reason for revert:
The problem with the internal project has been solved according to mbonadei@
Original issue's description:
> Revert of Reland: Use native (optimized) functions for byte order conversion. (patchset #5 id:80001 of https://codereview.webrtc.org/2751403003/ )
>
> Reason for revert:
> Breaks internal project.
>
> Original issue's description:
> > Reland: Use native (optimized) functions for byte order conversion.
> >
> > Instead of manually copying single bytes, the native functions like "htobe32"
> > are used.
> >
> > The previous CL https://codereview.webrtc.org/2738063005/ got reverted in
> > https://codereview.webrtc.org/2757703002/
> >
> > Reland with the compilation errors fixed.
> >
> > BUG=None
> >
> > Review-Url: https://codereview.webrtc.org/2751403003
> > Cr-Commit-Position: refs/heads/master@{#17280}
> > Committed: c8a4c1f24c
>
> TBR=tommi@webrtc.org,jbauch@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=None
>
> Review-Url: https://codereview.webrtc.org/2755103002
> Cr-Commit-Position: refs/heads/master@{#17282}
> Committed: 44122bd0f9TBR=tommi@webrtc.org,kthelgason@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=None
Review-Url: https://codereview.webrtc.org/2786993003
Cr-Commit-Position: refs/heads/master@{#17479}
the coupling between our code and the //third_party/protobuf.
This includes using typedefs to define strings instead of
assuming std::string.
After this refactoring it will be possible to link with other
protobuf implementations than the current one.
We moved the PRESUBMIT check to another CL [1]. The goal of this
presubmit is to avoid the direct usage of google::protobuf outside
of the webrtc/base/protobuf_utils.h header file.
[1] - https://codereview.webrtc.org/2753823003/
BUG=webrtc:7340
NOTRY=True
Review-Url: https://codereview.webrtc.org/2747863003
Cr-Commit-Position: refs/heads/master@{#17466}
Due to quirks of the Cocoa runtime several platform-specific fixes were
in place. See the deleted files maccocoathreadhelper and
scoped_autorelease_pool for examples. There is no way to do a stack-based
RAII autoreleasepool that is compatible with ARC, and autoreleasepool
blocks can't be used with c++. The solution was to separate out the
implementation of some methods in thread.h to an ObjC++ file for Darwin
platforms, allowing us to get rid of the helper classes and enable ARC
everywhere.
BUG=webrtc:6412
Review-Url: https://codereview.webrtc.org/2784483002
Cr-Commit-Position: refs/heads/master@{#17436}
Only use of this method was to implement the cross-device case of
MoveFile on unix systems.
In turn, only use of the MoveFile method is in
FileRotatingStream::RotateFiles. Since file rotation should never
involve any copying of log data, the MoveFile fallback to copying can
be deleted.
BUG=webrtc:6424
Review-Url: https://codereview.webrtc.org/2747373003
Cr-Commit-Position: refs/heads/master@{#17364}
This DCHECK is for the 'new and improved' way of setting thread priority.
What could happen is that code that's migrating over to the new method
might still have a lingering SetPriority call, that could incorrectly bind the
'spawned_thread_checker_' to the construction thread.
BUG=none
Review-Url: https://codereview.webrtc.org/2753423002
Cr-Commit-Position: refs/heads/master@{#17305}
Reason for revert:
Breaks internal project.
Original issue's description:
> Reland: Use native (optimized) functions for byte order conversion.
>
> Instead of manually copying single bytes, the native functions like "htobe32"
> are used.
>
> The previous CL https://codereview.webrtc.org/2738063005/ got reverted in
> https://codereview.webrtc.org/2757703002/
>
> Reland with the compilation errors fixed.
>
> BUG=None
>
> Review-Url: https://codereview.webrtc.org/2751403003
> Cr-Commit-Position: refs/heads/master@{#17280}
> Committed: c8a4c1f24cTBR=tommi@webrtc.org,jbauch@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=None
Review-Url: https://codereview.webrtc.org/2755103002
Cr-Commit-Position: refs/heads/master@{#17282}
Reason for revert:
Breaks Chromium FYI bots:
http://build.chromium.org/p/chromium.webrtc.fyi/builders/Mac%20Builder/builds/22469http://build.chromium.org/p/chromium.webrtc.fyi/builders/Linux%20Builder/builds/14885
FAILED: newlib_pnacl/obj/third_party/webrtc/base/rtc_base/networkmonitor.o
/b/c/goma_client/gomacc ../../native_client/toolchain/linux_x86/pnacl_newlib/bin/pnacl-clang++ -MMD -MF newlib_pnacl/obj/third_party/webrtc/base/rtc_base/networkmonitor.o.d -DNACL_TC_REV=62bfd122aee87d4eb4a7876950e18c793c626cd0 -Dtimezone=_timezone -DV8_DEPRECATION_WARNINGS -DUSE_OPENSSL_CERTS=1 -DNO_TCMALLOC -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DENABLE_MEDIA_ROUTER=1 -DFIELDTRIAL_TESTING_ENABLED -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DNDEBUG -DNVALGRIND -DWEBRTC_RESTRICT_LOGGING -DEXPAT_RELATIVE_PATH -DHAVE_SCTP -DENABLE_EXTERNAL_AUTH -DHAVE_WEBRTC_VIDEO -DHAVE_WEBRTC_VOICE -DLOGGING_INSIDE_WEBRTC -DUSE_WEBRTC_DEV_BRANCH -DFEATURE_ENABLE_VOICEMAIL -DEXPAT_RELATIVE_PATH -DGTEST_RELATIVE_PATH -DNO_MAIN_THREAD_WRAPPING -DNO_SOUND_SYSTEM -DWEBRTC_CHROMIUM_BUILD -DWEBRTC_POSIX -DNO_MAIN_THREAD_WRAPPING -I../../third_party/boringssl/src/include -I../.. -Inewlib_pnacl/gen -I../../third_party/webrtc_overrides -I../../third_party -I../../third_party/boringssl/src/include -I../../native_client_sdk/src/libraries -I../../native_client_sdk/src/libraries/nacl_io/include -I../../native_client_sdk/src/libraries/third_party/newlib-extras -Wno-uninitialized -fno-strict-aliasing -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -fcolor-diagnostics -O2 -fno-ident -fdata-sections -ffunction-sections -g0 -fvisibility=hidden -Werror -Wno-unused-variable -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-deprecated-register -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -fvisibility-inlines-hidden -std=gnu++11 -fno-rtti -fno-exceptions -c ../../third_party/webrtc/base/networkmonitor.cc -o newlib_pnacl/obj/third_party/webrtc/base/rtc_base/networkmonitor.o
In file included from ../../third_party/webrtc/base/networkmonitor.cc:11:
In file included from ../../third_party/webrtc/base/networkmonitor.h:16:
In file included from ../../third_party/webrtc/base/thread.h:25:
In file included from ../../third_party/webrtc/base/messagequeue.h:31:
In file included from ../../third_party/webrtc/base/socketserver.h:15:
In file included from ../../third_party/webrtc/base/socketfactory.h:14:
In file included from ../../third_party/webrtc/base/socket.h:30:
In file included from ../../third_party/webrtc/base/socketaddress.h:18:
In file included from ../../third_party/webrtc/base/ipaddress.h:29:
../../third_party/webrtc/base/byteorder.h:37:10: fatal error: 'endian.h' file not found
#include <endian.h>
^
1 error generated.
Original issue's description:
> Use native (optimized) functions for byte order conversion.
>
> Instead of manually copying single bytes, the native functions like "htobe32"
> are used.
>
> BUG=None
>
> Review-Url: https://codereview.webrtc.org/2738063005
> Cr-Commit-Position: refs/heads/master@{#17277}
> Committed: 38fd44e51cTBR=tommi@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=None
Review-Url: https://codereview.webrtc.org/2757703002
Cr-Commit-Position: refs/heads/master@{#17278}
Instead of manually copying single bytes, the native functions like "htobe32"
are used.
BUG=None
Review-Url: https://codereview.webrtc.org/2738063005
Cr-Commit-Position: refs/heads/master@{#17277}
Reason for revert:
CryptString usage is now deleted in Chrome, see cl https://codereview.chromium.org/2738973004/
Original issue's description:
> Revert of Delete cryptstring.h and cryptstring.cc. (patchset #1 id:1 of https://codereview.webrtc.org/2740633003/ )
>
> Reason for revert:
> It turns out cryptstring was used by Chrome. In the xmpp code recently moved there from webrtc.
>
> So this code has to be moved too, it canät just be deleted.
>
> Original issue's description:
> > Delete cryptstring.h and cryptstring.cc.
> >
> > They became unused with cl https://codereview.webrtc.org/2731673002/
> >
> > BUG=webrtc:6424
> >
> > Review-Url: https://codereview.webrtc.org/2740633003
> > Cr-Commit-Position: refs/heads/master@{#17128}
> > Committed: 822638b481
>
> TBR=pthatcher@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:6424
>
> Review-Url: https://codereview.webrtc.org/2742743002
> Cr-Commit-Position: refs/heads/master@{#17130}
> Committed: d665207601TBR=pthatcher@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6424
Review-Url: https://codereview.webrtc.org/2745523004
Cr-Commit-Position: refs/heads/master@{#17160}
The function signature expects to return a "bool" but in one code path it
returned "0".
BUG=None
Review-Url: https://codereview.webrtc.org/2742893002
Cr-Commit-Position: refs/heads/master@{#17156}
Reason for revert:
It turns out cryptstring was used by Chrome. In the xmpp code recently moved there from webrtc.
So this code has to be moved too, it canät just be deleted.
Original issue's description:
> Delete cryptstring.h and cryptstring.cc.
>
> They became unused with cl https://codereview.webrtc.org/2731673002/
>
> BUG=webrtc:6424
>
> Review-Url: https://codereview.webrtc.org/2740633003
> Cr-Commit-Position: refs/heads/master@{#17128}
> Committed: 822638b481TBR=pthatcher@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6424
Review-Url: https://codereview.webrtc.org/2742743002
Cr-Commit-Position: refs/heads/master@{#17130}
Reason for revert:
I had missed updating a few of Chrome's #includes, breaking the build.
Original issue's description:
> Delete unused TaskRunner abstraction.
>
> This is the fifth and final step in the process started in cl https://codereview.webrtc.org/2696703009/
>
> Depends on the landing of a copy of this code in Chrome (step 4), cl
> https://codereview.chromium.org/2694903005/
>
> BUG=webrtc:6424
>
> Review-Url: https://codereview.webrtc.org/2622923002
> Cr-Commit-Position: refs/heads/master@{#17107}
> Committed: 2d15fdd91bTBR=pthatcher@webrtc.org,kjellander@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:6424
Review-Url: https://codereview.webrtc.org/2732363004
Cr-Commit-Position: refs/heads/master@{#17109}
Pointer was already protected by a critical section in two places but
not the third. Added thread annotations to prevent this from happening
in the future.
BUG=None
Review-Url: https://codereview.webrtc.org/2726263004
Cr-Commit-Position: refs/heads/master@{#17017}
This isn't used any more so there's no point in maintaining it.
BUG=None
Review-Url: https://codereview.webrtc.org/2731673002
Cr-Commit-Position: refs/heads/master@{#17016}
Hopefully this will reduce the flakiness of PostDelayedTask.
BUG=none
Review-Url: https://codereview.webrtc.org/2728663008
Cr-Commit-Position: refs/heads/master@{#17001}
This adds a simple mechanism that provides protection against
implementations that use the legacy callback type in PlatformThread
and are prone to entering a busy loop.
Enabled only in DCHECK enabled builds.
BUG=webrtc:7187
Review-Url: https://codereview.webrtc.org/2720223003
Cr-Commit-Position: refs/heads/master@{#16973}
It's the faster, less strict cousin of checked_cast.
BUG=none
Review-Url: https://codereview.webrtc.org/2714063002
Cr-Commit-Position: refs/heads/master@{#16958}
Reason for revert:
breaks linux_ubsan bots.
Original issue's description:
> Reland of Use sched_yield on all POSIX platforms in PlatformThread. (patchset #1 id:1 of https://codereview.webrtc.org/2712133003/ )
>
> Reason for revert:
> Relanding - using sched_yield() in PlatformThread on all posix platforms.
>
> Original issue's description:
> > Revert of Use sched_yield on all POSIX platforms in PlatformThread. (patchset #1 id:1 of https://codereview.webrtc.org/2716683002/ )
> >
> > Reason for revert:
> > Reverting this change since it didn't affect the perf regressions we were seeing and actually seems to have caused more regressions as per comment in the bug.
> >
> > Original issue's description:
> > > Use sched_yield on all POSIX platforms in PlatformThread.
> > > (not only MacOS)
> > >
> > > This is a test to see if perf regressions we're seeing may be related to the use of nanosleep().
> > >
> > > BUG=695438
> > > TBR=solenberg@webrtc.org
> > >
> > > Review-Url: https://codereview.webrtc.org/2716683002 .
> > > Cr-Commit-Position: refs/heads/master@{#16807}
> > > Committed: 384498abb5
> >
> > TBR=solenberg@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=695438
> >
> > Review-Url: https://codereview.webrtc.org/2712133003
> > Cr-Commit-Position: refs/heads/master@{#16833}
> > Committed: 3ba1a8cd1b
>
> TBR=solenberg@webrtc.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=695438
>
> Review-Url: https://codereview.webrtc.org/2725573002
> Cr-Commit-Position: refs/heads/master@{#16899}
> Committed: 4974df4183TBR=solenberg@webrtc.org,tommi@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=695438
Review-Url: https://codereview.webrtc.org/2721893002
Cr-Commit-Position: refs/heads/master@{#16903}