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

Issue 821454 link

Starred by 4 users

Issue metadata

Status: Fixed
Owner:
Closed: Mar 2018
Cc:
Components:
EstimatedDays: ----
NextAction: 2018-03-16
OS: Linux , Windows , Chrome , Mac
Pri: 1
Type: Bug-Regression



Sign in to add a comment

Regression: The link in PDF is not clickable under specific conditions

Reported by jan.toso...@gmail.com, Mar 13 2018

Issue description

UserAgent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.146 Safari/537.36

Example URL:

Steps to reproduce the problem:
1. Open the attached PDF file in Chrome
2. Click the second link (impossible)

What is the expected behavior?
The second link works fine, same as the first one.

What went wrong?
No pointer cursor is displayed when hovering the link and even clicking doesn't trigger scrolling to the target anchor (located on the next page).

Does it occur on multiple sites: N/A

Is it a problem with a plugin? N/A 

Did this work before? Yes 64.0.3282.186

Does this work in other browsers? Yes

Chrome version: 65.0.3325.146  Channel: stable
OS Version: 10.0
Flash Version: 

It seems to be caused by values of fragment identifiers. The first one is a subset of the second one (#Target10 vs #Target 100).
 
non-clickable-link.pdf
6.8 KB Download
Labels: Needs-Bisect Needs-Triage-M65
Components: Internals>Skia>PDF
Labels: -Pri-2 -Type-Compat -Needs-Bisect hasbisect-per-revision Target-66 Target-67 Triaged-ET RegressedIn-65 M-65 FoundIn-66 FoundIn-67 Target-65 FoundIn-65 ReleaseBlock-Stable OS-Linux OS-Mac Pri-1 Type-Bug-Regression
Owner: thestig@chromium.org
Status: Assigned (was: Unconfirmed)
Able to reproduce the issue on Windows 10, mac 10.13.3 and Ubuntu 14.04 using chrome reported version #65.0.3325.146 and latest canary #67.0.3368.1.

Bisect Information:
=====================
Good build: 65.0.3292.0
Bad Build : 65.0.3293.0

Change Log URL: 
https://chromium.googlesource.com/chromium/src/+log/8bbdf20f8d3e3a85e63645afe23bae2ea2e79be6..12e9b1cc542a5f3b8f5be14316ef2a7c43cbf8e1

pdfium-deps-roller CL:
https://pdfium.googlesource.com/pdfium.git/+log/f7aa204aafe9..ebcbb85ea364

From the above change log suspecting below change
Change-Id: I3b0954e0cad31a600b0a990360ab370186c792d6
Reviewed-on: https://pdfium-review.googlesource.com/20850

thestig@ - Could you please check whether this is caused with respect to your change, if not please help us in assigning it to the right owner.
Note: Adding stable blocker for M-65 as it seems to be a recent regression. Please feel free to remove the same if not appropriate.

Thanks...!!
Components: -Internals>Skia>PDF Internals>Plugins>PDF
It's actually https://pdfium.googlesource.com/pdfium.git/+/f3a7edc07aee2a12cf02ee33471c45b4c6b00307
Status: Started (was: Assigned)
Will fix soon.
Labels: -Needs-Triage-M65 M-66
Labels: OS-Chrome
Reproducible on Chrome 65.0.3325.164/10323.57.0 -Kip
Project Member

Comment 7 by bugdroid1@chromium.org, Mar 14 2018

The following revision refers to this bug:
  https://pdfium.googlesource.com/pdfium/+/40c223e4ed41e991f81281ca08b3085e218c52dc

commit 40c223e4ed41e991f81281ca08b3085e218c52dc
Author: Lei Zhang <thestig@chromium.org>
Date: Wed Mar 14 18:08:36 2018

Fix bad return value in WideString::Compare().

When comparing L"a" vs L"ab", the return value should be -1 or 1, not 0
or 1. Add a regression test for this case.

BUG= chromium:821454 

Change-Id: I38e2d7ca62319b7a62f8d8afeb231b8ed3bd9e86
Reviewed-on: https://pdfium-review.googlesource.com/28570
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>

[modify] https://crrev.com/40c223e4ed41e991f81281ca08b3085e218c52dc/core/fxcrt/widestring.cpp
[modify] https://crrev.com/40c223e4ed41e991f81281ca08b3085e218c52dc/core/fxcrt/widestring_unittest.cpp

Project Member

Comment 8 by bugdroid1@chromium.org, Mar 14 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d2468fc15ca782e540b5300ac6271d965abb0ce2

commit d2468fc15ca782e540b5300ac6271d965abb0ce2
Author: pdfium-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com <pdfium-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Date: Wed Mar 14 20:28:23 2018

Roll src/third_party/pdfium/ 2c3cfa734..40c223e4e (1 commit)

https://pdfium.googlesource.com/pdfium.git/+log/2c3cfa734d03..40c223e4ed41

$ git log 2c3cfa734..40c223e4e --date=short --no-merges --format='%ad %ae %s'
2018-03-14 thestig Fix bad return value in WideString::Compare().

Created with:
  roll-dep src/third_party/pdfium
BUG= 821454 


The AutoRoll server is located here: https://pdfium-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.


TBR=dsinclair@chromium.org

Change-Id: I686ce1083770018cbe352bbfe6e902a9fd48f0c2
Reviewed-on: https://chromium-review.googlesource.com/963014
Reviewed-by: pdfium-chromium-autoroll <pdfium-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: pdfium-chromium-autoroll <pdfium-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#543183}
[modify] https://crrev.com/d2468fc15ca782e540b5300ac6271d965abb0ce2/DEPS

Labels: Merge-Request-66
Verified with 3371 Canary.
Labels: TE-Verified-M67 TE-Verified-67.0.3371.0
Able to reproduce the issue on Mac 10.13.3, Win-10 and Ubuntu 14.04 using chrome reported version #65.0.3325.146

Verified the fix on Mac 10.13.3, Win-10 and Ubuntu 14.04 using Chrome version #67.0.3371.0 as per the comment #0.
Attaching screen cast for reference.
Observed that pointer cursor is displayed when hovering the link2 and clicking on that link triggered scrolling to the target anchor.
Hence, the fix is working as expected. 
Adding the verified labels.

Thanks...!!
821454.mp4
246 KB View Download
Labels: Merge-Request-65
The fix is safe and I would really like to merge it to M65.
Labels: -Merge-Request-65 Merge-Approved-65
Approving merge to M65 branch 3325 based on comment #9, #10 and #11. Please merge tomorrow morning if you like to have more canary coverage. Thank you.

Also pls mark the bug as fixed if nothing else is pending.
Project Member

Comment 13 by sheriffbot@chromium.org, Mar 15 2018

Labels: -Merge-Request-66 Merge-Review-66 Hotlist-Merge-Review
This bug requires manual review: DEPS changes referenced in bugdroid comments.
Please contact the milestone owner if you have questions.
Owners: cmasso@(Android), cmasso@(iOS), josafat@(ChromeOS), abdulsyed@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Status: Fixed (was: Started)
Project Member

Comment 15 by bugdroid1@chromium.org, Mar 15 2018

Labels: -merge-approved-65 merge-merged-3325
The following revision refers to this bug:
  https://pdfium.googlesource.com/pdfium/+/aaf58321fcaefae4bdf2419b5094f810cdcb1a49

commit aaf58321fcaefae4bdf2419b5094f810cdcb1a49
Author: Lei Zhang <thestig@chromium.org>
Date: Thu Mar 15 20:58:27 2018

M65: Fix bad return value in WideString::Compare().

When comparing L"a" vs L"ab", the return value should be -1 or 1, not 0
or 1. Add a regression test for this case.

BUG= chromium:821454 
TBR=rharrison@chromium.org

Change-Id: I38e2d7ca62319b7a62f8d8afeb231b8ed3bd9e86
Reviewed-on: https://pdfium-review.googlesource.com/28570
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
(cherry picked from commit 40c223e4ed41e991f81281ca08b3085e218c52dc)
Reviewed-on: https://pdfium-review.googlesource.com/28650
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>

[modify] https://crrev.com/aaf58321fcaefae4bdf2419b5094f810cdcb1a49/core/fxcrt/widestring.cpp
[modify] https://crrev.com/aaf58321fcaefae4bdf2419b5094f810cdcb1a49/core/fxcrt/widestring_unittest.cpp

Cc: abdulsyed@chromium.org
abdulsyed: It's me again. I made a silly mistake that needs fixing. I already merged to M65.
Labels: -Merge-Review-66 Merge-Approved-66
Approving for M66. Branch:3359
thestig@, thank you for quick fix and merge to M65. Requesting postmortem for this. Please see go/chrome-postmortems for the process to follow.
NextAction: 2018-03-16
Pls verify this fix on M65 version 65.0.3325.169 tomorrow.
The NextAction date has arrived: 2018-03-16
Labels: TE-Verified-M65 TE-Verified-65.0.3325.169
Able to reproduce the issue on Mac 10.13.3, Win-10 and Ubuntu 14.04 using chrome reported version #65.0.3325.146

Verified the fix on Mac 10.13.3, Win-10 and Ubuntu 14.04 using Chrome version #65.0.3325.169 as per the comment #0.
Attaching screen cast for reference.
Observed that pointer cursor is displayed when hovering the link2 and clicking on that link triggered scrolling to the target anchor.
Hence, the fix is working as expected. 
Adding the verified labels.

Thanks...!!
821454@M65.mp4
341 KB View Download
Project Member

Comment 22 by bugdroid1@chromium.org, Mar 16 2018

Labels: -merge-approved-66 merge-merged-3359
The following revision refers to this bug:
  https://pdfium.googlesource.com/pdfium/+/e99a1901e09ba467ffa5657f176bebe649e25b9d

commit e99a1901e09ba467ffa5657f176bebe649e25b9d
Author: Lei Zhang <thestig@chromium.org>
Date: Fri Mar 16 18:42:17 2018

M66: Fix bad return value in WideString::Compare().

When comparing L"a" vs L"ab", the return value should be -1 or 1, not 0
or 1. Add a regression test for this case.

BUG= chromium:821454 
TBR=rharrison@chromium.org

Change-Id: I38e2d7ca62319b7a62f8d8afeb231b8ed3bd9e86
Reviewed-on: https://pdfium-review.googlesource.com/28570
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: Ryan Harrison <rharrison@chromium.org>
(cherry picked from commit 40c223e4ed41e991f81281ca08b3085e218c52dc)
Reviewed-on: https://pdfium-review.googlesource.com/28711
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>

[modify] https://crrev.com/e99a1901e09ba467ffa5657f176bebe649e25b9d/core/fxcrt/widestring.cpp
[modify] https://crrev.com/e99a1901e09ba467ffa5657f176bebe649e25b9d/core/fxcrt/widestring_unittest.cpp

Verified with 65.0.3325.169 on Linux. (And with Canary on Windows yesterday)
Thank you Lei for quick fix and merge. 
Requesting postmortem for this. Please see go/chrome-postmortems for the process to follow. 
Labels: -TE-Verified-65.0.3325.169 TE-Verified-65.0.3325.177
Verified the fix on Mac 10.13.3, Win-10 and Ubuntu 14.04 using Chrome version #65.0.3325.177 as per the comment #0.
Attaching screen cast for reference.
Observed that pointer cursor is displayed when hovering the link2 and clicking on that link triggered scrolling to the target anchor.
Hence, the fix is working as expected. 
Adding the verified labels.

Thanks...!!
821454@M65.0.3325.177.mp4
297 KB View Download
Filed  bug 823369  for writing a higher level regression test.
This patch is now pushing out to stable channel in version 65.0.3325.181 for Desktop (Win,Mac & Linux).
Verified on Chrome 65.0.3325.184/10323.62.0 - Candy

Sign in to add a comment