0

Migrate TODOs referencing old crbug IDs to the new issue tracker IDs

The canonical bug format is TODO(crbug.com/<id>). TODOs of the
following forms will all be migrated to the new format:

- TODO(crbug.com/<old id>)
- TODO(https://crbug.com/<old id>)
- TODO(crbug/<old id>)
- TODO(crbug/monorail/<old id>)
- TODO(<old id>)
- TODO(issues.chromium.org/<old id>)
- TODO(https://issues.chromium.org/<old id>)
- TODO(https://issues.chromium.org/u/1/issues/<old id>)
- TODO(bugs.chromium.org/<old id>)

Bug id mapping is sourced from go/chrome-on-buganizer-prod-issues.
See go/crbug-todo-migration for details.

#crbug-todo-migration

Bug: b/321899722
Change-Id: Ifd155bbeff882ea939f74cf8b8f847f42847940b
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5468156
Reviewed-by: Darryl James <dljames@chromium.org>
Owners-Override: Alison Gale <agale@chromium.org>
Commit-Queue: Alison Gale <agale@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1290297}
This commit is contained in:
Alison Gale
2024-04-20 03:05:40 +00:00
committed by Chromium LUCI CQ
parent af2a84b470
commit 59c007a7ad
438 changed files with 648 additions and 636 deletions
android_webview
base
build/config
cc
content
browser
accessibility
bluetooth
browser_child_process_host_impl.cc
browsing_data
browsing_topics
cache_storage
child_process_launcher_helper.ccchild_process_security_policy_impl.cc
devtools
fenced_frame
file_system_access
gpu
handwriting
indexed_db
interest_group
loader
locks
media
navigation_transitions
network
permissions
picture_in_picture
preloading
quota
reduce_accept_language
renderer_host
resource_loading_browsertest.cc
security
service_worker
site_per_process_browsertest.ccsite_per_process_hit_test_browsertest.ccsnapshot_browsertest.cc
speech
storage_partition_impl.h
web_contents
webid
webrtc
worker_host
xr
child
common
gpu
public
renderer
services
shell
test
web_test
zygote
device
docs/experiments
extensions/browser
fuchsia_web/webengine/browser
gin
google_apis/gaia
gpu
headless
infra/config
ios
media
mojo
net
pdf
services
storage/browser
testing
tools
binary_size
libsupersize
code_coverage
js_source_maps
merge_js_source_maps
disable_tests
mb
metrics
perf
variations
ui
url

@ -261,7 +261,7 @@ void AwBrowserContext::RegisterPrefs(PrefRegistrySimple* registry) {
// We only use the autocomplete feature of Autofill, which is controlled via
// the manager_delegate. We don't use the rest of Autofill, which is why it is
// hardcoded as disabled here.
// TODO(crbug.com/873740): The following also disables autocomplete.
// TODO(crbug.com/40589187): The following also disables autocomplete.
// Investigate what the intended behavior is.
registry->RegisterBooleanPref(autofill::prefs::kAutofillProfileEnabled,
false);

@ -145,10 +145,10 @@ void AwFieldTrials::RegisterFeatureOverrides(base::FeatureList* feature_list) {
// WebView.
aw_feature_overrides.DisableFeature(::features::kWebOTP);
// TODO(https://crbug.com/1012899): WebXR is not yet supported on WebView.
// TODO(crbug.com/40652382): WebXR is not yet supported on WebView.
aw_feature_overrides.DisableFeature(::features::kWebXr);
// TODO(https://crbug.com/1312827): Digital Goods API is not yet supported
// TODO(crbug.com/40831925): Digital Goods API is not yet supported
// on WebView.
aw_feature_overrides.DisableFeature(::features::kDigitalGoodsApi);
@ -170,7 +170,7 @@ void AwFieldTrials::RegisterFeatureOverrides(base::FeatureList* feature_list) {
// Disable dr-dc on webview.
aw_feature_overrides.DisableFeature(::features::kEnableDrDc);
// TODO(crbug.com/1100993): Web Bluetooth is not yet supported on WebView.
// TODO(crbug.com/40703318): Web Bluetooth is not yet supported on WebView.
aw_feature_overrides.DisableFeature(::features::kWebBluetooth);
// TODO(crbug.com/933055): WebUSB is not yet supported on WebView.

@ -48,7 +48,7 @@ class AwFormDatabaseServiceTest : public Test {
std::unique_ptr<AwFormDatabaseService> service_;
};
// TODO(https://crbug.com/1472844): Fix flakes.
// TODO(crbug.com/40278752): Fix flakes.
TEST_F(AwFormDatabaseServiceTest, DISABLED_HasAndClearFormData) {
EXPECT_FALSE(service_->HasFormData());
std::vector<FormFieldData> fields;

@ -41,7 +41,7 @@ void AwJavaScriptDialogManager::RunJavaScriptDialog(
// origin of the "last committed URL" can be different due to a legacy app-
// exposed setting, so such a change might be even more breaking.
//
// TODO(crbug.com/1241925): Figure out if some kind of migration can be done
// TODO(crbug.com/40194877): Figure out if some kind of migration can be done
// here, as this is one of several instances in which moving from URL to
// origin would be desirable.
//

@ -28,7 +28,7 @@ namespace android_webview {
class AwBrowserContext;
// TODO(crbug.com/1215208): Change the functions in this class to reference
// TODO(crbug.com/40184305): Change the functions in this class to reference
// StorageKey instead of Origin.
//
// This object is owned by the native AwBrowserContext, and the Java peer is

@ -560,7 +560,7 @@ void CookieManager::GetCookieListAsyncHelper(const GURL& host,
base::OnceClosure complete) {
net::CookieOptions options = net::CookieOptions::MakeAllInclusive();
// TODO(crbug.com/1225444): Complete partitioned cookies implementation for
// TODO(crbug.com/40188414): Complete partitioned cookies implementation for
// WebView. The current implementation is a temporary fix for
// crbug.com/1442333 to let the app access its 1p partitioned cookie.
if (GetMojoCookieManager()) {

@ -26,7 +26,7 @@ std::unique_ptr<DisplayWebView> DisplayWebView::Create(
std::unique_ptr<viz::OverlayProcessorInterface> overlay_processor;
OverlayProcessorWebView* overlay_processor_webview_raw = nullptr;
if (features::IsAndroidSurfaceControlEnabled()) {
// TODO(crbug.com/1039876): This is to help triage bugs on pre-release
// TODO(crbug.com/40113791): This is to help triage bugs on pre-release
// android. Remove this log once feature is controlled only by feature flag
// or launched.
LOG(WARNING) << "WebView overlays are enabled!";

@ -43,7 +43,7 @@ using GLSurfaceContextPair =
std::pair<scoped_refptr<gl::GLSurface>, scoped_refptr<gl::GLContext>>;
GLSurfaceContextPair GetRealContextForVulkan() {
// TODO(crbug.com/1143279): Remove all of this after code no longer expects
// TODO(crbug.com/40155015): Remove all of this after code no longer expects
// GL to be present (eg for getting capabilities or calling glGetError).
static base::NoDestructor<base::WeakPtr<gl::GLSurface>> cached_surface;
static base::NoDestructor<base::WeakPtr<gl::GLContext>> cached_context;
@ -89,7 +89,7 @@ void OnContextLost(std::unique_ptr<bool> expect_loss,
crash_keys::kContextLossReason);
reason_key.Set(base::NumberToString(static_cast<int>(context_lost_reason)));
// TODO(https://crbug.com/1112841): Debugging contexts losts. WebView will
// TODO(crbug.com/40143203): Debugging contexts losts. WebView will
// intentionally crash in HardwareRenderer::OnViz::DisplayOutputSurface
// that will happen after this callback. That crash happens on viz thread and
// doesn't have any useful information. Crash here on RenderThread to

@ -65,8 +65,8 @@ void VizCompositorThreadRunnerWebView::InitFrameSinkManagerOnViz() {
// Android doesn't support software compositing, but in some cases
// unaccelerated canvas can use SharedBitmaps as resource so we create
// SharedBitmapManager anyway.
// TODO(1056184): Stop using SharedBitmapManager after fixing fallback to
// SharedBitmap.
// TODO(crbug.com/40120216): Stop using SharedBitmapManager after fixing
// fallback to SharedBitmap.
server_shared_bitmap_manager_ =
std::make_unique<viz::ServerSharedBitmapManager>();

@ -25,7 +25,7 @@ AwComponentMetricsProviderDelegate::AwComponentMetricsProviderDelegate(
// The returned ComponentInfo have component's id and version as this is the
// only info WebView keeps about components.
// TODO(https://crbug.com/1228535): record the component's Omaha fingerprint.
// TODO(crbug.com/40777796): record the component's Omaha fingerprint.
std::vector<ComponentInfo> AwComponentMetricsProviderDelegate::GetComponents() {
return component_updater::ComponentsInfoHolder::GetInstance()
->GetComponents();

@ -70,7 +70,7 @@ AwPingManagerFactory::GetURLLoaderFactory() const {
if (testing_url_loader_factory_) {
return testing_url_loader_factory_;
}
// TODO(crbug.com/1293957): Support separate SafeBrowsingNetworkContexts per
// TODO(crbug.com/40820267): Support separate SafeBrowsingNetworkContexts per
// browser context instead of having the same one all contexts. If done
// similar to the chrome/ implementation, GetURLLoaderFactory will take in a
// browser context as a parameter.

@ -187,7 +187,7 @@ BASE_FEATURE(kWebViewWideColorGamutSupport,
base::FEATURE_ENABLED_BY_DEFAULT);
// Control the default behaviour for the XRequestedWith header.
// TODO(crbug.com/1493963): enable by default after M120 branch point.
// TODO(crbug.com/40286009): enable by default after M120 branch point.
BASE_FEATURE(kWebViewXRequestedWithHeaderControl,
"WebViewXRequestedWithHeaderControl",
base::FEATURE_DISABLED_BY_DEFAULT);

@ -3385,7 +3385,7 @@ class WebViewChromium
}
}
// TODO(crbug.com/1479496): Add override annotation when SDK includes this method.
// TODO(crbug.com/40280893): Add override annotation when SDK includes this method.
public PointerIcon onResolvePointerIcon(MotionEvent event, int pointerIndex) {
return mAwContents.onResolvePointerIcon(event, pointerIndex);
}

@ -126,7 +126,7 @@ public class FastVariationsSeedSafeModeAction implements SafeModeAction {
.querySafeModeVariationsSeedContentProvider();
}
// TODO(crbug.com/1422878): Update this to include timeout capability.
// TODO(crbug.com/40259816): Update this to include timeout capability.
private static class ContentProviderQuery {
private static final String URI_SUFFIX = ".SafeModeVariationsSeedContentProvider";
private static final String URI_PATH = VariationsFastFetchModeUtils.URI_PATH;

@ -278,7 +278,8 @@ public class JsJavaInteractionTest extends AwParameterizedTest {
@SmallTest
@Feature({"AndroidWebView", "JsJavaInteraction"})
public void testAddWebMessageListenerAffectsRendererInitiatedNavigation() throws Throwable {
// TODO(crbug.com/969842): We'd either replace the following html file with a file contains
// TODO(crbug.com/40630430): We'd either replace the following html file with a file
// contains
// no JavaScript code or add a test to ensure that evaluateJavascript() won't
// over-trigger DidClearWindowObject.
loadUrlFromPath(POST_MESSAGE_WITH_PORTS_HTML);

@ -64,8 +64,8 @@ using base::android::JavaRef;
namespace {
// TODO(crbug.com/1297672): This is what shows up as filename in errors. Revisit
// this once error handling is in place.
// TODO(crbug.com/40215244): This is what shows up as filename in errors.
// Revisit this once error handling is in place.
constexpr std::string_view resource_name = "<expression>";
constexpr jlong kUnknownAssetFileDescriptorLength = -1;
constexpr int64_t kDefaultChunkSize = 1 << 16;

@ -108,7 +108,7 @@ void AwComponentInstallerPolicy::ComponentReady(
GetVersionDirName(highest_sequence_number + 1, version.GetString());
const base::FilePath temp_copy_path =
temp_dir.GetPath().AppendASCII(new_sequence_version_string);
// TODO(crbug.com/1176335) use file links to optimize copies number.
// TODO(crbug.com/40747851) use file links to optimize copies number.
if (!base::CopyDirectory(install_dir, temp_copy_path,
/* recursive= */ true)) {
LOG(ERROR) << "Error copying from " << install_dir << " to "

@ -160,7 +160,7 @@ class OnDemandNetworkFetcher : public update_client::NetworkFetcher {
};
// A NetworkFetcher that fakes downloading a CRX file.
// TODO(crbug.com/1190310) use EmbeddedTestServer instead of Mocking the
// TODO(crbug.com/40755924) use EmbeddedTestServer instead of Mocking the
// NetworkFetcher.
class FakeCrxNetworkFetcher : public update_client::NetworkFetcher {
public:

@ -89,7 +89,7 @@ void RegisterComponentsForUpdate(
if (base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kWebViewEnableTrustTokensComponent)) {
// TODO(https://crbug.com/1170468): decide if this component is still
// TODO(crbug.com/40165770): decide if this component is still
// needed. Note: We're using a command-line switch because finch features
// isn't supported in nonembedded WebView.
// After setting this flag, it may be necessary to force restart the

@ -40,7 +40,7 @@ public class ComponentsInfoLoader {
for (File componentDirectory : componentDirectories) {
String[] componentVersions = componentDirectory.list();
// TODO(https://crbug.com/1231543): Handle multiple versions by sorting semantically and
// TODO(crbug.com/40779741): Handle multiple versions by sorting semantically and
// picking out the highest version
String version =
(componentVersions == null || componentVersions.length == 0)

@ -21,7 +21,7 @@ import java.util.Locale;
/** Factory class to build bug URI for a crash report. */
public class CrashBugUrlFactory {
// There is a limit on the length of this query string, see https://crbug.com/1015923
// TODO(https://crbug.com/1052295): add assert statement to check the length of this String.
// TODO(crbug.com/40674230): add assert statement to check the length of this String.
@VisibleForTesting
public static final String CRASH_REPORT_TEMPLATE =
"""

@ -94,7 +94,7 @@ public class AwComponentUpdateService extends JobService {
ComponentUpdaterSafeModeUtils.executeSafeModeIfEnabled(
new File(ComponentsProviderPathUtil.getComponentUpdateServiceDirectoryPath()));
// TODO(https://crbug.com/1221092): Stop native updates when onStopJob, onDestroy are
// TODO(crbug.com/40773291): Stop native updates when onStopJob, onDestroy are
// called.
setUnexpectedExit(false);
@ -157,7 +157,7 @@ public class AwComponentUpdateService extends JobService {
setUnexpectedExit(true);
mIsUpdating = true;
final long startTime = SystemClock.uptimeMillis();
// TODO(crbug.com/1171817) Once we can log UMA from native, remove the count parameter.
// TODO(crbug.com/40745317) Once we can log UMA from native, remove the count parameter.
AwComponentUpdateServiceJni.get()
.startComponentUpdateService(
(count) -> {

@ -103,7 +103,7 @@ public class WebViewApkApplication extends Application {
PureJavaExceptionHandler.installHandler(AwPureJavaExceptionReporter::new);
CustomAssertionHandler.installPreNativeHandler(AwPureJavaExceptionReporter::new);
// TODO(crbug.com/1182693): Do set up a native UMA recorder once we support recording
// TODO(crbug.com/40751605): Do set up a native UMA recorder once we support recording
// metrics from native nonembedded code.
UmaRecorderHolder.setUpNativeUmaRecorder(false);

@ -283,7 +283,7 @@ public class ComponentsProviderService extends Service {
return;
}
// TODO(crbug.com/1256948): schedule it as a periodic job.
// TODO(crbug.com/40796101): schedule it as a periodic job.
final SharedPreferences sharedPreferences =
ContextUtils.getApplicationContext()
.getSharedPreferences(SHARED_PREFERENCES_NAME, Context.MODE_PRIVATE);
@ -312,7 +312,7 @@ public class ComponentsProviderService extends Service {
}
}
// TODO(crbug.com/1189126): move this to utils class
// TODO(crbug.com/40755263): move this to utils class
@VisibleForTesting
public static boolean isJobScheduled(JobScheduler scheduler, int jobId) {
return scheduler.getPendingJob(jobId) != null;

@ -169,7 +169,8 @@ public final class MetricsBridgeService extends Service {
public void recordMetrics(byte[] data) {
if (Binder.getCallingUid() != Process.myUid()) {
throw new SecurityException(
"recordMetrics() may only be called by non-embedded WebView processes");
"recordMetrics() may only be called by non-embedded WebView"
+ " processes");
}
// If this is called within the same process, it will run on the caller thread,
// so we will always punt this to thread pool.
@ -179,11 +180,12 @@ public final class MetricsBridgeService extends Service {
// embedded WebView connects to the service to retrieve and clear
// the records.
if (mRecordsList.size() >= MAX_HISTOGRAM_COUNT) {
// TODO(https://crbug.com/1088467) add a histogram to log the
// TODO(crbug.com/40695441) add a histogram to log the
// number of dropped histograms.
Log.w(
TAG,
"retained records has reached the max capacity, dropping record");
"retained records has reached the max capacity,"
+ " dropping record");
return;
}
try {

@ -35,7 +35,7 @@ WebViewApkProcess* WebViewApkProcess::GetInstance() {
// static
// Must be called exactly once during the process startup.
void WebViewApkProcess::Init() {
// TODO(crbug.com/1179303): Add check to assert this is only loaded by
// TODO(crbug.com/40749658): Add check to assert this is only loaded by
// LibraryProcessType PROCESS_WEBVIEW_NONEMBEDDED.
// This doesn't have to be thread safe, because it should only happen once on

@ -261,7 +261,7 @@ void AwContentRendererClient::GetInterface(
const std::string& interface_name,
mojo::ScopedMessagePipeHandle interface_pipe) {
// A dirty hack to make SpellCheckHost requests work on WebView.
// TODO(crbug.com/806394): Use a WebView-specific service for SpellCheckHost
// TODO(crbug.com/40560165): Use a WebView-specific service for SpellCheckHost
// and SafeBrowsing, instead of |content_browser|.
RenderThread::Get()->BindHostReceiver(
mojo::GenericPendingReceiver(interface_name, std::move(interface_pipe)));

@ -14,7 +14,7 @@ namespace base {
AndroidHardwareBufferCompat::AndroidHardwareBufferCompat() {
DCHECK(IsSupportAvailable());
// TODO(https://crbug.com/1382595): If the Chromium build requires
// TODO(crbug.com/40877384): If the Chromium build requires
// __ANDROID_API__ >= 26 at some point in the future, we could directly use
// the global functions instead of dynamic loading. However, since this would
// be incompatible with pre-Oreo devices, this is unlikely to happen in the

@ -39,10 +39,10 @@ import java.util.Map.Entry;
import javax.annotation.concurrent.GuardedBy;
/**
* Provides information about the current activity's status, and a way
* to register / unregister listeners for state changes.
* TODO(https://crbug.com/470582): ApplicationStatus will not work on WebView/WebLayer, and
* should be moved out of base and into //chrome. It should not be relied upon for //components.
* Provides information about the current activity's status, and a way to register / unregister
* listeners for state changes. TODO(crbug.com/40411113): ApplicationStatus will not work on
* WebView/WebLayer, and should be moved out of base and into //chrome. It should not be relied upon
* for //components.
*/
@JNINamespace("base::android")
public class ApplicationStatus {

@ -156,7 +156,7 @@ class BASE_EXPORT NotReachedError : public CheckError {
// discarding log-stream arguments. See base/notreached.h.
NOMERGE NOINLINE NOT_TAIL_CALLED static void TriggerNotReached();
// TODO(crbug.com/851128): Mark [[noreturn]] once this is CHECK-fatal on all
// TODO(crbug.com/40580068): Mark [[noreturn]] once this is CHECK-fatal on all
// builds.
NOMERGE NOINLINE NOT_TAIL_CALLED ~NotReachedError();
@ -164,8 +164,8 @@ class BASE_EXPORT NotReachedError : public CheckError {
using CheckError::CheckError;
};
// TODO(crbug.com/851128): This should take the name of the above class once all
// callers of NOTREACHED() have migrated to the CHECK-fatal version.
// TODO(crbug.com/40580068): This should take the name of the above class once
// all callers of NOTREACHED() have migrated to the CHECK-fatal version.
class BASE_EXPORT NotReachedNoreturnError : public CheckError {
public:
explicit NotReachedNoreturnError(

@ -492,8 +492,8 @@ class small_map {
}
size_t i = static_cast<size_t>(position.array_iter_ - array_);
// TODO(crbug.com/817982): When we have a checked iterator, this CHECK might
// not be necessary.
// TODO(crbug.com/40565371): When we have a checked iterator, this CHECK
// might not be necessary.
CHECK_LE(i, size_);
array_[i].~value_type();
--size_;

@ -9,7 +9,7 @@
namespace base {
// TODO(crbug.com/817982): What we really need is for checked_math.h to be
// TODO(crbug.com/40565371): What we really need is for checked_math.h to be
// able to do checked arithmetic on pointers.
template <typename T>
inline uintptr_t get_uintptr(const T* t) {

@ -76,7 +76,7 @@ class VectorBuffer {
size_t capacity() const { return capacity_; }
T& operator[](size_t i) {
// TODO(crbug.com/817982): Some call sites (at least circular_deque.h) are
// TODO(crbug.com/40565371): Some call sites (at least circular_deque.h) are
// calling this with `i == capacity_` as a way of getting `end()`. Therefore
// we have to allow this for now (`i <= capacity_`), until we fix those call
// sites to use real iterators. This comment applies here and to `const T&

@ -39,7 +39,7 @@ BASE_FEATURE(kEnforceNoExecutableFileHandles,
"EnforceNoExecutableFileHandles",
FEATURE_ENABLED_BY_DEFAULT);
// TODO(crbug.com/851128): Roll out this to 100% before replacing existing
// TODO(crbug.com/40580068): Roll out this to 100% before replacing existing
// NOTREACHED()s with NOTREACHED_NORETURN() as part of NOTREACHED() migration.
// Note that a prerequisite for rolling out this experiment is that existing
// NOTREACHED reports are at a very low rate. Once this rolls out we should

@ -122,7 +122,7 @@ TEST_F(ProductInfoTest, SystemServiceReturnsValidValues) {
EXPECT_FALSE(product_info.manufacturer()->empty());
}
// TODO(crbug.com/101396): Re-enable once all clients
// TODO(crbug.com/40103081): Re-enable once all clients
// provide this service.
TEST_F(ProductInfoDeathTest, DISABLED_DcheckOnServiceNotPresent) {
EXPECT_DCHECK_DEATH_WITH(GetProductInfoViaTask(), "ZX_ERR_PEER_CLOSED");

@ -156,12 +156,12 @@ std::string Serialize(PlatformSharedMemoryRegion shmem_region,
// caller, who is responsible for updating |launch_options| or the zygote
// launch parameters, as appropriate.
//
// TODO(crbug.com/1028263): Create a wrapper to release and return the primary
// descriptor for android (ScopedFD) vs non-android (ScopedFDPair).
// TODO(crbug.com/40109064): Create a wrapper to release and return the
// primary descriptor for android (ScopedFD) vs non-android (ScopedFDPair).
//
// TODO(crbug.com/1028263): Get rid of |descriptor_to_share| and just populate
// |launch_options|. The caller should be responsible for translating between
// |launch_options| and zygote parameters as necessary.
// TODO(crbug.com/40109064): Get rid of |descriptor_to_share| and just
// populate |launch_options|. The caller should be responsible for translating
// between |launch_options| and zygote parameters as necessary.
#if BUILDFLAG(IS_ANDROID)
descriptor_to_share = std::move(shmem_handle);
#else

@ -418,7 +418,7 @@ bool Histogram::InspectConstructionArguments(std::string_view name,
// Defensive code for backward compatibility.
if (*minimum < 1) {
// TODO(crbug.com/1288842): Temporarily disabled during cleanup.
// TODO(crbug.com/40211696): Temporarily disabled during cleanup.
// DLOG(ERROR) << "Histogram: " << name << " has bad minimum: " << *minimum;
*minimum = 1;
if (*maximum < 1)

@ -63,7 +63,7 @@
// 4. The low 64 bits of the shared memory block GUID.
// 5. The size of the shared memory segment as a string.
//
// TODO(crbug.com/1028263): Refactor the common logic here and in
// TODO(crbug.com/40109064): Refactor the common logic here and in
// base/metrics/field_trial.cc
namespace base {
@ -127,7 +127,7 @@ bool HistogramSharedMemory::PassOnCommandLineIsEnabled(
// Example: The call to OpenSymbolFiles() in base/debug/stack_trace_posix.cc
// grabs a read-only handle to the shmem region for some process types.
//
// TODO(crbug.com/1028263): Fix ChromeOS and utility processes.
// TODO(crbug.com/40109064): Fix ChromeOS and utility processes.
return (FeatureList::IsEnabled(kPassHistogramSharedMemoryOnLaunch)
#if BUILDFLAG(IS_CHROMEOS)
&& process_type != "gpu-process"
@ -172,7 +172,7 @@ void HistogramSharedMemory::AddToLaunchParameters(
// static
void HistogramSharedMemory::InitFromLaunchParameters(
const CommandLine& command_line) {
// TODO(crbug.com/1028263): Clean up once fully launched.
// TODO(crbug.com/40109064): Clean up once fully launched.
if (!command_line.HasSwitch(switches::kMetricsSharedMemoryHandle)) {
return;
}

@ -26,7 +26,7 @@ namespace logging {
// Canary and Dev with intent to roll out to stable in M124 absent any blocking
// issues that come up.
//
// TODO(crbug.com/851128): After kNotReachedIsFatal is universally rolled out
// TODO(crbug.com/40580068): After kNotReachedIsFatal is universally rolled out
// then move callers without a non-fatal milestone argument to
// NOTREACHED_NORETURN(). Then rename the [[noreturn]] version back to
// NOTREACHED().
@ -46,8 +46,8 @@ namespace logging {
// NOTREACHED_NORETURN() annotates paths that are supposed to be unreachable.
// They crash if they are ever hit.
// TODO(crbug.com/851128): Rename back to NOTREACHED() once there are no callers
// of the old non-CHECK-fatal macro.
// TODO(crbug.com/40580068): Rename back to NOTREACHED() once there are no
// callers of the old non-CHECK-fatal macro.
#if CHECK_WILL_STREAM()
#define NOTREACHED_NORETURN() ::logging::NotReachedNoreturnError()
#else

@ -79,7 +79,7 @@ std::optional<ULONG> GetBatteryTag(HANDLE battery) {
if (::GetLastError() == ERROR_FILE_NOT_FOUND) {
// No battery present in this interface.
//
// TODO(crbug.com/1191045): Change CHECK to DCHECK in October 2022 after
// TODO(crbug.com/40756364): Change CHECK to DCHECK in October 2022 after
// verifying that there are no crash reports.
CHECK_EQ(battery_tag, static_cast<ULONG>(BATTERY_TAG_INVALID));
return battery_tag;

@ -75,7 +75,7 @@ const ModuleCache::Module* ModuleCache::GetModuleForAddress(uintptr_t address) {
return nullptr;
const auto result = native_modules_.insert(std::move(new_module));
// TODO(https://crbug.com/1131769): Reintroduce DCHECK(result.second) after
// TODO(crbug.com/40150346): Reintroduce DCHECK(result.second) after
// fixing the issue that is causing it to fail.
return result.first->get();
}

@ -116,7 +116,7 @@ void RunLoop::Run(const Location& location) {
return;
// If there is a RunLoopTimeout active then set the timeout.
// TODO(crbug.com/905412): Use real-time for Run() timeouts so that they
// TODO(crbug.com/40602467): Use real-time for Run() timeouts so that they
// can be applied even in tests which mock TimeTicks::Now().
CancelableOnceClosure cancelable_timeout;
const RunLoopTimeout* run_timeout = GetTimeoutForCurrentThread();

@ -408,7 +408,7 @@ std::string UnescapeURLWithAdjustmentsImpl(
// character. In that case, just unescaped and write the non-sense
// character.
//
// TODO(https://crbug.com/829868): Do not unescape illegal UTF-8
// TODO(crbug.com/40570496): Do not unescape illegal UTF-8
// sequences.
unsigned char non_utf8_byte;
if (UnescapeUnsignedByteAtIndex(escaped_text, i, &non_utf8_byte)) {

@ -5,7 +5,7 @@
// This header is deprecated. `base::StringPiece` is now `std::string_view`.
// Use it and <string_view> instead.
//
// TODO(crbug.com/691162): Remove uses of this header.
// TODO(crbug.com/40506050): Remove uses of this header.
#ifndef BASE_STRINGS_STRING_PIECE_H_
#define BASE_STRINGS_STRING_PIECE_H_

@ -154,7 +154,7 @@ class BASE_EXPORT CancelableTaskTracker {
TaskId next_id_ = 1;
SEQUENCE_CHECKER(sequence_checker_);
// TODO(https://crbug.com/1009795): Remove once crasher is resolved.
// TODO(crbug.com/40050290): Remove once crasher is resolved.
base::WeakPtr<CancelableTaskTracker> weak_this_;
base::WeakPtrFactory<CancelableTaskTracker> weak_factory_{this};
};

@ -1353,7 +1353,7 @@ TEST(ProcessGTestOutputTest, FoundTestCaseNotEnforced) {
}
#endif // !BUILDFLAG(IS_FUCHSIA)
// TODO(crbug.com/1094369): Enable leaked-child checks on other platforms.
// TODO(crbug.com/40135391): Enable leaked-child checks on other platforms.
#if BUILDFLAG(IS_FUCHSIA)
// Test that leaves a child process running. The test is DISABLED_, so it can

@ -145,7 +145,7 @@ declare_args() {
#
# Flag discussion: https://crbug.com/977230
#
# TODO(crbug.com/1131993): This regresses binary size by ~1MB on Android and
# TODO(crbug.com/40721698): This regresses binary size by ~1MB on Android and
# needs to be evaluated before enabling it there as well.
init_stack_vars = !(is_android && is_official_build)

@ -230,7 +230,7 @@ can_unwind_with_cfi_table = is_android && !is_component_build &&
!enable_frame_pointers && current_cpu == "arm"
# Whether or not cfi table should be enabled on arm.
# TODO(crbug.com/1090409): Replace can_unwind_with_cfi_table with this once
# TODO(crbug.com/40133751): Replace can_unwind_with_cfi_table with this once
# sampling profiler is enabled on android.
enable_arm_cfi_table = is_android && !is_component_build && current_cpu == "arm"

@ -52,7 +52,7 @@ config("default_coverage") {
}
if (is_linux || is_chromeos) {
# TODO(crbug.com/1194301): Remove this flag.
# TODO(crbug.com/40175589): Remove this flag.
cflags += [ "-fno-use-cxa-atexit" ]
}
}

@ -3,7 +3,7 @@
// found in the LICENSE file.
{
program: {
// TODO(crbug.com/1465997): Remove the use of ASAN_OPTIONS once media does
// TODO(crbug.com/40276216): Remove the use of ASAN_OPTIONS once media does
// not load the shared rust library separately.
environ: [
"ASAN_OPTIONS=detect_odr_violation=0",

@ -953,7 +953,7 @@ cc_test("cc_unittests") {
additional_manifest_fragments = [
"//build/config/fuchsia/test/fonts.shard.test-cml",
# TODO(https://crbug.com/1185811): Investigate removing the requirement
# TODO(crbug.com/40055105): Investigate removing the requirement
# for VmexResource.
"//build/config/fuchsia/test/mark_vmo_executable.shard.test-cml",
"//third_party/fuchsia-sdk/sdk/pkg/vulkan/client.shard.cml",

@ -586,7 +586,8 @@ PropertyToElementIdMap ElementAnimations::GetPropertyToElementIdMap() const {
// We deliberately use two branches here so that the DCHECK can
// differentiate between models with different element ids, and the case
// where some models don't have an element id.
// TODO(crbug.com/900241): All KeyframeModels should have an ElementId.
// TODO(crbug.com/40600273): All KeyframeModels should have an
// ElementId.
if (model->element_id()) {
DCHECK(!element_id_for_property ||
element_id_for_property == model->element_id())

@ -113,7 +113,7 @@ class CC_ANIMATION_EXPORT ElementAnimations
// that have changed since the last update.
void UpdateClientAnimationState();
// TODO(crbug.com/1176334): Animation targets should be attached to curves
// TODO(crbug.com/40747850): Animation targets should be attached to curves
// when they're created and the concrete subclass is known. This function
// exists as a stopgap: the animation machinery previously expected to
// announce a target and then pass curves that would implicitly animate the

@ -217,7 +217,7 @@ void KeyframeEffect::Pause(base::TimeTicks timeline_time,
PauseCondition pause_condition) {
bool did_pause = false;
for (auto& keyframe_model : keyframe_models()) {
// TODO(crbug.com/1076012): KeyframeEffect is paused with local time for
// TODO(crbug.com/40688021): KeyframeEffect is paused with local time for
// scroll-linked animations. To make sure the start event of a keyframe
// model is sent to blink, we should not set its run state to PAUSED until
// such event is sent. This should be revisited once KeyframeEffect is able

@ -538,7 +538,7 @@ class CC_EXPORT InputHandler : public InputDelegateForCompositor {
// compositor side. The information gets shared by the main thread as part of
// the begin_main_frame_state. Finally Use counters are updated in the main
// thread side to keep track of the frequency of scrolling with different
// sources per page load. TODO(crbug.com/691886): Use GRC API to plumb the
// sources per page load. TODO(crbug.com/40506330): Use GRC API to plumb the
// scroll source info for Use Counters.
void UpdateScrollSourceInfo(const ScrollState& scroll_state,
ui::ScrollInputType type);

@ -835,7 +835,7 @@ bool SnapContainerData::IsSnapportCoveredOnAxis(
}
}
// TODO(crbug.com/1501103): Use tolerance value less than 1.
// TODO(crbug.com/40941354): Use tolerance value less than 1.
// It is currently set to 1 because of differences in the way Blink and cc
// currently handle fractional offsets when snapping.
constexpr float kSnappedToTolerance = 1.0;

@ -159,7 +159,7 @@ bool PaintedScrollbarLayer::UpdateInternalContentScale() {
transform, layer_tree_host()->device_scale_factor());
float scale = std::max(transform_scales.x(), transform_scales.y());
// Clamp minimum scale to 1 to avoid too low scale during scale animation.
// TODO(crbug.com/1009291): Move rasterization of scrollbars to the impl side
// TODO(crbug.com/40100995): Move rasterization of scrollbars to the impl side
// to better handle scale changes.
scale = std::max(1.0f, scale);

@ -212,7 +212,7 @@ gfx::Rect ScrollbarLayerImplBase::ComputeThumbQuadRectWithThumbThicknessScale(
float track_length = TrackLength();
int thumb_length = ThumbLength();
int thumb_thickness = ThumbThickness();
// TODO(crbug.com/1239770): This is a speculative fix.
// TODO(crbug.com/40194000): This is a speculative fix.
float maximum = std::max(scroll_layer_length() - clip_layer_length(), 0.0f);
// TODO(crbug.com/1239510): Re-enable the following DCHECK once the
// underlying issue is resolved.

@ -110,7 +110,7 @@ void SolidColorScrollbarLayer::SetColor(SkColor4f color) {
if (layer_tree_host() &&
layer_tree_host()->GetSettings().using_synchronous_renderer_compositor) {
// Root frame in Android WebView uses system scrollbars, so make ours
// invisible. TODO(crbug.com/1327047): We should apply this to the root
// invisible. TODO(crbug.com/40226034): We should apply this to the root
// scrollbars only, or consider other choices listed in the bug.
color = SkColors::kTransparent;
}

@ -30,7 +30,7 @@ std::unique_ptr<LayerImpl> VideoLayer::CreateLayerImpl(
}
bool VideoLayer::RequiresSetNeedsDisplayOnHdrHeadroomChange() const {
// TODO(https://crbug.com/1450807): Only return true if the contents of the
// TODO(crbug.com/40065199): Only return true if the contents of the
// video are HDR.
return true;
}

@ -1458,7 +1458,7 @@ void CompositorFrameReporter::ReportCompositorLatencyTraceEvents(
reporter->add_high_latency_contribution_stage(stage);
}
// TODO(crbug.com/1086974): Set 'drop reason' if applicable.
// TODO(crbug.com/40132773): Set 'drop reason' if applicable.
});
for (const auto& stage : stage_history_) {
@ -1769,7 +1769,7 @@ void CompositorFrameReporter::CalculateCompositorLatencyPrediction(
current_stage_durations.total_blink_latency);
}
// TODO(crbug.com/1349930): implement check that ensure the prediction is
// TODO(crbug.com/40233949): implement check that ensure the prediction is
// correct by checking if platform supports breakdown of the stage
// SubmitCompositorFrameToPresentationCompositorFrame.SwapStartToSwapEnd,
// then SwapStartToSwapEnd should always be 0s and data for breakdown of it

@ -142,9 +142,9 @@ void CompositorFrameReportingController::WillBeginImplFrame(
if (reporters_[PipelineStage::kBeginImplFrame]) {
auto& reporter = reporters_[PipelineStage::kBeginImplFrame];
DCHECK(reporter->did_finish_impl_frame());
// TODO(1144353): This is a speculative fix. This code should only be
// reached after the previous frame have been explicitly marked as 'did not
// produce frame', i.e. this code should have a DCHECK instead of a
// TODO(crbug.com/40728802): This is a speculative fix. This code should
// only be reached after the previous frame have been explicitly marked as
// 'did not produce frame', i.e. this code should have a DCHECK instead of a
// conditional:
// DCHECK(reporter->did_not_produce_frame()).
if (reporter->did_not_produce_frame()) {
@ -186,9 +186,9 @@ void CompositorFrameReportingController::WillBeginMainFrame(
auto active_trackers = active_trackers_;
auto smooth_thread = GetSmoothThread();
if (args.frame_id == last_started_compositor_frame_.args.frame_id) {
// TODO(1277547): Instead of replacing all current information with the
// older information from when the impl-frame started, merge the two sets
// of information that makes sense.
// TODO(crbug.com/40207819): Instead of replacing all current information
// with the older information from when the impl-frame started, merge the
// two sets of information that makes sense.
scrolling_thread = last_started_compositor_frame_.scrolling_thread;
active_trackers = last_started_compositor_frame_.active_trackers;
smooth_thread = last_started_compositor_frame_.smooth_thread;

@ -37,9 +37,9 @@ class CC_EXPORT EventMetrics {
kMousePressed,
kMouseReleased,
kMouseWheel,
// TODO(crbug/1071645): Currently, all ET_KEY_PRESSED events are reported
// under EventLatency.KeyPressed histogram. This includes both key-down and
// key-char events. Consider reporting them separately.
// TODO(crbug.com/40126863): Currently, all ET_KEY_PRESSED events are
// reported under EventLatency.KeyPressed histogram. This includes both
// key-down and key-char events. Consider reporting them separately.
kKeyPressed,
kKeyReleased,
kTouchPressed,

@ -55,8 +55,9 @@ bool FrameInfo::IsDroppedAffectingSmoothness() const {
void FrameInfo::MergeWith(const FrameInfo& other) {
#if BUILDFLAG(IS_ANDROID)
// TODO(1278168): on android-webview, multiple frames can be submitted against
// the same BeginFrameArgs. This can trip the DCHECK()s in this function.
// TODO(crbug.com/40208073): on android-webview, multiple frames can be
// submitted against the same BeginFrameArgs. This can trip the DCHECK()s in
// this function.
if (was_merged)
return;
if (main_thread_response == MainThreadResponse::kIncluded &&

@ -512,7 +512,7 @@ void FrameSequenceMetrics::CalculateCheckerboardingAndJankV3(
will_ignore_current_frame = true;
}
// TODO(crbug.com/1450940): A new FrameSequenceTracker, that has yet to
// TODO(crbug.com/40270377): A new FrameSequenceTracker, that has yet to
// process its first frame uses its creation time as starting point of
// nested traces. FrameSorter processes a FrameInfo when both threads are
// complete. It's possible for the smoothness thread component to have

@ -137,7 +137,7 @@ bool FrameSequenceTracker::ShouldIgnoreBeginFrameSource(
}
void FrameSequenceTracker::ResetAllStateIfPaused() {
// TODO(crbug.com/1256879): With FrameSequenceMetrics handling
// TODO(crbug.com/40200408): With FrameSequenceMetrics handling
// FrameInfo::FrameFinalState::kNoUpdateDesired we likely do not need this
// anymore.
if (!reset_all_state_) {

@ -103,7 +103,8 @@ void ScrollJankDroppedFrameTracker::EmitPerScrollHistogramsAndResetCounters() {
// There should be at least one presented frame given the method is only
// called after we have a successful presentation.
if (per_scroll_->num_presented_frames == 0) {
// TODO(1464878): Debug cases where we can have 0 presented frames.
// TODO(crbug.com/40067426): Debug cases where we can have 0 presented
// frames.
TRACE_EVENT_INSTANT("input", "NoPresentedFramesInScroll");
return;
}
@ -221,10 +222,10 @@ void ScrollJankDroppedFrameTracker::ReportLatestPresentationData(
EventMetrics::DispatchStage::kGenerated);
if ((last_input_generation_ts < first_input_generation_ts) ||
(presentation_ts <= last_input_generation_ts)) {
// TODO(crbug/1447358): Investigate when these edge cases can be triggered
// in field and web tests. We have already seen this triggered in field, and
// some web tests where an event with null(0) timestamp gets coalesced with
// a "normal" input.
// TODO(crbug.com/40913586): Investigate when these edge cases can be
// triggered in field and web tests. We have already seen this triggered in
// field, and some web tests where an event with null(0) timestamp gets
// coalesced with a "normal" input.
return;
}
// TODO(b/276722271) : Analyze and reduce these cases of out of order

@ -639,7 +639,7 @@ sk_sp<SkImage> ServiceImageTransferCacheEntry::GetImageWithToneMapApplied(
sk_sp<SkImage> image;
// Apply tone mapping.
// TODO(https://crbug.com/1286088): Pass a shared cache as a parameter.
// TODO(crbug.com/40210699): Pass a shared cache as a parameter.
gfx::ColorConversionSkFilterCache cache;
if (has_gainmap_) {
image = cache.ApplyGainmap(
@ -751,7 +751,7 @@ bool ServiceImageTransferCacheEntry::Deserialize(
image_ =
image_->makeColorSpace(graphite_recorder_, target_color_space, props);
} else {
// TODO(crbug.com/1443068): It's possible for both `gr_context` and
// TODO(crbug.com/40267231): It's possible for both `gr_context` and
// `graphite_recorder` to be nullptr if `image_` is not texture backed.
// Need to handle this case (currently just goes through gr_context path
// with nullptr context).

@ -758,7 +758,7 @@ TEST_F(OopPixelTest, DrawHdrImageWithMetadata) {
#if BUILDFLAG(IS_ANDROID)
// Allow large quantization error on Android.
// TODO(https://crbug.com/1363056): Ensure higher precision for HDR images.
// TODO(crbug.com/40238547): Ensure higher precision for HDR images.
constexpr float kEpsilon = 1 / 16.f;
#elif BUILDFLAG(IS_IOS) && BUILDFLAG(SKIA_USE_METAL)
// TODO(crbug.com/1476507): Allow larger errors on iOS as well.

@ -1254,7 +1254,7 @@ void DrawImageRectOp::RasterWithFlags(const DrawImageRectOp* op,
const PaintFlags* flags,
SkCanvas* canvas,
const PlaybackParams& params) {
// TODO(crbug.com/931704): make sure to support the case where paint worklet
// TODO(crbug.com/40613771): make sure to support the case where paint worklet
// generated images are used in other raster work such as canvas2d.
if (op->image.IsPaintWorklet()) {
// When rasterizing on the main thread (e.g. paint invalidation checking,

@ -134,7 +134,7 @@ class CC_PAINT_EXPORT PaintOpBuffer : public SkRefCnt {
bool context_supports_distance_field_text = true;
int max_texture_size = 0;
// TODO(crbug.com/1096123): Cleanup after study completion.
// TODO(crbug.com/40136055): Cleanup after study completion.
//
// If true, perform serializaion in a way that avoids serializing transient
// members, such as IDs, so that a stable digest can be calculated. This

@ -177,7 +177,7 @@ RasterTilePriorityQueueAll::GetNextQueues() const {
// Then, use the IsHigherPriorityThan condition for
// SAME_PRIORITY_FOR_BOTH_TREES and the rest of the priority bins.
// TODO(crbug.com/1380831): For SAME_PRIORITY_FOR_BOTH_TREES mode and both
// TODO(crbug.com/40244895): For SAME_PRIORITY_FOR_BOTH_TREES mode and both
// being NOW, should we give the priority to Active NOW instead?
if (active_priority.IsHigherPriorityThan(pending_priority)) {
return active_queues_;

@ -1320,9 +1320,9 @@ void TileManager::ScheduleTasks(PrioritizedWorkToSchedule work_to_schedule) {
// The old locked images tasks have to stay around until past the
// ScheduleTasks call below, so we do a swap instead of a move.
// TODO(crbug.com/647402): Have the tile_task_manager keep a ref on the tasks,
// since it makes it awkward for the callers to keep refs on tasks that only
// exist within the task graph runner.
// TODO(crbug.com/40485121): Have the tile_task_manager keep a ref on the
// tasks, since it makes it awkward for the callers to keep refs on tasks that
// only exist within the task graph runner.
locked_image_tasks_.swap(new_locked_image_tasks);
// We must reduce the amount of unused resources before calling

@ -4350,7 +4350,7 @@ bool LayerTreeHostImpl::AnimateLayers(base::TimeTicks monotonic_time,
// animation_host, so on the last frame of an animation we will
// still request an extra SetNeedsAnimate here.
if (animated) {
// TODO(crbug.com/1039750): If only scroll animations present, schedule a
// TODO(crbug.com/40667010): If only scroll animations present, schedule a
// frame only if scroll changes.
SetNeedsOneBeginImplFrame();
frame_trackers_.StartSequence(

@ -164,7 +164,7 @@ TEST_P(LayerTreeHostFiltersPixelTest, MAYBE_BackdropFilterBlurRadius) {
}
#endif
if (use_software_renderer()) {
// TODO(989238): Software renderer does not support/implement
// TODO(crbug.com/40036319): Software renderer does not support/implement
// kClamp_TileMode.
return;
}

@ -9404,7 +9404,7 @@ class LayerTreeHostTestDelegatedInkMetadataCompositorOnlyFrame
FakeContentLayerClient client_;
};
// TODO(crbug.com/1435551): flaky on win-asan.
// TODO(crbug.com/40265182): flaky on win-asan.
#if !(BUILDFLAG(IS_WIN) && defined(ADDRESS_SANITIZER))
SINGLE_AND_MULTI_THREAD_TEST_F(
LayerTreeHostTestDelegatedInkMetadataCompositorOnlyFrame);

@ -1111,8 +1111,8 @@ class LayerTreeHostScrollTestImplOnlyScroll : public LayerTreeHostScrollTest {
// This tests scrolling on the impl side which is only possible with a thread.
MULTI_THREAD_TEST_F(LayerTreeHostScrollTestImplOnlyScroll);
// TODO(crbug.com/574283): Mac currently doesn't support smooth scrolling wheel
// events.
// TODO(crbug.com/40451005): Mac currently doesn't support smooth scrolling
// wheel events.
#if !BUILDFLAG(IS_MAC)
// This test simulates scrolling on the impl thread such that it starts a scroll
// animation. It ensures that RequestScrollAnimationEndNotification() correctly
@ -1524,7 +1524,7 @@ class LayerTreeHostScrollTestImplOnlyMultipleScrollSnap
ElementId snap_area_b_id_;
};
// TODO(crbug.com/1243814): Test is flaky on Chrome OS (both Ash and Lacros).
// TODO(crbug.com/40787490): Test is flaky on Chrome OS (both Ash and Lacros).
#if !BUILDFLAG(IS_CHROMEOS)
MULTI_THREAD_TEST_F(LayerTreeHostScrollTestImplOnlyMultipleScrollSnap);
#endif

@ -2548,7 +2548,7 @@ LayerTreeImpl::FindLayersUpToFirstScrollableOrOpaqueToHitTest(
// The intention here is to skip over any layers that belong to a
// different 3d sorting context than the first_hit layer.
//
// TODO(crbug.com/1407697): This code is kind of broken for the case of a
// TODO(crbug.com/40887983): This code is kind of broken for the case of a
// scroller inside a preserve-3d: we assign a sorting_context_id to the
// scroller's main layer, which is marked as scrollable, but not its
// scrolling-contents layer, which is first_hit. Currently we rely on

@ -1684,7 +1684,7 @@ gfx::PointF ScrollTree::GetScrollOffsetForScrollTimeline(
const TransformNode* transform_node =
property_trees()->transform_tree().Node(scroll_node.transform_id);
// TODO(crbug.com/1418689): current_scroll_offset can disagree with
// TODO(crbug.com/40894892): current_scroll_offset can disagree with
// transform_node->scroll_offset if the delta on a main frame update is
// simply rounding of the scroll position and not using fractional scroll
// deltas (see needs_scroll_update in PushScrollUpdatesFromMainThread).
@ -1702,8 +1702,8 @@ gfx::PointF ScrollTree::GetScrollOffsetForScrollTimeline(
// snapping needed, due to floating point precision errors. In general this
// is fine, but we never want to report a negative scroll offset so avoid
// that case here.
// TODO(crbug.com/1076878): Remove the clamping when scroll timeline effects
// always match the snapping.
// TODO(crbug.com/40688441): Remove the clamping when scroll timeline
// effects always match the snapping.
offset = ClampScrollOffsetToLimits(offset - transform_node->snap_amount,
scroll_node);
}

@ -1595,8 +1595,8 @@ bool content::IsNSRange(id value) {
return nil;
}
if (!root_manager->GetParentView()) {
// TODO(crbug.com/1425682) Find out why this happens, there should always be
// a parent view. This used to be a CHECK() but caused too many crashes.
// TODO(crbug.com/40898856) Find out why this happens, there should always
// be a parent view. This used to be a CHECK() but caused too many crashes.
// Repro steps are available in the bug.
return nil;
}

@ -1503,7 +1503,7 @@ IN_PROC_BROWSER_TEST_F(CrossPlatformAccessibilityBrowserTest,
TestLocalizedLandmarkType(17, ax::mojom::Role::kSearch, "search");
}
// TODO(https://crbug.com/1020456) re-enable when crashing on linux is resolved.
// TODO(crbug.com/40656480) re-enable when crashing on linux is resolved.
#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)
#define MAYBE_LocalizedRoleDescription DISABLED_LocalizedRoleDescription
#else

@ -711,7 +711,7 @@ IN_PROC_BROWSER_TEST_P(DumpAccessibilityEventsTest,
RunEventTest(FILE_PATH_LITERAL("expanded-changed.html"));
}
// TODO(crbug.com/1423530): disabled on UIA.
// TODO(crbug.com/40897549): disabled on UIA.
// TODO(crbug.com/1423845): Failing on Mac.
// TODO(crbug.com/1423845): Actually failing everywhere. Disabled.
IN_PROC_BROWSER_TEST_P(DumpAccessibilityEventsTestExceptUIA,
@ -883,7 +883,7 @@ IN_PROC_BROWSER_TEST_P(DumpAccessibilityEventsTest,
RunEventTest(FILE_PATH_LITERAL("menulist-collapse-next.html"));
}
// TODO(crbug/1232295): Flaky on Linux and Win.
// TODO(crbug.com/40780161): Flaky on Linux and Win.
// TODO(crbug.com/1230894): locks up with popup open, only on Mac
#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC)
#define MAYBE_AccessibilityEventsMenuListExpand \

@ -159,7 +159,7 @@ class YieldingParserDumpAccessibilityTreeTest
base::test::ScopedFeatureList feature_list_;
};
// TODO(https://crbug.com/1470120): We need to create a way to incrementally
// TODO(crbug.com/40925629): We need to create a way to incrementally
// enable and create UIA tests.
INSTANTIATE_TEST_SUITE_P(
All,
@ -1619,7 +1619,7 @@ IN_PROC_BROWSER_TEST_P(DumpAccessibilityTreeTest,
RunHtmlTest(FILE_PATH_LITERAL("aside-inside-section-role-generic.html"));
}
// TODO(crbug.com/1502854): Fix failure on android
// TODO(crbug.com/40943250): Fix failure on android
#if BUILDFLAG(IS_ANDROID)
#define MAYBE_AccessibilityAudio DISABLED_AccessibilityAudio
#else
@ -2360,7 +2360,7 @@ IN_PROC_BROWSER_TEST_P(DumpAccessibilityTreeTest,
// TODO: date and time controls drop their children, including the popup button,
// on Android.
// TODO(https://crbug.com/1378498): Flaky on every platform.
// TODO(crbug.com/40875029): Flaky on every platform.
IN_PROC_BROWSER_TEST_P(DumpAccessibilityTreeTest,
DISABLED_AccessibilityInputDateWithPopupOpen) {
RunHtmlTest(FILE_PATH_LITERAL("input-date-with-popup-open.html"));
@ -2617,8 +2617,8 @@ IN_PROC_BROWSER_TEST_P(DumpAccessibilityTreeTest,
}
#if BUILDFLAG(IS_MAC)
// TODO(1038813): The /blink test pass is different on Windows and Mac, versus
// Linux. Also, see https://crbug.com/1314896.
// TODO(crbug.com/40666501): The /blink test pass is different on Windows and
// Mac, versus Linux. Also, see https://crbug.com/1314896.
#define MAYBE_AccessibilityInputTime DISABLED_AccessibilityInputTime
#else
#define MAYBE_AccessibilityInputTime AccessibilityInputTime
@ -3503,7 +3503,7 @@ IN_PROC_BROWSER_TEST_P(DumpAccessibilityTreeTest,
RunHtmlTest(FILE_PATH_LITERAL("node-changed-crash-in-editable-text.html"));
}
// TODO(https://crbug.com/1366446): This test is failing on Android.
// TODO(crbug.com/40866942): This test is failing on Android.
#if BUILDFLAG(IS_ANDROID)
#define MAYBE_AccessibilityNoSourceVideo DISABLED_AccessibilityNoSourceVideo
#else

@ -635,8 +635,8 @@ IN_PROC_BROWSER_TEST_P(AccessibilityHitTestingBrowserTest,
}
#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_MAC)
// Fails flakily with compared ID differences. TODO(crbug.com/1121099): Re-enable
// this test.
// Fails flakily with compared ID differences. TODO(crbug.com/40715277):
// Re-enable this test.
IN_PROC_BROWSER_TEST_P(AccessibilityHitTestingBrowserTest,
DISABLED_CachingAsyncHitTest_WithPinchZoom) {
ASSERT_TRUE(embedded_test_server()->Start());
@ -682,7 +682,7 @@ IN_PROC_BROWSER_TEST_P(AccessibilityHitTestingBrowserTest,
// TODO(https://crbug.com/1224978): Times out flakily on TSAN builds.
// TODO(https://crbug.com/1459570): Times out flakily on ASan builds.
// TODO(https://crbug.com/1461935): Times out flakily on win-asan.
// TODO(crbug.com/40921699): Times out flakily on win-asan.
IN_PROC_BROWSER_TEST_P(AccessibilityHitTestingBrowserTest,
DISABLED_HitTest_WithPinchZoom) {
ASSERT_TRUE(embedded_test_server()->Start());

@ -102,10 +102,10 @@ void OnPairCharacteristicStartNotifications(
constexpr int WebBluetoothPairingManagerImpl::kMaxPairAttempts;
// TODO(960258): Ensure this delegate outlives any in-progress pairing operation
// for which it is used. Additionally review use of WebBluetoothDeviceId vs.
// BluetoothDevice as well as how to deal with simultaneous pairing requests
// for the same device.
// TODO(crbug.com/40626253): Ensure this delegate outlives any in-progress
// pairing operation for which it is used. Additionally review use of
// WebBluetoothDeviceId vs. BluetoothDevice as well as how to deal with
// simultaneous pairing requests for the same device.
WebBluetoothPairingManagerImpl::WebBluetoothPairingManagerImpl(
WebBluetoothPairingManagerDelegate* pairing_manager_delegate)
: pairing_manager_delegate_(pairing_manager_delegate) {

@ -570,7 +570,7 @@ void BrowserChildProcessHostImpl::CreateMetricsAllocator() {
}
// This class is not expected to be used for renderer child processes.
// TODO(crbug/1028263): CHECK, once proven that this scenario does not
// TODO(crbug.com/40109064): CHECK, once proven that this scenario does not
// occur in the wild, else remove dump and just return early if disproven.
if (data_.process_type == PROCESS_TYPE_RENDERER) {
base::debug::DumpWithoutCrashing();

@ -539,7 +539,7 @@ void BrowsingDataRemoverImpl::RemoveImpl(
RenderProcessHostImpl::ClearAllResourceCaches();
// TODO(crbug.com/813882): implement retry on network service.
// TODO(crbug.com/40563720): implement retry on network service.
// The clearing of the HTTP cache happens in the network service process
// when enabled. Note that we've deprecated the concept of a media cache,
@ -613,7 +613,7 @@ void BrowsingDataRemoverImpl::RemoveImpl(
//////////////////////////////////////////////////////////////////////////////
// Reporting cache.
// TODO(https://crbug.com/1291489): Add unit test to cover this.
// TODO(crbug.com/40818785): Add unit test to cover this.
if (remove_mask & DATA_TYPE_COOKIES) {
network::mojom::NetworkContext* network_context =
storage_partition->GetNetworkContext();

@ -190,7 +190,7 @@ IN_PROC_BROWSER_TEST_F(
EXPECT_EQ("[]", InvokeTopicsAPI(web_contents()));
}
// TODO(crbug.com/1381167): migrate to WPT.
// TODO(crbug.com/40245082): migrate to WPT.
IN_PROC_BROWSER_TEST_F(BrowsingTopicsBrowserTest,
Fetch_TopicsHeaderNotVisibleInServiceWorker) {
GURL main_frame_url = https_server_.GetURL(

@ -1873,7 +1873,7 @@ TEST_F(CacheStorageManagerTest, GetBucketUsageConflictingBucketIds) {
EXPECT_NE(Size(bucket_locator1_), 0);
}
// TODO(crbug.com/1369300): Re-enable test for Windows.
// TODO(crbug.com/40868994): Re-enable test for Windows.
#if BUILDFLAG(IS_WIN)
#define MAYBE_GetBucketUsageWithPadding DISABLED_GetBucketUsageWithPadding
#else

@ -69,7 +69,7 @@ void PassHistogramSharedMemoryHandle(
[[maybe_unused]] base::CommandLine* command_line,
[[maybe_unused]] base::LaunchOptions* launch_options,
[[maybe_unused]] FileMappedForLaunch* files_to_register) {
// TODO(crbug.com/1028263): Once all process types support histogram shared
// TODO(crbug.com/40109064): Once all process types support histogram shared
// memory being passed at launch, remove this if.
if (!histogram_memory_region.IsValid()) {
return;
@ -78,7 +78,7 @@ void PassHistogramSharedMemoryHandle(
CHECK(command_line);
CHECK(histogram_memory_region.IsValid());
#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_APPLE)
// TODO(crbug.com/1028263): content::FileMappedForLaunch (POSIX) is redundant
// TODO(crbug.com/40109064): content::FileMappedForLaunch (POSIX) is redundant
// wrt the base::LaunchOptions::<platform-specific-handles-to-transfer>
// members. Refactor this so that the details of base::Launch vs Zygote on
// (some) POSIX platforms is an implementation detail and not exposed here.
@ -122,7 +122,7 @@ void PassFieldTrialSharedMemoryHandle(
[[maybe_unused]] FileMappedForLaunch* files_to_register) {
CHECK(command_line);
#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_APPLE)
// TODO(crbug.com/1028263): content::FileMappedForLaunch (POSIX) is redundant
// TODO(crbug.com/40109064): content::FileMappedForLaunch (POSIX) is redundant
// wrt the base::LaunchOptions::<platform-specific-handles-to-transfer>
// members. Refactor this so that the details of base::Launch vs Zygote on
// (some) POSIX platforms is an implementation detail and not exposed here.

@ -1917,7 +1917,7 @@ bool ChildProcessSecurityPolicyImpl::CanAccessMaybeOpaqueOrigin(
// require COOP/COEP handling, to pass in their COOP/COEP information
// so it can be used here instead of the values in
// |actual_process_lock|.
// TODO(crbug.com/1271197): The code below is subtly incorrect in cases
// TODO(crbug.com/40205612): The code below is subtly incorrect in cases
// where actual_process_lock.is_pdf() is true, since in the case of PDFs
// the lock is intended to prevent access to the lock's site/origin,
// while still allowing the navigation to commit.

@ -218,7 +218,7 @@ void NetworkServiceDevToolsObserver::OnCorsError(
if (!rfhi)
return;
// TODO(https://crbug.com/1268378): Remove this once enforcement is always
// TODO(crbug.com/40204695): Remove this once enforcement is always
// enabled and warnings are no more.
if (is_warning && initiator_origin.has_value()) {
if (!initiator_origin->IsSameOriginWith(url)) {

@ -113,7 +113,7 @@ namespace {
// //content/browser/permissions:permission_service_impl
// ::PermissionDescriptorToPermissionType, producing an error in
// |error_message| as necessary.
// TODO(crbug.com/989983): De-duplicate this logic.
// TODO(crbug.com/40638575): De-duplicate this logic.
Response PermissionDescriptorToPermissionType(
std::unique_ptr<protocol::Browser::PermissionDescriptor> descriptor,
PermissionType* permission_type) {

@ -446,7 +446,7 @@ MakeCookieFromProtocolValues(const std::string& name,
}
cookie_partition_key = deserialized_partition_key.value();
}
// TODO(crbug.com/1225444) Add Partitioned to DevTools cookie structures.
// TODO(crbug.com/40188414) Add Partitioned to DevTools cookie structures.
std::unique_ptr<net::CanonicalCookie> cookie =
net::CanonicalCookie::CreateSanitizedCookie(
url, name, value, normalized_domain, path, base::Time(),

@ -1209,7 +1209,7 @@ void PageHandler::CaptureScreenshot(
modified_web_prefs);
{
// TODO(crbug.com/1141835): Remove the bug is fixed.
// TODO(crbug.com/40727379): Remove the bug is fixed.
// Walkaround for the bug. Emulated `view_size` has to be set twice,
// otherwise the scrollbar will be on the screenshot present.
blink::DeviceEmulationParams tmp_params = modified_params;

@ -195,7 +195,7 @@ FencedFrameURLMapping::AssignFencedFrameURLAndInterestGroupInfo(
std::vector<blink::AdDescriptor> ad_component_descriptors,
scoped_refptr<FencedFrameReporter> fenced_frame_reporter) {
// Move pending mapped urn::uuid to `urn_uuid_to_url_map_`.
// TODO(crbug.com/1422301): Remove the check for whether `urn_uuid` has been
// TODO(crbug.com/40896818): Remove the check for whether `urn_uuid` has been
// mapped already once the crash is resolved.
CHECK(!IsMapped(urn_uuid));
auto pending_it = pending_urn_uuid_to_url_map_.find(urn_uuid);

@ -176,7 +176,7 @@ class CONTENT_EXPORT FencedFrameURLMapping {
// replacements map. The true URLs for any component ads associated with this
// URN will also have substrings substituted. This function will be removed
// once all FLEDGE auctions switch to using fenced frames.
// TODO(crbug.com/1253118): Remove this function when we remove support for
// TODO(crbug.com/40199055): Remove this function when we remove support for
// showing FLEDGE ads in iframes.
void SubstituteMappedURL(
const GURL& urn_uuid,

@ -25,7 +25,7 @@ BASE_FEATURE(kFileSystemAccessDragAndDropCheckBlocklist,
"FileSystemAccessDragAndDropCheckBlocklist",
base::FEATURE_DISABLED_BY_DEFAULT);
// TODO(crbug.com/1421735): Remove this flag eventually.
// TODO(crbug.com/40896420): Remove this flag eventually.
// When enabled, GetFile() and GetEntries() on a directory handle performs
// the blocklist check on child file handles.
BASE_FEATURE(kFileSystemAccessDirectoryIterationBlocklistCheck,

@ -515,7 +515,7 @@ void FileSystemAccessFileHandleImpl::CreateFileWriterImpl(
DCHECK_EQ(GetWritePermissionStatus(),
blink::mojom::PermissionStatus::GRANTED);
// TODO(crbug.com/1241401): Expand this check to all backends.
// TODO(crbug.com/40194651): Expand this check to all backends.
if (url().type() == storage::kFileSystemTypeLocal) {
base::ThreadPool::PostTaskAndReplyWithResult(
FROM_HERE, {base::MayBlock()},
@ -648,7 +648,7 @@ void FileSystemAccessFileHandleImpl::DidTakeSwapLock(
// existence check and when file contents are copied to the new file.
// However, since we've acquired an exclusive lock to the swap file, this
// is only possible if the file is created external to this API.
// TODO(https://crbug.com/1382215): Consider requiring a lock to create an
// TODO(crbug.com/40245515): Consider requiring a lock to create an
// empty file, e.g. parent.getFileHandle(swapFileName, {create: true}).
manager()->DoFileSystemOperation(
FROM_HERE, &FileSystemOperationRunner::FileExists,

@ -504,7 +504,7 @@ TEST_F(FileSystemAccessManagerImplTest, GetSandboxedFileSystem_CustomBucket) {
// Note: we can test that the open succeeded, but because the FileSystemURL
// is not exposed to the callback we rely on WPTs to ensure the bucket
// locator was actually used.
// TODO(crbug.com/1322897): Ensure the bucket override is actually used.
// TODO(crbug.com/40224463): Ensure the bucket override is actually used.
ASSERT_TRUE(root);
}

Some files were not shown because too many files have changed in this diff Show More