Chrome use-mobile-user-agent not working
The string is built to "Chrome/53.0.2785.116 Mobile" in GetShellUserAgent
, then in BuildUserAgentFromProduct
, product is not used, and passed on to BuildUserAgentFromOSAndProduct
, which is supposed to format a string as such;
"Mozilla/5.0 (%s) AppleWebKit/%d.%d (KHTML, like Gecko) %s Safari/%d.%d"
The product string is inserted into token four, where the fourth replacement token is before "Safari". Therefore "Chrome/53.0.2785.116 Mobile" should be placed there.
With and without the flag, my user agent is the same.
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36
So what does this mean, is it broken? Quite possibly.
In src/extensions/shell/common/shell_content_client.cc
, BuildUserAgentFromProduct("Chrome/" PRODUCT_VERSION)
is called in ShellContentClient::GetUserAgent
. That just circumvents the call to GetShellUserAgent
.
Well. There goes the mobile user agent flag. There's other places it's possible for the product to be replaced, but that's the one that sticks out as the culprit.