Bug 53337 - CRASH - using search function in built-in help causes crash
Summary: CRASH - using search function in built-in help causes crash
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: LibreOffice (show other bugs)
Version:
(earliest affected)
3.6.0.4 release
Hardware: x86-64 (AMD64) All
: medium normal
Assignee: Caolán McNamara
URL:
Whiteboard: target:3.7.0 target:3.6.2
Keywords: regression
: 51384 53652 56348 (view as bug list)
Depends on:
Blocks: 43489
  Show dependency treegraph
 
Reported: 2012-08-10 11:27 UTC by Stefan Lands
Modified: 2012-10-24 11:24 UTC (History)
9 users (show)

See Also:
Crash report or crash signature:


Attachments
crashlog on mac os x 10.7.4 (52.00 KB, text/plain)
2012-08-19 13:27 UTC, ted bug
Details
clutching at straws, perhaps this might help (1.70 KB, patch)
2012-08-24 10:16 UTC, Caolán McNamara
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Stefan Lands 2012-08-10 11:27:44 UTC
Problem description: Writer is crashing when searching in offline-help. I tried this on several different installations. This happens only with the x86_64 Linux version of this package. The x86 Linux version as well as the Windows version are doing well.

Steps to reproduce:
1. Install LibO_3.6.0_Linux_x86-64_langpack-deb_de.tar.gz
2. Install LibO_3.6.0_Linux_x86_langpack-deb_de.tar.gz
3. Install LibO_3.6.0_Linux_x86-64_helppack-deb_de.tar.gz
4. Start LibreOffice-Writer
5. Hit "F1" to get the help
6. Go to "Search"-Tab
7. Enter any search phrase and hit enter

Current behavior: Writer is crashing immediately. When started from terminal you get the following error message: "terminate called after throwing an instance of 'CLuceneError'"

Expected behavior: Present some search results, or at least do not crash

Platform (if different from the browser): 
              
Browser: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:14.0) Gecko/20100101 Firefox/14.0.1
Comment 1 ted bug 2012-08-19 13:13:25 UTC
same problem for me.
mac osx 10.7.4 libreoffice 3.6.0.4 release

not just writer,
i started with calc and then tried just with the start centre, it still crashes when searching for anything the the "Find" tab and click find or hit enter.

attaching crashlog..
crashes everytime
1. start libreoffice
2. startcentre appears.
3. go to help menu, or press f1
4. go to 'find' tab
5. enter any search term
6. click find
Comment 2 ted bug 2012-08-19 13:27:31 UTC
Created attachment 65777 [details]
crashlog on mac os x 10.7.4
Comment 3 Alex Thurgood 2012-08-19 14:17:01 UTC
Changed title to better reflect situation
Comment 4 Alex Thurgood 2012-08-19 14:19:11 UTC
/opt/libreoffice3.6/program/soffice
terminate called after throwing an instance of 'CLuceneError'
Comment 5 Alex Thurgood 2012-08-19 14:24:32 UTC
Program received signal SIGABRT, Aborted.
0x00007ffff710e3a5 in raise () from /lib/x86_64-linux-gnu/libc.so.6
(gdb) bt
#0  0x00007ffff710e3a5 in raise () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007ffff7111b0b in abort () from /lib/x86_64-linux-gnu/libc.so.6
#2  0x00007ffff77bd654 in __gnu_cxx::__verbose_terminate_handler() ()
   from /opt/libreoffice3.6/program/../ure-link/lib/libstdc++.so.6
#3  0x00007ffff77bb646 in ?? () from /opt/libreoffice3.6/program/../ure-link/lib/libstdc++.so.6
#4  0x00007ffff77bb673 in std::terminate() () from /opt/libreoffice3.6/program/../ure-link/lib/libstdc++.so.6
#5  0x00007ffff77bb75a in __cxa_throw () from /opt/libreoffice3.6/program/../ure-link/lib/libstdc++.so.6
#6  0x00007fffdb634774 in lucene::store::FSDirectory::getDirectory(char const*, lucene::store::LockFactory*) ()
   from /opt/libreoffice3.6/program/../program/libclucene.so
#7  0x00007fffdb685130 in lucene::index::IndexReader::open(char const*, bool, lucene::index::IndexDeletionPolicy*) ()
   from /opt/libreoffice3.6/program/../program/libclucene.so
#8  0x00007fffdb0e19c5 in HelpSearch::query(rtl::OUString const&, bool, std::vector<rtl::OUString, std::allocator<rtl::OUString> >&, std::vector<float, std::allocator<float> >&) () from /opt/libreoffice3.6/program/../program/libhelplinkerlo.so
#9  0x00007fffdb9dadf2 in ?? () from /opt/libreoffice3.6/program/../program/libucpchelp1.so
#10 0x00007fffdb99fd75 in ?? () from /opt/libreoffice3.6/program/../program/libucpchelp1.so
#11 0x00007fffdb9d2d15 in ?? () from /opt/libreoffice3.6/program/../program/libucpchelp1.so
#12 0x00007ffff418c5cc in ?? () from /opt/libreoffice3.6/program/libucbhelper4gcc3.so
#13 0x00007ffff418c8fc in ucbhelper::ResultSetImplHelper::getStaticResultSet() ()
   from /opt/libreoffice3.6/program/libucbhelper4gcc3.so
#14 0x00007ffff5895603 in ?? () from /opt/libreoffice3.6/program/libsfxlo.so
#15 0x00007ffff5857319 in ?? () from /opt/libreoffice3.6/program/libsfxlo.so
#16 0x00007ffff584df32 in ?? () from /opt/libreoffice3.6/program/libsfxlo.so
#17 0x00007ffff3a4c69a in Window::PreNotify(NotifyEvent&) () from /opt/libreoffice3.6/program/libvcllo.so
#18 0x00007ffff3a5e39b in ?? () from /opt/libreoffice3.6/program/libvcllo.so
#19 0x00007ffff3a6043d in ?? () from /opt/libreoffice3.6/program/libvcllo.so
#20 0x00007fffe9a7817b in ?? () from /opt/libreoffice3.6/program/libvclplug_gtklo.so
#21 0x00007fffe9a79490 in ?? () from /opt/libreoffice3.6/program/libvclplug_gtklo.so
#22 0x00007fffe951a828 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#23 0x00007fffe823c0a4 in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#24 0x00007fffe824e02a in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#25 0x00007fffe8257483 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#26 0x00007fffe8257852 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#27 0x00007fffe9634dc1 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#28 0x00007fffe9518af7 in gtk_propagate_event () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#29 0x00007fffe9518d83 in gtk_main_do_event () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#30 0x00007fffe918c02c in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0
#31 0x00007fffe7d77a5d in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#32 0x00007fffe7d78258 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#33 0x00007fffe7d78429 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#34 0x00007fffe9a5cb30 in ?? () from /opt/libreoffice3.6/program/libvclplug_gtklo.so
#35 0x00007ffff379fd81 in Application::Yield(bool) () from /opt/libreoffice3.6/program/libvcllo.so
#36 0x00007ffff379fe37 in Application::Execute() () from /opt/libreoffice3.6/program/libvcllo.so
#37 0x00007ffff7925b0d in ?? () from /opt/libreoffice3.6/program/libsofficeapp.so
#38 0x00007ffff37a6717 in ?? () from /opt/libreoffice3.6/program/libvcllo.so
#39 0x00007ffff37a67e5 in SVMain() () from /opt/libreoffice3.6/program/libvcllo.so
#40 0x00007ffff7951697 in soffice_main () from /opt/libreoffice3.6/program/libsofficeapp.so
#41 0x000000000040070b in ?? ()
#42 0x00007ffff70f930d in __libc_start_main () from /lib/x86_64-linux-gnu/libc.so.6
#43 0x000000000040066a in ?? ()
#44 0x00007fffffffe7f8 in ?? ()
#45 0x000000000000001c in ?? ()
#46 0x0000000000000001 in ?? ()
#47 0x00007fffffffeaab in ?? ()
#48 0x0000000000000000 in ?? ()
(gdb) c
Continuing.
[Thread 0x7fffdcf5d700 (LWP 6430) exited]
[Thread 0x7fffde6ef700 (LWP 6426) exited]
[Thread 0x7fffe39b0700 (LWP 6423) exited]
[Thread 0x7fffece3d700 (LWP 6421) exited]
[Thread 0x7fffe41b1700 (LWP 6425) exited]

Program terminated with signal SIGABRT, Aborted.
The program no longer exists.
Comment 6 Alex Thurgood 2012-08-19 14:25:58 UTC
@Andras : assigning to you, but please re-assign if not your field

Alex
Comment 7 Alex Thurgood 2012-08-19 14:28:46 UTC
This problem doesn't exist in LibreOffice 3.5.5.2 
Build ID: 24b32b4-b87ec2e-85c8e98-87a4e20-9a1b8c1
Comment 8 Alex Thurgood 2012-08-19 20:22:07 UTC
*** Bug 53652 has been marked as a duplicate of this bug. ***
Comment 9 Babati Bence 2012-08-23 07:33:14 UTC
I can't reproduce this problem.
The SEARCH feature is working on OpenSUSE 12.1 with LibreOffice 3.7.0.0.alpha0+ (Build az.: 24d4c7f).
Comment 10 Michael Stahl (allotropia) 2012-08-23 22:14:59 UTC
i don't understand this crash. (and can't reproduce it either)

so lucene::store::FSDirectory::getDirectory can throw CLuceneError in
some places, and the std::terminate on the stack would indicate that
this exception is not caught anywhere; but it is caught in
chelp::ResultSetForQuery::ResultSetForQuery;

   try
   {
        HelpSearch searcher(aLang, idxDir);
        searcher.query(aNewQueryStr, bCaptionsOnly, aPathVector, aScoreVector);
   }
   catch (CLuceneError &e)
   {
        SAL_WARN("xmlhelp", "CLuceneError: " << e.what());
   }

which seems to be the only existing call to HelpSearch::query.

why doesn't that work?
Comment 11 Caolán McNamara 2012-08-24 08:39:10 UTC
I don't understand why, but I can reproduce it with the 3.6.0 vanilla rpms with comment #1 walkthrough
Comment 12 Caolán McNamara 2012-08-24 09:45:34 UTC
a) My 3-6 self-build doesn't crash, and catches the exception fine.
b) The 3-6 dailies from http://dev-builds.libreoffice.org/daily/Linux-x86_64_11-Release-Configuration/libreoffice-3-6/current/ don't crash and catch the exception fine
c) The 3-6 install sets from download.libreoffice.org don't catch the exception and die

caolanm->fridrich: I forget, what box actually builds the vanilla packages ?
Comment 13 Caolán McNamara 2012-08-24 10:16:54 UTC
Created attachment 66056 [details]
clutching at straws, perhaps this might help
Comment 14 Michael Stahl (allotropia) 2012-08-24 11:00:35 UTC
hmm... agree this is likely a toolchain problem; with my build on F17:

> nm -D solver/unxlngx6/lib/libclucene.so | grep CLuceneError | wc -l
20
> nm -D solver/unxlngx6/lib/libucpchelp1.so | grep CLuceneError
                 U _ZN12CLuceneError4whatEv
> nm -D solver/unxlngx6/lib/libhelplinkerlo.so | grep CLuceneError
                 U _ZN12CLuceneError4whatEv

the downloaded 3.6.0 instset:

> nm -D libclucene.so  | grep CLuceneError | wc -l
20
> nm -D libucpchelp1.so | grep CLuceneError
> nm -D libhelplinkerlo.so | grep CLuceneError

... but there are various lucene::foos in the output for these two,
so somehow the exception doesn't get imported at the clucene using libraries.

Fridrich, can you try out if Caolan's patch helps?
Comment 15 Not Assigned 2012-08-24 11:46:34 UTC
Caolan McNamara committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=715e2109f60b016f661d98a59aef674e0951a2ad

Related: fdo#53337 Maybe this is a typeinfo visibility problem
Comment 16 Not Assigned 2012-09-07 12:03:58 UTC
Caolan McNamara committed a patch related to this issue.
It has been pushed to "libreoffice-3-6":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=a251a353300e27625741338b6290a109c5588952&g=libreoffice-3-6

Related: fdo#53337 Maybe this is a typeinfo visibility problem


It will be available in LibreOffice 3.6.2.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 17 Caolán McNamara 2012-09-07 12:23:08 UTC
I'm fairly sure this is the problem, so I'll mark this as fixed. But I can't test it because my local compiler is more recent and doesn't exhibit the same problem. Here's hoping.
Comment 18 Alex Thurgood 2012-10-24 11:22:38 UTC
*** Bug 56348 has been marked as a duplicate of this bug. ***
Comment 19 Alex Thurgood 2012-10-24 11:24:22 UTC
*** Bug 51384 has been marked as a duplicate of this bug. ***