They're just no-ops now, and will soon go away.
BUG=webrtc:5520
Review URL: https://codereview.webrtc.org/1914153002
Cr-Commit-Position: refs/heads/master@{#12510}
Any file that uses the RTC_DISALLOW_* macros should #include
"webrtc/base/constructormagic.h", but a shocking number of them don't.
This causes trouble when we try to wean files off of #including
scoped_ptr.h, since a bunch of files get their constructormagic macros
only from there.
Rather than fixing these errors one by one as they turn up, this CL
simply ensures that every file in the WebRTC tree that uses the
RTC_DISALLOW_* macros #includes "webrtc/base/constructormagic.h".
BUG=webrtc:5520
Review URL: https://codereview.webrtc.org/1917043005
Cr-Commit-Position: refs/heads/master@{#12509}
They can all benefit from moving, since they contain std::string and
std::vector. We intended to add these in
https://codereview.webrtc.org/1896953004/, but got compiler errors we
couldn't make sense of, so we skipped them. It turns out that what the
compiler was complaining about was that when we said we'd have a
user-defined move constructor, it stopped generating a copy assignment
operator for us. This CL solves the problem by outfitting the types
with defaulted copy and move assignment operators too.
Review URL: https://codereview.webrtc.org/1899173002
Cr-Commit-Position: refs/heads/master@{#12469}
Removed deprecated files, types and methods in modules/webrtc that were
kept there to avoid breaking chromium, and which are no longer needed.
BUG=172183
Review URL: https://codereview.webrtc.org/1909593002
Cr-Commit-Position: refs/heads/master@{#12457}
Reason for revert:
This is preventing a WebRTC roll into Chromium. See https://codereview.chromium.org/1877263003/
Original issue's description:
> Fix screen capturers to initialize on the same thread on which Start() is called.
>
> Previously screen capturers were initialized when they are created.
> This means that in the CRD host they were initialized on the thread
> that's different from the thread on which they are used. Because of this
> on Linux the host was using XErrorTrap() on two different threads and
> this is not supported. Now ScreenCapturer implementations always
> initialize themselves on the thread on which Start() is called.
>
> Also added ThreadChecker to make sure the capturers are always called
> from the same thread.
>
> BUG=600432
>
> Committed: https://crrev.com/e8d4b7d8a3d298438a2ebd9ee8d5aa71f42cf033
> Cr-Commit-Position: refs/heads/master@{#12285}
TBR=jamiewalch@chromium.org,sergeyu@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=600432
Review URL: https://codereview.webrtc.org/1882083002
Cr-Commit-Position: refs/heads/master@{#12334}
Previously screen capturers were initialized when they are created.
This means that in the CRD host they were initialized on the thread
that's different from the thread on which they are used. Because of this
on Linux the host was using XErrorTrap() on two different threads and
this is not supported. Now ScreenCapturer implementations always
initialize themselves on the thread on which Start() is called.
Also added ThreadChecker to make sure the capturers are always called
from the same thread.
BUG=600432
Review URL: https://codereview.webrtc.org/1861893002
Cr-Commit-Position: refs/heads/master@{#12285}
ScreenCapturerMac wasn't handling the following two cases properly
which could cause crashes:
1. CGDisplayCreateImage() returns image with depth other than 32-bit
2. CGDisplayCreateImage() returns image with dimensions different
from expected (e.g. when screen resolution is being changed).
I suspect that (2) was causing the linked bug.
BUG=crbug.com/504927
R=jiayl@webrtc.org
Review URL: https://codereview.webrtc.org/1816723002 .
Cr-Commit-Position: refs/heads/master@{#12077}
Removes code duplication and use of the dangerous public destructor in
RefCountImpl.
Also making wider use of scoped_refptr and fixing various leaks in the
process.
BUG=webrtc:5229
R=tommi@webrtc.org
Review URL: https://codereview.webrtc.org/1477013005 .
Cr-Commit-Position: refs/heads/master@{#12075}
Reason for revert:
The openmax_dl include change breaks downstream projects.
Original issue's description:
> Add check_deps rules in DEPS files.
>
> Add fine-grained check_deps rules for all of WebRTC.
> This will help both maintaining sane dependencies and provides a way
> to visualize dependency graphs using the buildtools/checkdeps/graphdeps.py script.
>
> Example:
> buildtools/checkdeps/graphdeps.py --root=. --format=png \
> --out=./webrtc.png --incl='^webrtc/modules/bitrate_controller->' \
> --excl='chromium|base|external|testing|webrtc/test|\.h$|\.cc$'
>
> will produce a neat webrtc.png image showcasing the dependencies
> (according to the DEPS file) for the bitrate_controller module.
> Some dependencies are filtered out for readability.
>
> BUG=webrtc:5623
> TESTED=Passing runs using:
> buildtools/checkdeps/checkdeps.py --root=. talk
> buildtools/checkdeps/checkdeps.py --root=. webrtc
>
> R=tommi@webrtc.org
>
> Committed: https://crrev.com/086f851b7b9b4bcbd4fe507c3bf83b760bd7f4d9
> Cr-Commit-Position: refs/heads/master@{#12008}
TBR=tommi@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5623
Review URL: https://codereview.webrtc.org/1808573002
Cr-Commit-Position: refs/heads/master@{#12009}
Add fine-grained check_deps rules for all of WebRTC.
This will help both maintaining sane dependencies and provides a way
to visualize dependency graphs using the buildtools/checkdeps/graphdeps.py script.
Example:
buildtools/checkdeps/graphdeps.py --root=. --format=png \
--out=./webrtc.png --incl='^webrtc/modules/bitrate_controller->' \
--excl='chromium|base|external|testing|webrtc/test|\.h$|\.cc$'
will produce a neat webrtc.png image showcasing the dependencies
(according to the DEPS file) for the bitrate_controller module.
Some dependencies are filtered out for readability.
BUG=webrtc:5623
TESTED=Passing runs using:
buildtools/checkdeps/checkdeps.py --root=. talk
buildtools/checkdeps/checkdeps.py --root=. webrtc
R=tommi@webrtc.org
Review URL: https://codereview.webrtc.org/1796413002 .
Cr-Commit-Position: refs/heads/master@{#12008}
Previously shared memory buffers for DesktopCapturer were created
using DesktopCapturer::Callback::CreateSharedBuffer(). That made it
difficult to proxy DesktopCapturer interface from one thread to another.
This CL adds SharedBufferFactory interface that's allowed to be called
on a background thread. This also simplifies clients that don't
need to use shared memory, as they no longer need to override
CreateSharedBuffer().
Review URL: https://codereview.webrtc.org/1678073003
Cr-Commit-Position: refs/heads/master@{#11543}
BUG=chromium:575990
TEST: Manual test using TextEdit full screen mode.
Review URL: https://codereview.webrtc.org/1579213007
Cr-Commit-Position: refs/heads/master@{#11311}
This removes a dependency on Chromium's build/build_config.h
(which is not allowed).
The added defines are identical to the ones in build/build_config.h.
NOTRY=True
Review URL: https://codereview.webrtc.org/1532333002
Cr-Commit-Position: refs/heads/master@{#11082}
We can now use std::move instead!
This CL leaves the Pass methods in place; a follow-up CL will add deprecation annotations to them.
Review URL: https://codereview.webrtc.org/1460043002
Cr-Commit-Position: refs/heads/master@{#11064}
Fixes one sign mismatch warning, and one "const has no effect and is
ignored" warning.
BUG=chromium:567877
Review URL: https://codereview.webrtc.org/1510233002
Cr-Commit-Position: refs/heads/master@{#10976}
Microsoft introduced modern app from win8. Modern apps can be used cross Microsoft's platforms.
It was confirmed from Microsoft that there is no support for modern app's window capture.
BUG=526883
Review URL: https://codereview.webrtc.org/1371383003
Cr-Commit-Position: refs/heads/master@{#10154}
We must remove dependency on Chromium, i.e. we can't use Chromium's base/logging.h. That means we need to define these macros in WebRTC also when doing Chromium builds. And this causes redefinition.
Alternative solutions:
* Check if we already have defined e.g. CHECK, and don't define them in that case. This makes us depend on include order in Chromium, which is not acceptable.
* Don't allow using the macros in WebRTC headers. Error prone since if someone adds it there by mistake it may compile fine, but later break if a header in added or order is changed in Chromium. That will be confusing and hard to enforce.
* Ensure that headers that are included by an embedder don't include our macros. This would require some heavy refactoring to be maintainable and enforcable.
* Changes in Chromium for this is obviously not an option.
BUG=chromium:468375
NOTRY=true
Review URL: https://codereview.webrtc.org/1335923002
Cr-Commit-Position: refs/heads/master@{#9964}
We must remove dependency on Chromium, i.e. we can't use Chromium's base/logging.h. That means we need to define these macros in WebRTC also when doing Chromium builds. And this causes redefinition.
* DISALLOW_ASSIGN -> RTC_DISALLOW_ASSIGN
* DISALLOW_COPY_AND_ASSIGN -> RTC_DISALLOW_COPY_AND_ASSIGN
* DISALLOW_IMPLICIT_CONSTRUCTORS -> RTC_DISALLOW_IMPLICIT_CONSTRUCTORS
Related CL: https://codereview.webrtc.org/1335923002/
BUG=chromium:468375
NOTRY=true
Review URL: https://codereview.webrtc.org/1345433002
Cr-Commit-Position: refs/heads/master@{#9953}
DesktopFrameWin::Create() may return nullptr when it fails to allocate
windows bitmap. ScreenCapturerWinGdi wasn't handling that case properly.
BUG=527660
Review URL: https://codereview.webrtc.org/1309143007
Cr-Commit-Position: refs/heads/master@{#9865}
Note: Regarding the ICMP6_CLOSE_FUNC variable in winping.cc,
Icmp6CloseHandle does not exist, and IcmpCloseHandle is the correct way
to close an IPv6 handle. Therefore the existing code is correct to use
close_ on both types of connections and this variable is unnecessary.
BUG=505319
Review URL: https://codereview.webrtc.org/1231653003
Cr-Commit-Position: refs/heads/master@{#9555}
Clang warns if there are missing braces around a subobject
initializer. The most common idiom that triggers this is:
STRUCT s = {0};
if the first field of STRUCT is itself a struct. This can
be more simply written as:
STRUCT s = {};
which also prevents the warning from firing.
Other instances of the warning have been fixed by adding
braces where appropriate.
BUG=505297
TBR=jiayl@webrtc.org
Review URL: https://codereview.webrtc.org/1216353002
Cr-Commit-Position: refs/heads/master@{#9529}
The SW_SHOWXXX values are not bitfields, so using "&" is incorrect.
BUG=none
TEST=Verify that Chrome's WebRTC window-capture feature can capture an unoccluded, non-maximized window correctly under Windows 8 or above.
R=wez@chromium.org
Review URL: https://codereview.webrtc.org/1180673009
Cr-Commit-Position: refs/heads/master@{#9421}
Add pylintrc file based on
https://code.google.com/p/chromium/codesearch#chromium/src/tools/perf/pylintrc
bit tightened up quite a bit (the one in depot_tools is far
more relaxed).
Remove a few excluded directories from pylint check and fixed/
suppressed all warnings generated.
Add GN format check + formatted all GN files using 'gn format'.
Cleanup redundant rules in tools/PRESUBMIT.py
TESTED=Ran 'git cl presubmit -vv', fixed the PyLint violations.
Ran it again with a modification in webrtc/build/webrtc.gni, formatted
all the GN files and ran it again.
R=henrika@webrtc.org, phoglund@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/50069004
Cr-Commit-Position: refs/heads/master@{#9274}
When compiling against an OSX 10.7+ SDK, explicitly redeclare methods only
available from an OSX 10.7+ SDK. This suppresses the clang warning
-Wpartial-availability, which will be turned on in the future.
BUG=chromium:471823
R=jiayl@webrtc.org, mark@chromium.org
Review URL: https://webrtc-codereview.appspot.com/44359004
Cr-Commit-Position: refs/heads/master@{#9163}
Clang version changed 223108:230914
Details: e144d30..6fdb142/tools/clang/scripts/update.sh
Removes the OVERRIDE macro defined in:
* webrtc/base/common.h
* webrtc/typedefs.h
The majority of the source changes were done by running this in src/:
perl -0pi -e "s/virtual\s([^({;]*(\([^({;]*\)[^({;]*))(OVERRIDE|override)/\1override/sg" `find {talk,webrtc} -name "*.h" -o -name "*.cc*" -o -name "*.mm*"`
which converted all:
virtual Foo() OVERRIDE
functions to:
Foo() override
Then I manually edited:
* talk/media/webrtc/fakewebrtccommon.h
* webrtc/test/fake_common.h
Remaining uses of OVERRIDE was fixed by search+replace.
Manual edits were done to fix virtual destructors that were
overriding inherited ones.
Finally a build error related to the pure virtual definitions of
Read, Write and Rewind in common_types.h required a bit of
refactoring in:
* webrtc/common_types.cc
* webrtc/common_types.h
* webrtc/system_wrappers/interface/file_wrapper.h
* webrtc/system_wrappers/source/file_impl.cc
This roll should make it possible for us to finally re-enable deadlock
detection for TSan on the buildbots.
BUG=4106
R=pbos@webrtc.org, tommi@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/41069004
Cr-Commit-Position: refs/heads/master@{#8596}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8596 4adac7df-926f-26a2-2b94-8c16560cd09d