media: Provide detailed UserAgent string for provisioning [chromium/src : main]

0 views
Skip to first unread message

Vikram Pasupathy (Gerrit)

unread,
Oct 7, 2025, 6:16:40 PM (3 days ago) Oct 7
to Chromium LUCI CQ, chromium...@chromium.org, feature-me...@chromium.org
Attention needed from Feras Aldahlawi

Vikram Pasupathy voted Commit-Queue+1

Commit-Queue+1
Open in Gerrit

Related details

Attention is currently required from:
  • Feras Aldahlawi
Submit Requirements:
  • requirement satisfiedCode-Coverage
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: chromium/src
Gerrit-Branch: main
Gerrit-Change-Id: Ia87f91b1e61f22190b74edd440d3f966df2570ea
Gerrit-Change-Number: 7018142
Gerrit-PatchSet: 2
Gerrit-Owner: Vikram Pasupathy <vpasu...@chromium.org>
Gerrit-Reviewer: Feras Aldahlawi <f...@chromium.org>
Gerrit-Reviewer: Vikram Pasupathy <vpasu...@chromium.org>
Gerrit-Attention: Feras Aldahlawi <f...@chromium.org>
Gerrit-Comment-Date: Tue, 07 Oct 2025 22:16:17 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: Yes
satisfied_requirement
unsatisfied_requirement
open
diffy

Feras Aldahlawi (Gerrit)

unread,
Oct 8, 2025, 2:46:09 PM (2 days ago) Oct 8
to Vikram Pasupathy, Chromium LUCI CQ, chromium...@chromium.org, feature-me...@chromium.org
Attention needed from Vikram Pasupathy

Feras Aldahlawi added 1 comment

File content/browser/media/url_provision_fetcher.cc
Line 37, Patchset 3 (Latest):const std::string& GetDetailedUserAgent() {
Feras Aldahlawi . unresolved

We already have android specific directory. Minimize buildflag usage in this file and add a new android only functionality in https://source.chromium.org/chromium/chromium/src/+/main:content/browser/media/android/?q=f:content%20f:browser%20f:media%20f:android

Open in Gerrit

Related details

Attention is currently required from:
  • Vikram Pasupathy
Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: Ia87f91b1e61f22190b74edd440d3f966df2570ea
    Gerrit-Change-Number: 7018142
    Gerrit-PatchSet: 3
    Gerrit-Owner: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-Reviewer: Feras Aldahlawi <f...@chromium.org>
    Gerrit-Reviewer: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-Attention: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-Comment-Date: Wed, 08 Oct 2025 18:45:46 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Vikram Pasupathy (Gerrit)

    unread,
    Oct 8, 2025, 3:18:22 PM (2 days ago) Oct 8
    to Chromium LUCI CQ, chromium...@chromium.org, feature-me...@chromium.org
    Attention needed from Feras Aldahlawi

    Vikram Pasupathy added 1 comment

    File content/browser/media/url_provision_fetcher.cc
    Line 37, Patchset 3 (Latest):const std::string& GetDetailedUserAgent() {
    Feras Aldahlawi . unresolved

    We already have android specific directory. Minimize buildflag usage in this file and add a new android only functionality in https://source.chromium.org/chromium/chromium/src/+/main:content/browser/media/android/?q=f:content%20f:browser%20f:media%20f:android

    Vikram Pasupathy

    This function is pretty small and is directly related to the provisioning request which is why I kept it here in the anonymous namespace.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Feras Aldahlawi
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: Ia87f91b1e61f22190b74edd440d3f966df2570ea
    Gerrit-Change-Number: 7018142
    Gerrit-PatchSet: 3
    Gerrit-Owner: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-Reviewer: Feras Aldahlawi <f...@chromium.org>
    Gerrit-Reviewer: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-Attention: Feras Aldahlawi <f...@chromium.org>
    Gerrit-Comment-Date: Wed, 08 Oct 2025 19:18:01 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Feras Aldahlawi <f...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Feras Aldahlawi (Gerrit)

    unread,
    Oct 9, 2025, 1:31:33 PM (2 days ago) Oct 9
    to Vikram Pasupathy, Chromium LUCI CQ, chromium...@chromium.org, feature-me...@chromium.org
    Attention needed from Vikram Pasupathy

    Feras Aldahlawi added 1 comment

    File content/browser/media/url_provision_fetcher.cc
    Line 37, Patchset 3 (Latest):const std::string& GetDetailedUserAgent() {
    Feras Aldahlawi . unresolved

    We already have android specific directory. Minimize buildflag usage in this file and add a new android only functionality in https://source.chromium.org/chromium/chromium/src/+/main:content/browser/media/android/?q=f:content%20f:browser%20f:media%20f:android

    Vikram Pasupathy

    This function is pretty small and is directly related to the provisioning request which is why I kept it here in the anonymous namespace.

    Feras Aldahlawi

    Creations of provision fetcher is already platform dependent. You can add another parameter to `CreateProvisionFetcher` that takes a custom user agent with a reasonable default and store that as member variable.

    Then in `Retrieve` call, you can use the custom user agent without buildflags.

    That is better because it removes the custom logic from this common implementation and make it the responsibility of a platform dependent files (e.g. `#include "media/mojo/services/android_mojo_util.h"`) responsible for creating their desired user agents.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Vikram Pasupathy
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: Ia87f91b1e61f22190b74edd440d3f966df2570ea
    Gerrit-Change-Number: 7018142
    Gerrit-PatchSet: 3
    Gerrit-Owner: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-Reviewer: Feras Aldahlawi <f...@chromium.org>
    Gerrit-Reviewer: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-Attention: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-Comment-Date: Thu, 09 Oct 2025 17:31:05 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Feras Aldahlawi <f...@chromium.org>
    Comment-In-Reply-To: Vikram Pasupathy <vpasu...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Vikram Pasupathy (Gerrit)

    unread,
    Oct 9, 2025, 8:10:19 PM (2 days ago) Oct 9
    to Zijie He, Rijubrata Bhaumik, AyeAye, Chromium LUCI CQ, chromium...@chromium.org, fuchsia...@chromium.org, creis...@chromium.org, mfoltz+wa...@chromium.org, jophba...@chromium.org, alexmo...@chromium.org, navigation...@chromium.org, eme-r...@chromium.org, chfreme...@chromium.org, feature-me...@chromium.org
    Attention needed from Feras Aldahlawi

    Vikram Pasupathy added 1 comment

    File content/browser/media/url_provision_fetcher.cc
    Line 37, Patchset 3:const std::string& GetDetailedUserAgent() {
    Feras Aldahlawi . unresolved

    We already have android specific directory. Minimize buildflag usage in this file and add a new android only functionality in https://source.chromium.org/chromium/chromium/src/+/main:content/browser/media/android/?q=f:content%20f:browser%20f:media%20f:android

    Vikram Pasupathy

    This function is pretty small and is directly related to the provisioning request which is why I kept it here in the anonymous namespace.

    Feras Aldahlawi

    Creations of provision fetcher is already platform dependent. You can add another parameter to `CreateProvisionFetcher` that takes a custom user agent with a reasonable default and store that as member variable.

    Then in `Retrieve` call, you can use the custom user agent without buildflags.

    That is better because it removes the custom logic from this common implementation and make it the responsibility of a platform dependent files (e.g. `#include "media/mojo/services/android_mojo_util.h"`) responsible for creating their desired user agents.

    Vikram Pasupathy

    Please take a look now, I did it so its explicitly specified in Fuchsia.

    I would have set the default argument for the user agent string, but binding doesn't take supply the default arg, and also now its more explicit at each call site.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Feras Aldahlawi
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: Ia87f91b1e61f22190b74edd440d3f966df2570ea
    Gerrit-Change-Number: 7018142
    Gerrit-PatchSet: 11
    Gerrit-Owner: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-Reviewer: Feras Aldahlawi <f...@chromium.org>
    Gerrit-Reviewer: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-CC: Rijubrata Bhaumik <rijubrat...@intel.com>
    Gerrit-CC: Zijie He <zij...@google.com>
    Gerrit-Attention: Feras Aldahlawi <f...@chromium.org>
    Gerrit-Comment-Date: Fri, 10 Oct 2025 00:09:55 +0000
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Feras Aldahlawi (Gerrit)

    unread,
    Oct 9, 2025, 9:40:10 PM (2 days ago) Oct 9
    to Vikram Pasupathy, Zijie He, Rijubrata Bhaumik, AyeAye, Chromium LUCI CQ, chromium...@chromium.org, fuchsia...@chromium.org, creis...@chromium.org, mfoltz+wa...@chromium.org, jophba...@chromium.org, alexmo...@chromium.org, navigation...@chromium.org, eme-r...@chromium.org, chfreme...@chromium.org, feature-me...@chromium.org
    Attention needed from Vikram Pasupathy

    Feras Aldahlawi added 4 comments

    File content/browser/media/url_provision_fetcher.h
    Line 42, Patchset 13 (Latest): std::string user_agent_;
    Feras Aldahlawi . unresolved

    make this `const`.

    Line 22, Patchset 13 (Latest): explicit URLProvisionFetcher(
    scoped_refptr<network::SharedURLLoaderFactory> url_loader_factory,
    std::string user_agent);
    Feras Aldahlawi . unresolved

    What you can do to have a 'default' user_agent is to leave this ctor unchanged, and have another ctor that takes two parameters. Then in Android, you call the ctor that takes two arguments and pass in a custom `user_agent`.

    File content/browser/media/url_provision_fetcher.cc
    Line 37, Patchset 3:const std::string& GetDetailedUserAgent() {
    Feras Aldahlawi . resolved

    We already have android specific directory. Minimize buildflag usage in this file and add a new android only functionality in https://source.chromium.org/chromium/chromium/src/+/main:content/browser/media/android/?q=f:content%20f:browser%20f:media%20f:android

    Vikram Pasupathy

    This function is pretty small and is directly related to the provisioning request which is why I kept it here in the anonymous namespace.

    Feras Aldahlawi

    Creations of provision fetcher is already platform dependent. You can add another parameter to `CreateProvisionFetcher` that takes a custom user agent with a reasonable default and store that as member variable.

    Then in `Retrieve` call, you can use the custom user agent without buildflags.

    That is better because it removes the custom logic from this common implementation and make it the responsibility of a platform dependent files (e.g. `#include "media/mojo/services/android_mojo_util.h"`) responsible for creating their desired user agents.

    Vikram Pasupathy

    Please take a look now, I did it so its explicitly specified in Fuchsia.

    I would have set the default argument for the user agent string, but binding doesn't take supply the default arg, and also now its more explicit at each call site.

    Feras Aldahlawi

    Much better. Thank you for doing this.

    File content/browser/media/url_provision_fetcher_unittest.cc
    Line 47, Patchset 13 (Latest):#if BUILDFLAG(IS_ANDROID)
    TEST_F(URLProvisionFetcherTest, AndroidUserAgent) {
    const std::string expected_user_agent = base::StringPrintf(
    "Widevine CDM v1.0 (Linux; U; Android %d; %s; %s; %s; %s Build/%s; %s)",
    base::android::android_info::sdk_int(),
    base::android::GetDefaultLocaleString().c_str(),
    base::android::android_info::manufacturer(),
    base::android::android_info::model(),
    base::android::android_info::device(),
    base::android::android_info::android_build_id(),
    base::android::android_info::build_type());

    base::RunLoop run_loop;
    auto fetcher = std::make_unique<URLProvisionFetcher>(
    shared_url_loader_factory_, expected_user_agent);
    fetcher->Retrieve(GURL(kTestUrl), kTestRequestBody,
    base::BindOnce([](bool, const std::string&) {
    }).Then(run_loop.QuitClosure()));

    // We need to manually complete the request to trigger the callback.
    EXPECT_EQ(test_url_loader_factory_.NumPending(), 1);
    EXPECT_EQ(
    expected_user_agent,
    test_url_loader_factory_.GetPendingRequest(0)->request.headers.GetHeader(
    net::HttpRequestHeaders::kUserAgent));
    test_url_loader_factory_.SimulateResponseForPendingRequest(
    kExpectedRequestUrl, "");
    run_loop.Run();
    }
    #else // BUILDFLAG(IS_ANDROID)
    TEST_F(URLProvisionFetcherTest, NonAndroidUserAgent) {
    constexpr char kDefaultUserAgent[] = "Widevine CDM v1.0";

    base::RunLoop run_loop;
    auto fetcher = std::make_unique<URLProvisionFetcher>(
    shared_url_loader_factory_, kDefaultUserAgent);
    fetcher->Retrieve(GURL(kTestUrl), kTestRequestBody,
    base::BindOnce([](bool, const std::string&) {
    }).Then(run_loop.QuitClosure()));

    // We need to manually complete the request to trigger the callback.
    EXPECT_EQ(test_url_loader_factory_.NumPending(), 1);
    EXPECT_EQ(
    kDefaultUserAgent,
    test_url_loader_factory_.GetPendingRequest(0)->request.headers.GetHeader(
    net::HttpRequestHeaders::kUserAgent));
    test_url_loader_factory_.SimulateResponseForPendingRequest(
    kExpectedRequestUrl, "");
    run_loop.Run();
    }
    #endif // BUILDFLAG(IS_ANDROID)

    } // namespace content
    Feras Aldahlawi . unresolved

    This should be one test that looks like this:
    ```
    TEST_F(... ) {
    // arrange
    base::Runloop run_loop;
    ...

    // act
    fetcher->Retrieve(..);

    // expectations
    #if BUILDFLAG(ANDROID)
    EXPECT_EQ(android_user_agent);
    #else
    EXPEC_EQ(default_user_agent);
    #endif
    ```


    Alternatively, you can setup expectations in `//arrange` section. But I prefer to have the branching closer to where it is needed.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Vikram Pasupathy
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: Ia87f91b1e61f22190b74edd440d3f966df2570ea
    Gerrit-Change-Number: 7018142
    Gerrit-PatchSet: 13
    Gerrit-Owner: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-Reviewer: Feras Aldahlawi <f...@chromium.org>
    Gerrit-Reviewer: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-CC: Rijubrata Bhaumik <rijubrat...@intel.com>
    Gerrit-CC: Zijie He <zij...@google.com>
    Gerrit-Attention: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-Comment-Date: Fri, 10 Oct 2025 01:39:48 +0000
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Vikram Pasupathy (Gerrit)

    unread,
    Oct 10, 2025, 12:27:39 AM (yesterday) Oct 10
    to Zijie He, Rijubrata Bhaumik, AyeAye, Chromium LUCI CQ, chromium...@chromium.org, fuchsia...@chromium.org, creis...@chromium.org, mfoltz+wa...@chromium.org, jophba...@chromium.org, alexmo...@chromium.org, navigation...@chromium.org, eme-r...@chromium.org, chfreme...@chromium.org, feature-me...@chromium.org
    Attention needed from Feras Aldahlawi

    Vikram Pasupathy added 3 comments

    File content/browser/media/url_provision_fetcher.h
    Line 42, Patchset 13: std::string user_agent_;
    Feras Aldahlawi . resolved

    make this `const`.

    Vikram Pasupathy

    Done

    Line 22, Patchset 13: explicit URLProvisionFetcher(

    scoped_refptr<network::SharedURLLoaderFactory> url_loader_factory,
    std::string user_agent);
    Feras Aldahlawi . unresolved

    What you can do to have a 'default' user_agent is to leave this ctor unchanged, and have another ctor that takes two parameters. Then in Android, you call the ctor that takes two arguments and pass in a custom `user_agent`.

    Vikram Pasupathy

    I don't like how I have to modify content/public/browser/provision_fetcher_factory.h to get this to work, but I agree with you that this is the way to go. Any suggestions to get it better?

    File content/browser/media/url_provision_fetcher_unittest.cc
    Line 47, Patchset 13:#if BUILDFLAG(IS_ANDROID)
    Feras Aldahlawi . resolved

    This should be one test that looks like this:
    ```
    TEST_F(... ) {
    // arrange
    base::Runloop run_loop;
    ...

    // act
    fetcher->Retrieve(..);

    // expectations
    #if BUILDFLAG(ANDROID)
    EXPECT_EQ(android_user_agent);
    #else
    EXPEC_EQ(default_user_agent);
    #endif
    ```


    Alternatively, you can setup expectations in `//arrange` section. But I prefer to have the branching closer to where it is needed.

    Vikram Pasupathy

    Done

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Feras Aldahlawi
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: Ia87f91b1e61f22190b74edd440d3f966df2570ea
    Gerrit-Change-Number: 7018142
    Gerrit-PatchSet: 17
    Gerrit-Owner: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-Reviewer: Feras Aldahlawi <f...@chromium.org>
    Gerrit-Reviewer: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-CC: Rijubrata Bhaumik <rijubrat...@intel.com>
    Gerrit-CC: Zijie He <zij...@google.com>
    Gerrit-Attention: Feras Aldahlawi <f...@chromium.org>
    Gerrit-Comment-Date: Fri, 10 Oct 2025 04:27:17 +0000
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Feras Aldahlawi (Gerrit)

    unread,
    Oct 10, 2025, 11:14:34 AM (14 hours ago) Oct 10
    to Vikram Pasupathy, Zijie He, Rijubrata Bhaumik, AyeAye, Chromium LUCI CQ, chromium...@chromium.org, fuchsia...@chromium.org, creis...@chromium.org, mfoltz+wa...@chromium.org, jophba...@chromium.org, alexmo...@chromium.org, navigation...@chromium.org, eme-r...@chromium.org, chfreme...@chromium.org, feature-me...@chromium.org
    Attention needed from Vikram Pasupathy

    Feras Aldahlawi added 4 comments

    File content/browser/media/url_provision_fetcher.h
    Line 24, Patchset 17 (Latest): explicit URLProvisionFetcher(
    Feras Aldahlawi . unresolved

    `explicit` is only for single argument ctors. You can remove this.

    Line 20, Patchset 17 (Latest):class CONTENT_EXPORT URLProvisionFetcher : public media::ProvisionFetcher {
    Feras Aldahlawi . unresolved

    You can remove this. See my comment in unittest.

    Line 22, Patchset 13: explicit URLProvisionFetcher(
    scoped_refptr<network::SharedURLLoaderFactory> url_loader_factory,
    std::string user_agent);
    Feras Aldahlawi . resolved

    What you can do to have a 'default' user_agent is to leave this ctor unchanged, and have another ctor that takes two parameters. Then in Android, you call the ctor that takes two arguments and pass in a custom `user_agent`.

    Vikram Pasupathy

    I don't like how I have to modify content/public/browser/provision_fetcher_factory.h to get this to work, but I agree with you that this is the way to go. Any suggestions to get it better?

    Feras Aldahlawi

    I think introducing a new function in `content/public/browser/provision_fetcher_factory.h` is the correct way. Good naming as well.

    File content/browser/media/url_provision_fetcher_unittest.cc
    Line 64, Patchset 17 (Latest): auto fetcher = std::make_unique<URLProvisionFetcher>(
    shared_url_loader_factory_, expected_user_agent);
    Feras Aldahlawi . unresolved

    Instead of using `URLProvisionFetcher` ctor, use your newly added factory function `CreateProvisionFetcherWithUserAgent`. That way, you are testing your new factory as well, and can avoid `CONTENT_EXPORT`-ing exporting `URLProvisionFetcher`.

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Vikram Pasupathy
    Submit Requirements:
    • requirement satisfiedCode-Coverage
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: chromium/src
    Gerrit-Branch: main
    Gerrit-Change-Id: Ia87f91b1e61f22190b74edd440d3f966df2570ea
    Gerrit-Change-Number: 7018142
    Gerrit-PatchSet: 17
    Gerrit-Owner: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-Reviewer: Feras Aldahlawi <f...@chromium.org>
    Gerrit-Reviewer: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-CC: Rijubrata Bhaumik <rijubrat...@intel.com>
    Gerrit-CC: Zijie He <zij...@google.com>
    Gerrit-Attention: Vikram Pasupathy <vpasu...@chromium.org>
    Gerrit-Comment-Date: Fri, 10 Oct 2025 15:14:11 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Feras Aldahlawi <f...@chromium.org>
    Comment-In-Reply-To: Vikram Pasupathy <vpasu...@chromium.org>
    satisfied_requirement
    unsatisfied_requirement
    open
    diffy

    Vikram Pasupathy (Gerrit)

    unread,
    Oct 10, 2025, 7:46:27 PM (6 hours ago) Oct 10
    to Zijie He, Rijubrata Bhaumik, AyeAye, Chromium LUCI CQ, chromium...@chromium.org, fuchsia...@chromium.org, creis...@chromium.org, mfoltz+wa...@chromium.org, jophba...@chromium.org, alexmo...@chromium.org, navigation...@chromium.org, eme-r...@chromium.org, chfreme...@chromium.org, feature-me...@chromium.org
    Attention needed from Feras Aldahlawi

    Vikram Pasupathy voted and added 3 comments

    Votes added by Vikram Pasupathy

    Commit-Queue+1

    3 comments

    File content/browser/media/url_provision_fetcher.h
    Line 24, Patchset 17: explicit URLProvisionFetcher(
    Feras Aldahlawi . resolved

    `explicit` is only for single argument ctors. You can remove this.

    Vikram Pasupathy

    Done

    Line 20, Patchset 17:class CONTENT_EXPORT URLProvisionFetcher : public media::ProvisionFetcher {
    Feras Aldahlawi . resolved

    You can remove this. See my comment in unittest.

    Vikram Pasupathy

    Done

    File content/browser/media/url_provision_fetcher_unittest.cc
    Line 64, Patchset 17: auto fetcher = std::make_unique<URLProvisionFetcher>(
    shared_url_loader_factory_, expected_user_agent);
    Feras Aldahlawi . resolved

    Instead of using `URLProvisionFetcher` ctor, use your newly added factory function `CreateProvisionFetcherWithUserAgent`. That way, you are testing your new factory as well, and can avoid `CONTENT_EXPORT`-ing exporting `URLProvisionFetcher`.

    Vikram Pasupathy

    Done

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Feras Aldahlawi
    Submit Requirements:
      • requirement satisfiedCode-Coverage
      • requirement is not satisfiedCode-Owners
      • requirement is not satisfiedCode-Review
      • requirement is not satisfiedReview-Enforcement
      Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
      Gerrit-MessageType: comment
      Gerrit-Project: chromium/src
      Gerrit-Branch: main
      Gerrit-Change-Id: Ia87f91b1e61f22190b74edd440d3f966df2570ea
      Gerrit-Change-Number: 7018142
      Gerrit-PatchSet: 18
      Gerrit-Owner: Vikram Pasupathy <vpasu...@chromium.org>
      Gerrit-Reviewer: Feras Aldahlawi <f...@chromium.org>
      Gerrit-Reviewer: Vikram Pasupathy <vpasu...@chromium.org>
      Gerrit-CC: Rijubrata Bhaumik <rijubrat...@intel.com>
      Gerrit-CC: Zijie He <zij...@google.com>
      Gerrit-Attention: Feras Aldahlawi <f...@chromium.org>
      Gerrit-Comment-Date: Fri, 10 Oct 2025 23:46:06 +0000
      Gerrit-HasComments: Yes
      Gerrit-Has-Labels: Yes
      Comment-In-Reply-To: Feras Aldahlawi <f...@chromium.org>
      satisfied_requirement
      unsatisfied_requirement
      open
      diffy

      Feras Aldahlawi (Gerrit)

      unread,
      Oct 10, 2025, 8:08:31 PM (6 hours ago) Oct 10
      to Vikram Pasupathy, Zijie He, Rijubrata Bhaumik, AyeAye, Chromium LUCI CQ, chromium...@chromium.org, fuchsia...@chromium.org, creis...@chromium.org, mfoltz+wa...@chromium.org, jophba...@chromium.org, alexmo...@chromium.org, navigation...@chromium.org, eme-r...@chromium.org, chfreme...@chromium.org, feature-me...@chromium.org
      Attention needed from Vikram Pasupathy

      Feras Aldahlawi voted and added 3 comments

      Votes added by Feras Aldahlawi

      Code-Review+1

      3 comments

      File content/browser/media/url_provision_fetcher.h
      Line 26, Patchset 18 (Latest): std::string user_agent);
      Feras Aldahlawi . unresolved

      Change to const string&.

      Line 8, Patchset 18 (Latest):#include "content/common/content_export.h"
      Feras Aldahlawi . unresolved

      Remove.

      File content/browser/media/url_provision_fetcher.cc
      Line 134, Patchset 18 (Latest): return std::make_unique<URLProvisionFetcher>(std::move(url_loader_factory));
      Feras Aldahlawi . unresolved

      Did you want to remove this?

      Open in Gerrit

      Related details

      Attention is currently required from:
      • Vikram Pasupathy
      Submit Requirements:
        • requirement satisfiedCode-Coverage
        • requirement is not satisfiedCode-Owners
        • requirement satisfiedCode-Review
        • requirement is not satisfiedNo-Unresolved-Comments
        • requirement satisfiedReview-Enforcement
        Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
        Gerrit-MessageType: comment
        Gerrit-Project: chromium/src
        Gerrit-Branch: main
        Gerrit-Change-Id: Ia87f91b1e61f22190b74edd440d3f966df2570ea
        Gerrit-Change-Number: 7018142
        Gerrit-PatchSet: 18
        Gerrit-Owner: Vikram Pasupathy <vpasu...@chromium.org>
        Gerrit-Reviewer: Feras Aldahlawi <f...@chromium.org>
        Gerrit-Reviewer: Vikram Pasupathy <vpasu...@chromium.org>
        Gerrit-CC: Rijubrata Bhaumik <rijubrat...@intel.com>
        Gerrit-CC: Zijie He <zij...@google.com>
        Gerrit-Attention: Vikram Pasupathy <vpasu...@chromium.org>
        Gerrit-Comment-Date: Sat, 11 Oct 2025 00:08:05 +0000
        Gerrit-HasComments: Yes
        Gerrit-Has-Labels: Yes
        satisfied_requirement
        unsatisfied_requirement
        open
        diffy
        Reply all
        Reply to author
        Forward
        0 new messages