This removes the macro definition and presubmit checks and all existing
instances are inlined.
IWYU is left as a separate step until all DISALLOW_* macros are removed.
Bug: 1010217
Change-Id: Ibc4d90d6a1f244a01e65cd3c5a9c50e5419ea5a1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3257088
Reviewed-by: Lei Zhang <thestig@chromium.org>
Owners-Override: Lei Zhang <thestig@chromium.org>
Commit-Queue: Peter Boström <pbos@chromium.org>
Cr-Commit-Position: refs/heads/main@{#937250}
This correction is needed for ICU70 which lazy build the
internal break iterator instead of during constructor therefore
shift the return of U_USING_DEFAULT_WARNING in status
from usearch_open() to usearch_next(). Instead of explicitly
check different possible status code the DCHECK should just
use ICU macro U_SUCCESS() instead.
This change is needed to land to unblock the landing of ICU70
which have https://github.com/unicode-org/icu/pull/1473
that shift the returning of U_USING_DEFAULT_WARNING in status.
Bug: 1260116
Change-Id: Id78dae09d64d19d0c7840287033da75d93f7845a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3225780
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Frank Tang <ftang@chromium.org>
Cr-Commit-Position: refs/heads/main@{#932111}
This CL was generated by using tools/git/move_source_file.py to change
the includes for those files:
base/bind_post_task.h
base/deferred_sequenced_task_runner.h
base/post_task_and_reply_with_result_internal.h
base/sequenced_task_runner.h
base/sequenced_task_runner_helpers.h
base/single_thread_task_runner.h
base/task_runner.h
base/task_runner_util.h
base/updateable_sequenced_task_runner.h
Then formatted using "git cl format". DEPS files were fixed with a
simple search and replace script.
Bug: 1255932
Change-Id: I0d9b5ddd9260fde5e4581e6c6e0080bdb0ed2c44
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3209175
Reviewed-by: Gabriel Charette <gab@chromium.org>
Owners-Override: Gabriel Charette <gab@chromium.org>
Commit-Queue: Gabriel Charette <gab@chromium.org>
Cr-Commit-Position: refs/heads/main@{#929867}
This replaces DISALLOW_COPY_AND_ASSIGN with explicit constructor deletes
where a local script is able to detect its insertion place (~Foo() is
public => insert before this line).
This is incomplete as not all classes have a public ~Foo() declared, so
not all DISALLOW_COPY_AND_ASSIGN occurrences are replaced.
IWYU cleanup is left as a separate pass that is easier when these macros
go away.
Bug: 1010217
Change-Id: Iab44b67c7ca86cf5cfb1f6b27de5c18769d36632
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3177680
Auto-Submit: Peter Boström <pbos@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Owners-Override: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/main@{#924479}
Switch the ppapi::proxy::VarSerializationRules to use a thread-safe
reference counting. This fixes the DCHECKs being hit when running
some NaCl applications.
The underlying root cause is not fully understood, but it seems related
to message passing, as the DCHECK stack trace (obtained by manually
adding logs) points to the SerializedVarSendInputShmem class and its
instantiation in PPB_Instance_Proxy::PostMessage(); the actual DCHECK
hit is triggered when incrementing the VarSerializationRules's ref
counter.
It seems that the implementation of the whole PPAPI proxy is actually
thread-safe due to the use of a global ppapi::ProxyLock. Therefore the
DCHECK hits might actually be false positives, and switching
VarSerializationRules from RefCounted to RefCountedThreadSafe should
suppress them.
Bug: 756531
Change-Id: I675002e882cf21fdd8bba63ba4f078f71ffe5bfb
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3051930
Reviewed-by: Derek Schuff <dschuff@chromium.org>
Reviewed-by: Raymes Khoury <raymes@chromium.org>
Auto-Submit: Maksim Ivanov <emaxx@chromium.org>
Commit-Queue: Maksim Ivanov <emaxx@chromium.org>
Cr-Commit-Position: refs/heads/master@{#905984}
This CL trades the target-level allowlist for "nogncheck" on a few
lines. This allows us to turn on `gn check` for the target, and prevent
backsliding in other files, even while the leaky abstraction continues
to exist.
Bug: 1158995, 1228394
Change-Id: If147d215cdd0157175bbe9e9c9eba61dc7403547
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3018325
Auto-Submit: Chris Fredrickson <cfredric@chromium.org>
Reviewed-by: Bill Budge <bbudge@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@google.com>
Commit-Queue: Dirk Pranke <dpranke@google.com>
Cr-Commit-Position: refs/heads/master@{#900650}
This CL simply changes the type used for `test_sink_`, since there's no
reason ProxyChannel has to be aware it's anything more specific than a
IPC::Sender.
Bug: 1158995
Change-Id: Ibd8c9c203c89e8c59b7fa865c594df740ee65c0c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3017716
Reviewed-by: Bill Budge <bbudge@chromium.org>
Reviewed-by: Dirk Pranke <dpranke@google.com>
Commit-Queue: Chris Fredrickson <cfredric@chromium.org>
Cr-Commit-Position: refs/heads/master@{#900143}
Repeatedly use grep to find all the files in various dirs that includes
base/stl_util.h but do not use any functions provided by
base/stl_util.h and base/cxx*_backports.h, and then remove the
base/stl_util.h include from them. Files that include base/stl_util.h,
but actually needs base/cxx*_backports.h, will be dealt with separately.
Bug: 1194078
Change-Id: I50796fb91c03eed1b63ce901005818ba2ec3d94c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2909802
Commit-Queue: Nico Weber <thakis@chromium.org>
Auto-Submit: Lei Zhang <thestig@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Owners-Override: Nico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#885634}
Headers that do not contain "std::" do not need STL includes.
This CL is first mechanically generated as follows:
INCL="algorithm|array|list|map|memory|queue|set|string|unordered_map|unordered_set|utility|vector"
git ls-files | grep '\.h$' | xargs grep -L std:: | \
xargs grep -El "#include <($INCL)>$" > to_process.txt
Remove a bunch of third party files from to_process.txt.
INCL_ESCAPED="$(echo $INCL|sed 's/|/\\|/g')"
cat to_process.txt | xargs sed -i "/^#include <\($INCL_ESCAPED\)>$/d"
cat to_process.txt | xargs sed -i '/^$/N;/^\n$/D'
Then fix the build in rlz/.
Bug: 1200833
Change-Id: I7c48cdb53ec85412b6331df626f2f5c4c0174faa
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2896225
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Owners-Override: Nico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#883318}
Files that only use base::Contains() and no other base/stl_util.h helper
can replace base/stl_util.h with base/containers/contains.h.
Use grep to find all the files that include base/stl_util.h. Then filter
out the ones that need base/stl_util.h by running "grep -L base::func"
where "func" is a function that base/stl_util.h provides. For the
remaining files, grep for ones that use base::Contains(), and do search
and replace for stl_util.h. Take the resulting CL and run clang format.
Bug: 970209
Change-Id: I2fb47d7c91d910a2d431ab178b398f9bfa0eb8c1
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2853072
Owners-Override: Lei Zhang <thestig@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#877398}
In 2018 when https://crrev.com/551652 added support for the select all
command in interactive PDF forms, the only way to make PDFium do that
was by sending it key events. This was less than ideal, and it got worse
after https://crrev.com/718779. Now "select all" triggers a crash on
platforms that use Ozone.
Stop sending key events to the PDF plugin altogether to avoid the crash.
In its place, add a dedicated SelectAll command to the PDF Pepper API.
Plumb it through to the PDF plugin, and have the PDF plugin call
FORM_SelectAllText() in PDFium, which became available in 2020.
Bug: 836074, 1199128
Change-Id: I0f60cad0fc37aea4feddc49ed6d656a86ec8e952
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2830298
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Bill Budge <bbudge@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#873412}
Certificate parsing now doesn't depend on the OS so can happen in child processes. To avoid introducing a dependency on net/ in NaCl, make this private API not be part of NaCl since it was added for Flash. It looks like this can be removed as a result, but I'll leave this as a separate task in bug 1064652 along other Flash-only APIs.
This allows removal of BrowserMessageFilter for non-renderer child processe, since as implemented now they don't work with ChildProcessHostImpl.
Bug: 904556
Change-Id: Ic4ea8871097eb69108e484ab6f8ec6c868aff38a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2808690
Reviewed-by: Bill Budge <bbudge@chromium.org>
Reviewed-by: Nasko Oskov <nasko@chromium.org>
Reviewed-by: David Benjamin <davidben@chromium.org>
Commit-Queue: John Abd-El-Malek <jam@chromium.org>
Cr-Commit-Position: refs/heads/master@{#870202}
This intends to cover directories and individual files where changes
weren't large enough to warrant splitting out to a separate change.
This is a large-scale change: go/chromium-modernize-make-unique
Bug: 1194272
Change-Id: Ia50424ec4b7f998e65dee5071926332ffcce7a94
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2803041
Commit-Queue: Peter Boström <pbos@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Owners-Override: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#869273}
The motivation here is to eliminate the anti-pattern of combining
base::BindRepeating() + base::Passed(), as the resulting callback should
typically only be run once.
Bug: 1180750
Change-Id: I340029a8dddfa1c849886d4981b643e3cdc58077
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2718631
Reviewed-by: Bill Budge <bbudge@chromium.org>
Commit-Queue: Daniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#857710}
As a part of switching to the Perfetto-based trace macro implementation,
we want to disallow spaces in tracing category names. This patch
replaces spaces with underscores in all current category names.
Bug: 1006541
Cq-Include-Trybots: luci.chromium.try:linux-perfetto-rel
Change-Id: Ia07b1aa54077387611a5f91167a4f2eba2a9da17
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2678950
Auto-Submit: Sami Kyöstilä <skyostil@chromium.org>
Commit-Queue: Dan Sanders <sandersd@chromium.org>
Reviewed-by: Bill Budge <bbudge@chromium.org>
Reviewed-by: Dan Sanders <sandersd@chromium.org>
Reviewed-by: Mikhail Khokhlov <khokhlov@google.com>
Cr-Commit-Position: refs/heads/master@{#851853}
Tests insert a timeout on RunLoop in order to find slow or flaky tests
but the current error message only reports where the timeout is enabled
and not which RunLoop was currently running. Example:
../../content/public/test/browser_test_base.cc:701: Failure
Failed
RunLoop::Run() timed out.
Stack trace:
We will now include the Location where the RunLoop::Run() call happens
in order to report where the test is actually timing out. The new error
looks like:
../../content/test/content_browser_test_test.cc:341: Failure
Failed
RunLoop::Run() timed out. Timeout set at ../../content/public/test/browser_test_base.cc:701.
Stack trace:
Notably the file and line number where the "Failure" is reported
(in the first line) are where the RunLoop is Run().
R=gab@chromium.org
Bug: 1145280
Change-Id: Ia5e39dbbfb47fd4c9f831cb77889061c4cd3060f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2518125
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Bill Budge <bbudge@chromium.org>
Reviewed-by: Gabriel Charette <gab@chromium.org>
Commit-Queue: danakj <danakj@chromium.org>
Cr-Commit-Position: refs/heads/master@{#845815}
This change prepares the codebase to handle different types for
base::char16 and UChar. This is done by introducing a new
base/i18n/uchar.h header, providing casts between those two character
types and using it where required.
Bug: 911896
Change-Id: I2774dd0642bb94c2e00f07ed4cdc85680b229562
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2599088
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Commit-Queue: Jan Wilken Dörrie <jdoerrie@chromium.org>
Cr-Commit-Position: refs/heads/master@{#841079}
When the plugin sends a message to the renderer, bounds checking is
performed on all IPC enum traits. Messages containing bad data are
dropped.
Consequently, text runs containing no text need to have their style
initialized to an unknown mode instead of leaving the field
uninitialized. The uninitialized field was trying to pass garbage values
through IPC, causing the entire message to be dropped.
This issue was discovered after crrev.com/830918 was reverted, because
the change depended on accessibility info to be sent sequentially for
every page. A single dropped message would prevent the accessibility
tree from ever finishing.
Bug: 1150665
Change-Id: I0857b79da817e01a9c570d5a9172086ad9f39d67
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2567353
Reviewed-by: Ankit Kumar 🌪️ <ankk@microsoft.com>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Bill Budge <bbudge@chromium.org>
Commit-Queue: Daniel Hosseinian <dhoss@chromium.org>
Cr-Commit-Position: refs/heads/master@{#833065}
As part of Flash API removal, remove instances of
PreCacheFontForFlash. Generally, cache priming for GDI fonts
on Windows still seems to be needed for printing and PDF processes
but the flash reference can be deleted.
Bug: 1139287
Change-Id: Iebaac7c48b5fddbb81219b0fcc08b091597dee2f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2478990
Commit-Queue: Dominik Röttsches <drott@chromium.org>
Reviewed-by: Avi Drissman <avi@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#818851}
- Removes some 'pepper_flash_*' files that were removed from the build.
- Removes PPB_Flash_File and PPB_Proxy_Private that are now unused.
- Removes assorted things in content/ and ppapi/ that are no longer
relevant without Flash.
- Removes PepperPluginInstanceImpl::is_flash_plugin method.
Bug: chromium:1064652
Change-Id: I6905b64de90a58668e007a1282a6b6b248506358
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2481283
Reviewed-by: Scott Violet <sky@chromium.org>
Commit-Queue: Bill Budge <bbudge@chromium.org>
Cr-Commit-Position: refs/heads/master@{#818732}
This reverts commit acfed35ea9.
Reason for revert: This CL is likely breaks the Deterministic Linux build and cause a tree closure (https://ci.chromium.org/p/chromium/builders/ci/Deterministic%20Linux/29271)
It fails compare_build_artifacts and the difference is in:
nacl_test_data/nonsfi/irt_exception_test_pnacl_newlib_x32_nonsfi.nexe
nacl_test_data/nonsfi/irt_manifest_file_pnacl_newlib_x32_nonsfi.nexe
ppapi_nacl_tests_pnacl_newlib_x64.nexe
test_data/ppapi/tests/extensions/packaged_app/nonsfi/ppapi_tests_extensions_packaged_app_pnacl_newlib_x32_nonsfi.nexe
Original change's description:
> [Flash] Remove PPP_Flash_BrowserOperations API
>
> This also removes plugin data and settings persistence, which isn't
> needed if the Flash plugin doesn't exist (it used to persist its own
> data on command from the browser.)
>
> Adds a TODO to figure out how we will remove plugin data now that
> Flash is deprecated.
>
> Bug: chromium:1064652,chromium:1135773,chromium:1135779
> Change-Id: I2eb1e30856071190cba29cea98cdd86a37722f95
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2450057
> Commit-Queue: Bill Budge <bbudge@chromium.org>
> Reviewed-by: Tom Sepez <tsepez@chromium.org>
> Reviewed-by: Scott Violet <sky@chromium.org>
> Reviewed-by: Anthony LaForge <laforge@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#816370}
TBR=sky@chromium.org,bbudge@chromium.org,laforge@chromium.org,tsepez@chromium.org
Change-Id: I494da0a1897c7a75dd3f79d52f210e21a66ed5fd
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: chromium:1064652
Bug: chromium:1135773
Bug: chromium:1135779
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2467168
Reviewed-by: Maggie Cai <mxcai@chromium.org>
Commit-Queue: Maggie Cai <mxcai@chromium.org>
Cr-Commit-Position: refs/heads/master@{#816449}