Bug 142979 - Whole range's hyperlinks become inactive when formula with error pasted / filled in adjacent cell (steps in comment 8)
Summary: Whole range's hyperlinks become inactive when formula with error pasted / fil...
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
4.2.0.4 release
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords: bibisected, bisected, regression
Depends on:
Blocks: Hyperlink-Calc
  Show dependency treegraph
 
Reported: 2021-06-22 08:54 UTC by juan3
Modified: 2024-02-19 12:01 UTC (History)
7 users (show)

See Also:
Crash report or crash signature:


Attachments
Following the description of the bug, this shows the end file. Opening it doesn't fix the bug. (16.79 KB, application/vnd.oasis.opendocument.spreadsheet)
2021-06-22 16:35 UTC, juan3
Details
Smaller example ODS that can also be tested in OOo 3.3 (9.75 KB, application/vnd.oasis.opendocument.spreadsheet)
2023-05-16 09:18 UTC, Stéphane Guillou (stragu)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description juan3 2021-06-22 08:54:12 UTC
Description:
Hyperlinks stop being clickable, when there are many of them. This is only caused when they're created by a formula. This can be reproduced with safe-mode. Im using german locale.

Steps to Reproduce:
1. Create a new calc document
2. Type "1" in A1 cell, and "drag it down" (generating new numbers) to around 200
3. Create a new table, (in German locale it's called "Tabelle2") do the same as step 2, numbers may or not match
4. Go back to table 1 and on the B1 cell type the following formula `=HYPERLINK("#Tabelle2!$A$"&VERGLEICH($A1;$Tabelle2.A:A;0);A1)`
5. This link should be clickable, it works if you ctrl-click it.
6. Drag it down for 5 or 8 numbers, it still works, all of the links are clickable.
7. "Drag" it down to 200 and go beyond the numbers on column A.

Actual Results:
Links stop being clickable

Expected Results:
They should still allow themselves to be clicked


Reproducible: Always


User Profile Reset: Yes



Additional Info:
Version: 7.1.4.2 (x64) / LibreOffice Community
Build ID: a529a4fab45b75fefc5b6226684193eb000654f6
CPU threads: 8; OS: Windows 6.3 Build 9600; UI render: default; VCL: win
Locale: de-DE (de_DE); UI: de-DE
Calc: threaded
Comment 1 [REDACTED] 2021-06-22 12:57:28 UTC Comment hidden (obsolete)
Comment 2 [REDACTED] 2021-06-22 13:02:36 UTC Comment hidden (obsolete)
Comment 3 juan3 2021-06-22 16:35:06 UTC
Created attachment 173088 [details]
Following the description of the bug, this shows the end file. Opening it doesn't fix the bug.

Hi, I see you couldn't reproduce, so I tried another version, this time on Windows 8. It was reproduceable. This time with English UI. 

I'm going to upload an example file. Column B cells are not clickable, Column C cells are (ctrl) clickable. (You can follow the links, that's what I meant, maybe I wasn't clear.)

Version: 7.1.1.2 (x64) / LibreOffice Community
Build ID: fe0b08f4af1bacafe4c7ecc87ce55bb426164676
CPU threads: 4; OS: Windows 6.3 Build 9600; UI render: Skia/Raster; VCL: win
Locale: en-US (en_US); UI: en-US
Calc: CL
Comment 4 [REDACTED] 2021-06-22 16:51:54 UTC
(In reply to juan3 from comment #3)
> Hi, I see you couldn't reproduce, so I tried another version, this time on
> Windows 8. It was reproduceable. This time with English UI. 
> 
> I'm going to upload an example file. Column B cells are not clickable,
> Column C cells are (ctrl) clickable. (You can follow the links, that's what
> I meant, maybe I wasn't clear.)

OK - I see the important thing in step 7:

7. ... beyond the numbers on column A.

causing #N/A errors and which i did not perform
Comment 5 [REDACTED] 2021-06-22 16:56:13 UTC
repro (obsoletes earlier comments)

Version: 7.1.4.2 / LibreOffice Community
Build ID: a529a4fab45b75fefc5b6226684193eb000654f6
CPU threads: 8; OS: Linux 5.3; UI render: default; VCL: kf5
Locale: de-DE (de_DE.UTF-8); UI: de-DE
Calc: threaded

if following step 7 exactly by going " ... beyond the numbers on column A." and this way causing "#N/A" errors in column B.
Comment 6 ady 2023-05-15 21:46:49 UTC
There is no need to use 200 rows. I can repro with 10 rows too.

As long as the list of numbers exists, no problem.

After dragging the hyperlink function up to the first row that results in #N/A (meaning that there was no number in column A), then all "links" are broken in the sense that you cannot ctrl+click them as hyperlinks anymore. There is no "tooltip" at that point in time either (but there was before). All links, in all cells, are now "broken".

Even deleting the #N/A cell(s), the linking feature no longer works, nowhere.

There is no change in the formula; just the "linking" feature does not exist anymore.

Still repro in:

Version: 7.6.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: daf30c29be67b8b8fa361b0efd1a6cdbe087b6f8
CPU threads: 4; OS: Windows 10.0 Build 19044; UI render: Skia/Raster; VCL: win
Locale: en-US (es_AR); UI: en-US
Calc: CL threaded
Built: 2023-05-10
Comment 7 Heiko Tietze 2023-05-16 08:01:40 UTC
Confirming on Windows and Linux

Autofill into a N/A cell kills the previous hyperlinks. With the sample document fill E1:10 with =HYPERLINK("#Sheet2!$A$"&MATCH($A1;$Sheet2.A:A;0);A1) (either drag down or paste) - the cells contain links. Delete A11 and fill E11 - #N/A is shown and all links in the row are gone. Undo does not bring it back.

Ordinary bug, no UX topic. Xisco, Stephane: high priority?
Comment 8 Stéphane Guillou (stragu) 2023-05-16 09:18:00 UTC
Created attachment 187322 [details]
Smaller example ODS that can also be tested in OOo 3.3

Steps:
1. Open smaller example ODS
2. Fill cell C2 by dragging down C1 corner: hyperlinks in column C are still active.
3. Fill cells all the way to C7 by dragging down C2 corner

Result: hyperlinks in column C are inactive (including C1).

Regression as it is not reproducible in OOo 3.3, but it is in:

Version: 6.0.0.3
Build ID: 64a0f66915f38c6217de274f0aa8e15618924765
CPU threads: 8; OS: Linux 5.15; UI render: default; VCL: gtk2; 
Locale: en-AU (en_AU.UTF-8); Calc: group

And recent master build:

Version: 7.6.0.0.alpha1+ (X86_64) / LibreOffice Community
Build ID: 22950a9b008e1bb22fa9e54b5d45715e25fee764
CPU threads: 8; OS: Linux 5.15; UI render: default; VCL: gtk3
Locale: en-AU (en_AU.UTF-8); UI: en-US
Calc: threaded
Comment 9 Stéphane Guillou (stragu) 2023-05-16 09:33:36 UTC
Some more details, with same attachment 187322 [details]:

Issue only happens when the erroneous formula is added (copy-pasted or filled down) in an adjacent position to the range of hyperlinks.

For example:
- Fill down to cell C6: links still active
- Copy paste C1 into C7: inactive links.

Versus:
- Fill down to cell C5: links still active
- Copy-paste C1 into C7: links still active
- Fill down C5 to C6: links still active

Happens with #N/A error (text case above) as well as with #REF! error:

- Insert row above row 1
- Fill up C2 to C1: inactive link.

Eike, any thoughts?
Comment 10 Eike Rathke 2023-05-16 10:27:34 UTC
Likely related to the evaluation of shared formula groups.
Comment 11 raal 2023-10-07 05:09:46 UTC
(In reply to Stéphane Guillou (stragu) from comment #8)
> Created attachment 187322 [details]
> Smaller example ODS that can also be tested in OOo 3.3
> 
> Steps:
> 1. Open smaller example ODS
> 2. Fill cell C2 by dragging down C1 corner: hyperlinks in column C are still
> active.
> 3. Fill cells all the way to C7 by dragging down C2 corner
> 
> Result: hyperlinks in column C are inactive (including C1).
>

St0ohane, please can you retest the bug? I cannot reproduce with Version: 24.2.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 4c5f51a7ac4c0f7043ead2b3b48e71c33e16f992
CPU threads: 4; OS: Linux 6.2; UI render: default; VCL: gtk3
Locale: cs-CZ (cs_CZ.UTF-8); UI: en-US
Calc: threaded
Comment 12 Stéphane Guillou (stragu) 2023-10-09 11:28:06 UTC
(In reply to raal from comment #11)
> St0ohane, please can you retest the bug? I cannot reproduce with Version:
I can still reproduce in:

Version: 24.2.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 9a02f4ed071f15908624fb1cafcf6dbb72b00a1b
CPU threads: 8; OS: Linux 5.15; UI render: default; VCL: gtk3
Locale: en-AU (en_AU.UTF-8); UI: en-US
Calc: threaded

Are you testing the hyperlinks in column C? (Column B hyperlinks always remain active.)
Comment 13 Stéphane Guillou (stragu) 2024-02-19 12:01:53 UTC
Using linux-64-releases repo, first version affected is libreoffice-4.2.0.0.beta1

Bibisected with linux-42max to first bad build [df22ca31404788240550c02b5e5ed2152d5ecb54] which points to:

commit 027f8cd9442aec9c432bfcfc69f7d6e81b760eb5
author	Kohei Yoshida Tue Aug 06 19:03:47 2013 -0400
committer	Kohei Yoshida 	Mon Aug 12 19:46:25 2013 -0400
Handle shared token array correctly when adjusting formula grouping

Kohei, this is ancient, but any idea?