New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 622589 link

Starred by 2 users

Issue metadata

Status: Duplicate
Merged: issue 619519
Owner:
inactive
Closed: Oct 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Mac
Pri: 1
Type: Bug-Regression



Sign in to add a comment

Regression : Sign in overlay appears blank after dragging any internal chrome URL into it.

Reported by yfulgaon...@etouch.net, Jun 23 2016

Issue description

Chrome version : 53.0.2776.0  07025e9df358bb0249550d6124b9817333421fc0-refs/heads/master@{#401299} 32/64 bit
OS :  Windows (7,8,8.1,10)

What steps will reproduce the problem?
1) Launch chrome and go to chrome://settings.
2) Click on Avatar icon at RHS and select 'Sign in to Chrome' option. (Sign in overlay is seen)
3) Click on omnibox and select the complete URL.
4) Drag and drop the selected URL on sign in overlay, observe.

Actual : Sign in overlay appears blank after dragging any internal chrome URL into it.
Expected : Sign in overlay should not appear blank after dragging any internal chrome URL into it.

This is a regression issue, broken in 'M-53' and will soon update other info.
 
Labels: hasbisect OS-Linux OS-Mac
Owner: hush@chromium.org
Status: Assigned (was: Unconfirmed)
Manual Bisect info :
Good Build : 53.0.2768.0
Bad Build : 53.0.2769.2

Narrow Bisect info:
https://chromium.googlesource.com/chromium/src/+log/edbac87b7a0fbe93a323840e2f143686e4065b10..d3a998e1c84c2162c79852454ab8944177fccaa7?pretty=fuller&n=10000

Suspecting : r399989 ? from Narrow Bisect.

@hush : Could you please help to reassign if your change is not the cause for this change.

Note : Above issue is also seen on Linux(14.04 LTS) and Mac(10.10.5, 10.11.4) OS.

Actual_signin_overlay.mp4
1.2 MB View Download
Expected_signin.mp4
693 KB View Download
Labels: ReleaseBlock-Stable
Adding RB label as this is a recent regression
Cc: anthonyvd@chromium.org
Labels: -ReleaseBlock-Stable
hush@, if your change indeed made this possible, is there some setup the sign in flow can perform on its web view to prevent accepting dragged links like this? If so, I'll be happy to implement it.

Comment 4 by hush@chromium.org, Jun 23 2016

I'll take a look

Comment 5 by hush@chromium.org, Jun 23 2016

Cc: dcheng@chromium.org lfg@chromium.org
re #3: I'm not very familiar with the <webview> tag. (CC-ed lfg@)

This issue is indeed caused by my change. When the URL is dropped, it changes from chrome://settings/ to "about:blank" because of the FilterDropData logic I added. 
https://cs.chromium.org/chromium/src/content/browser/browser_plugin/browser_plugin_guest.cc?rcl=0&l=808
chrome://settings/ is considered "unsafe" and converted to about:blank as a result.

I guess, the solution is just not to filter the data? --- dcheng@, what do you think?

By the way, if you drag and drop an innocuous URL like google.com, then things still work.

Comment 6 by dcheng@chromium.org, Jun 23 2016

Cc: creis@chromium.org
I think the ability for this to previously navigate to chrome:// URLs should be considered a bug.

We should fix it, but this is not the right level. See issue 619519 for more details.

Comment 7 by hush@chromium.org, Jun 23 2016

So... is this working as intended?

Comment 8 by dcheng@chromium.org, Jun 23 2016

The end result isn't very good... but yeah, I'd say so. There's a fairly straightforward path to fixing this for the non-<webview> case, but I'm not so sure how we'd fix it for legacy <webview>: the data roundtrips through the renderer, and at that point, we really can't trust what we got.

Comment 9 by creis@chromium.org, Jun 23 2016

I'm confused about the difference between having the drag try to navigate to chrome://settings / about:blank (in Actual_signin_overlay.mp4) and having it put the text in the form input (in Expected_signin.mp4).

Trying to navigate to chrome:// URLs inside that webview is definitely a bug and a possible security issue (which should be caught in several places, like the FilterURL call you added).

I don't see a problem with allowing the text to be dragged into the form input as in Expected_signin.mp4.  Why did that change from being form input to being a navigation?

FWIW, I don't think we should allow any drags to be navigations inside the signin overlay, even if they're normal web URLs.  Is that feasible?

Comment 10 by hush@chromium.org, Jun 24 2016

I agree that the best behavior would be allowing URL to be dragged as texts but not allowing navigating to the URL.
On top of my head, I don't know where/how do we decide to navigate to a dragged URL or simply insert the URL as input.

Comment 11 by hush@chromium.org, Jun 29 2016

okay. After I read crbug.com/619519, I think the decision to navigate or to drop the URL as text is made in blink, and we want to change the decision maker to browser.
https://cs.chromium.org/chromium/src/third_party/WebKit/Source/core/page/DragController.cpp?rcl=0&l=274

So I don't think there is anything to do here.
Merge into crbug.com/619519 ?
Project Member

Comment 12 by sheriffbot@chromium.org, Jul 3 2016

Labels: -M-53 M-54 MovedFrom-53
Moving this nonessential bug to the next milestone.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: -M-54 M-55
Just to update,

Able to reproduce the issue on Mac OS using canary build 55.0.2878.0 Thank you!

Comment 14 by hush@chromium.org, Oct 21 2016

Mergedinto: 619519
Status: Duplicate (was: Assigned)

Sign in to add a comment