Bug 132097 - Find Previous with direction columns crashes in specific condition
Summary: Find Previous with direction columns crashes in specific condition
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
6.3.0.0.alpha1+
Hardware: x86-64 (AMD64) Linux (All)
: high major
Assignee: Julien Nabet
URL:
Whiteboard: target:7.0.0 target:6.4.4 target:6.3....
Keywords: bibisected, bisected, haveBacktrace, regression
Depends on:
Blocks:
 
Reported: 2020-04-14 11:00 UTC by trahanmd
Modified: 2020-05-07 13:36 UTC (History)
5 users (show)

See Also:
Crash report or crash signature: ["SfxDispatchController_Impl::`scalar deleting destructor'(unsigned int)"]


Attachments
bt with debug symbols (4.08 KB, text/plain)
2020-04-14 11:36 UTC, Julien Nabet
Details

Note You need to log in before you can comment on or make changes to this bug.
Description trahanmd 2020-04-14 11:00:32 UTC
Description:
Crash if I use Find Previous. These are checked: Entire cells, All sheets, Diacritic-sensitive, Columns. Cells contain Swedish words.

Steps to Reproduce:
1.Have multiple tabs with words in each tab.
2.ctrl-h for find/replace
3.set options as noted above, click Find Previous for some word.

Actual Results:
Freezes application but not the O.S. Presents "Wait/Force Quit" window, but ignores choice. Application closed by kill -9.

Expected Results:
Should find occurrence of word, or fail.


Reproducible: Always


User Profile Reset: No



Additional Info:
Version: 6.4.2.2
Build ID: libreoffice-6.4.2.2-snap1
CPU threads: 4; OS: Linux 4.15; UI render: default; VCL: gtk3; 
Locale: en-US (en_US.UTF-8); UI-Language: en-US
Calc: threaded
Comment 1 Julien Nabet 2020-04-14 11:34:12 UTC
On pc Debian x86-64 with master sources updated today, I could reproduce this.

Here's a minimal step by step to reproduce this
- Launch Calc
- Ctrl H => open Search replace dialog
- Click "Columns" in Direction part (bottom left of the dialog)
- Type some word in "Find" part
- Click "Find Previous" button
=> crash
Comment 2 Julien Nabet 2020-04-14 11:36:00 UTC
Created attachment 159553 [details]
bt with debug symbols
Comment 3 Julien Nabet 2020-04-14 12:30:48 UTC
Let's give a try with:
https://gerrit.libreoffice.org/c/core/+/92165
Comment 4 Xisco Faulí 2020-04-15 13:49:26 UTC
it hangs for me in

Version: 7.0.0.0.alpha0+
Build ID: 24e1563b5db3de5abac0d4fd0f737ec319e703e8
CPU threads: 4; OS: Linux 4.19; UI render: default; VCL: x11; 
Locale: en-US (en_US.UTF-8); UI-Language: en-US
Calc: threaded
Comment 5 Xisco Faulí 2020-04-15 14:18:36 UTC
This is a regression introduced in libreoffice-6-3. I tried to bisect it but the results aren't acurrated
Comment 6 Xisco Faulí 2020-04-15 14:35:38 UTC
Tried again to bisect it and I think I found which commit introduced it:

https://cgit.freedesktop.org/libreoffice/core/commit/?id=fce7c123203c91f62b45447f45e1d1f1b45d5b48

author	Luboš Luňák <l.lunak@collabora.com>	2019-05-14 15:59:29 +0200
committer	Luboš Luňák <l.lunak@collabora.com>	2019-05-14 22:06:44 +0200
commit fce7c123203c91f62b45447f45e1d1f1b45d5b48 (patch)
tree 0a5e4973d4d2a208b4b1722fe94c072a5d4db0d2
parent aa446591b7feb5bb667533ef7acdfc636105f9d9 (diff)
cache cell positions when searching in calc (tdf#108347)

Bisected with: bibisect-linux64-6.3

Adding Cc: to Luboš Luňák
Comment 7 Commit Notification 2020-04-16 06:22:46 UTC
Julien Nabet committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/2670e980c7dbadbdc20ff23d57ad892951edc254

tdf#132097: fix Find Previous with direction columns crashes in specific case

It will be available in 7.0.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 8 Julien Nabet 2020-04-16 07:16:31 UTC
Cherry-pick for 6.4 branch waiting for review here:
https://gerrit.libreoffice.org/c/core/+/92296
Comment 9 Xisco Faulí 2020-04-16 16:56:07 UTC
Verified in

Version: 7.0.0.0.alpha0+
Build ID: acedbb8692bc84c93114dc4d441b3eb20b3ac467
CPU threads: 4; OS: Linux 4.19; UI render: default; VCL: gtk3; 
Locale: en-US (en_US.UTF-8); UI-Language: en-US
Calc: threaded

@Julien, thanks for fixing this issue!!
Comment 10 Commit Notification 2020-04-16 16:59:20 UTC
Julien Nabet committed a patch related to this issue.
It has been pushed to "libreoffice-6-4":

https://git.libreoffice.org/core/commit/9a48470a613323bc1ebf68ed1a3cb595d55908fc

tdf#132097: fix Find Previous with direction columns crashes in specific case

It will be available in 6.4.4.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 11 Commit Notification 2020-04-16 17:00:47 UTC
Julien Nabet committed a patch related to this issue.
It has been pushed to "libreoffice-6-3":

https://git.libreoffice.org/core/commit/fed70d60f7ea4b2fb9828c485ba4945343274ea8

tdf#132097: fix Find Previous with direction columns crashes in specific case

It will be available in 6.3.7.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 12 Commit Notification 2020-04-16 21:28:30 UTC
Xisco Fauli committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/96f77910e86f88c99621a8b17c09fc69f9f1d8f3

tdf#132097: sc: Add UItest

It will be available in 7.0.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 13 Commit Notification 2020-04-21 10:26:48 UTC
Julien Nabet committed a patch related to this issue.
It has been pushed to "libreoffice-6-3-6":

https://git.libreoffice.org/core/commit/dd9f4ba468ca1e738f19e65e438713638d4b4ac2

tdf#132097: fix Find Previous with direction columns crashes in specific case

It will be available in 6.3.6.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 14 Commit Notification 2020-05-07 13:35:45 UTC
Luboš Luňák committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/58c87f8261abf4f1528a43dc501e956cb9c1d2f2

sanitize properly Calc search bounds (tdf#132097)

It will be available in 7.0.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 15 Luboš Luňák 2020-05-07 13:36:37 UTC
I should've used bug #132783 in the commit message.