Bug 93953 - Crash when accessing Tools > Macros > Organize Macros > Javascript while in backtrace mode
Summary: Crash when accessing Tools > Macros > Organize Macros > Javascript while in b...
Status: RESOLVED INSUFFICIENTDATA
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: LibreOffice (show other bugs)
Version:
(earliest affected)
5.1.0.0.alpha0+ Master
Hardware: Other All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords: regression
Depends on:
Blocks:
 
Reported: 2015-09-05 20:36 UTC by Yousuf Philips (jay) (retired)
Modified: 2016-11-08 13:03 UTC (History)
5 users (show)

See Also:
Crash report or crash signature:


Attachments
backtrace (3.22 KB, text/plain)
2015-09-05 20:36 UTC, Yousuf Philips (jay) (retired)
Details
backtrace (18.31 KB, text/plain)
2015-09-06 11:50 UTC, Yousuf Philips (jay) (retired)
Details
dbg build backtrace 2 (18.31 KB, text/plain)
2015-09-08 05:48 UTC, Yousuf Philips (jay) (retired)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Yousuf Philips (jay) (retired) 2015-09-05 20:36:38 UTC
Created attachment 118446 [details]
backtrace

Steps:
1) Open libreoffice
2) Tools > Macros > Organize Macros > Javascript
3) Crash

Regression as this doesnt happen in 5.0 daily.

Version: 5.1.0.0.alpha1+
Build ID: cf9fbdb379e2935677a73ced513d7faf855c299c
TinderBox: Linux-rpm_deb-x86_64@70-TDF, Branch:master, Time: 2015-09-05_00:34:47
Locale: en-US (en_US.UTF-8)
Comment 1 Jean-Baptiste Faure 2015-09-05 21:31:11 UTC
No crash for me with Version: 5.1.0.0.alpha1+
Build ID: d417059dae303685de7aa0f4b1c192ffcf5304d5
Ubuntu_15.04_x86-64
Locale : fr-FR (fr_FR.UTF-8)
built at home with GCC 5.1

Best regards. JBF
Comment 2 Julien Nabet 2015-09-06 07:13:08 UTC
On pc Debian x86-64 with master sources updated 2 days ago, I don't reproduce this.
I tried with SAL_USE_VCLPLUGIN=gtk3 then gtk and finally gen. I couldn't test with kde since I don't build with this option.
Perhaps due to some accesbility option enabled?
Comment 3 Maxim Monastirsky 2015-09-06 08:07:38 UTC
(In reply to Yousuf (Jay) Philips from comment #0)
> Created attachment 118446 [details]
> backtrace
Useless unfortunately, it has no stack.

> Version: 5.1.0.0.alpha1+
> Build ID: cf9fbdb379e2935677a73ced513d7faf855c299c
> TinderBox: Linux-rpm_deb-x86_64@70-TDF, Branch:master, Time:
> 2015-09-05_00:34:47
> Locale: en-US (en_US.UTF-8)
Can't reproduce with the same build under Fedora 22 (64-bit).
Comment 4 Yousuf Philips (jay) (retired) 2015-09-06 11:50:34 UTC
Created attachment 118461 [details]
backtrace

(In reply to Julien Nabet from comment #2)
> Perhaps due to some accesbility option enabled?

I do have accessibility enabled, but dont use it.

(In reply to Maxim Monastirsky from comment #3)
> Useless unfortunately, it has no stack.

Hopefully this debug build backtrace will be useful.

Version: 5.1.0.0.alpha1+
Build ID: b2363e98af7b0281279617e43b8fec5b898b9120
TinderBox: Linux-rpm_deb-x86_64@70-TDF-dbg, Branch:master, Time: 2015-08-25_23:42:26
Locale: en-US (en_US.UTF-8)
Comment 5 Julien Nabet 2015-09-06 11:55:10 UTC
this part:
Program received signal SIGSEGV, Segmentation fault.
0x00007fffa9f8bb4d in ?? ()
#0  0x00007fffa9f8bb4d in ?? ()
#1  0x00007fffa9f2e310 in ?? ()
#2  0x0000000000000000 in ?? ()
makes me think about something Java related.
Indeed, when I run gdb to retrieve a bt for Base, I must run continue command 1 or 2 times to have the "real" bt.
Just a guess of course since I don't see the real bt here just some threads.

Yousuf: just to be sure, do you use brand new profile?
Comment 6 Jacques Guilleron 2015-09-06 14:36:29 UTC
I reproduce with 
LO 5.1.0.0.alpha1+ Build ID: d417059dae303685de7aa0f4b1c192ffcf5304d5
TinderBox: Win-x86@39, Branch:master, Time: 2015-09-05_09:23:01
Locale: fr-FR (fr_FR)
but not with
LO 5.0.1.2 Build ID: 81898c9f5c0d43f3473ba111d7b351050be20261
Locale : fr-FR (fr_FR)
OS: Windows 7 Home Premium
Comment 7 Yousuf Philips (jay) (retired) 2015-09-07 01:57:28 UTC
(In reply to Julien Nabet from comment #5)
> Yousuf: just to be sure, do you use brand new profile?

Yes the dbg daily builds use their own internal profile.
Comment 8 Michael Meeks 2015-09-07 14:05:47 UTC
Can't reproduce with windows 32bit build from 37a04c46c5de7. Nor on Linux with -  32ab58fb0bbe7e76536758de66e4fb13f4870ef.
Trace looks like stack corruption of some sort - nasty to chase that; its possible but unlikely that a valgrind trace would help. I would suspect Java too for this sort of case FWIW ;-)
Then again - quite possibly the segv you get in gdb there is one that Java creates, expects and handles (java uses SEGVs for various reasons) - can you do 'continue' and if it doesn't exit but crashes again - get a new backtrace ?

When you say it crashes - were you using a SEGV under gdb to mean a crash ? they are far from all crashes =)
Comment 9 Yousuf Philips (jay) (retired) 2015-09-08 05:47:47 UTC
(In reply to Michael Meeks from comment #8)
> Trace looks like stack corruption of some sort - nasty to chase that; its
> possible but unlikely that a valgrind trace would help. I would suspect Java
> too for this sort of case FWIW ;-)
> Then again - quite possibly the segv you get in gdb there is one that Java
> creates, expects and handles (java uses SEGVs for various reasons) - can you
> do 'continue' and if it doesn't exit but crashes again - get a new backtrace
> ?

Unfortunately i didnt follow this? All i did was execute './soffice --backtrace' from the commandline and it crashed and dropped me back at the command prompt. Here is the output at the commandline.

warn:ucb.ucp.gio:28666:1:ucb/source/ucp/gio/gio_content.cxx:400: ignoring GError "The specified location is not supported" for <vnd.sun.star.job:alias=UpdateCheck>
warn:ucb.ucp.gio:28666:1:ucb/source/ucp/gio/gio_content.cxx:400: ignoring GError "The specified location is not supported" for <service:com.sun.star.deployment.ui.PackageManagerDialog>
Comment 10 Yousuf Philips (jay) (retired) 2015-09-08 05:48:27 UTC
Created attachment 118512 [details]
dbg build backtrace 2
Comment 11 Julien Nabet 2015-09-08 07:04:27 UTC
Yousuf: perhaps I'm wrong but the bt still shows "???".
It might be useful to use the other way to retrieve a bt, ie attach soffice process to gdb https://wiki.documentfoundation.org/Development/How_to_debug#Attaching_to_the_soffice.bin_process
then when it segfaults with "???", type "c" (for "continue") until you have something else than "???". At this moment, just type "bt".
Hope it helps.
Comment 12 Michael Meeks 2015-09-08 09:55:39 UTC
> All i did was execute './soffice --backtrace'

Unfortunately that's not going to work in this case. Almost certainly this is a deliberate, Java produced SEGV and its different from the one you want to catch, it should be handled silently.

We should really improve our 'gdbtrace' series of commands to catch and print in a nice loop there; however ... quickly prototyping that here with a while (1) etc. etc. doesn't work at all well for me.

A quick hack might be to add a good number of:

bt
thread apply all bt
continue
bt
thread apply all bt
continue

to the program/gdbtrace file to get several backtraces - thanks !
Comment 13 Yousuf Philips (jay) (retired) 2015-09-08 11:28:30 UTC
(In reply to Julien Nabet from comment #11)
> Yousuf: perhaps I'm wrong but the bt still shows "???".
> It might be useful to use the other way to retrieve a bt, ie attach soffice
> process to gdb
> https://wiki.documentfoundation.org/Development/
> How_to_debug#Attaching_to_the_soffice.bin_process

I tried that method and not sure what to do next as LO has halted and at the (gdb) commandline. The wiki says "After attaching to the soffice.bin process gdb stops the program." and i have no idea what that is supposed to mean.

Well it seems the crash should be reproducible by all when libreoffice is run in backtrace mode (./soffice --backtrace).
Comment 14 Julien Nabet 2015-09-08 11:58:44 UTC
(In reply to Yousuf (Jay) Philips from comment #13)
> ...
> I tried that method and not sure what to do next as LO has halted and at the
> (gdb) commandline. The wiki says "After attaching to the soffice.bin process
> gdb stops the program." and i have no idea what that is supposed to mean.
> 
> Well it seems the crash should be reproducible by all when libreoffice is
> run in backtrace mode (./soffice --backtrace).

Sorry, I forgot to say that once in gdb it indeed halt, so you just have to type "c" (for continue) and so reproduce the pb.

In fact, I quoted this because it seemed that it might be difficult to retrieve an useful bt in this specific case with the usual way.
Comment 15 Robinson Tryon (qubit) 2015-12-14 05:32:38 UTC Comment hidden (obsolete)
Comment 16 Joel Madero 2015-12-15 06:48:18 UTC
What's the status here? I don't see any reason to keep a bibisectRequest on it until it's independently confirmed on a recent master build. Removing for now. If it's still a problem with a current master and can be confirmed by both Jay and another person, toss it back into bibisectRequest and I'll see what I can do.
Comment 17 Yousuf Philips (jay) (retired) 2015-12-15 10:59:06 UTC
Still reproducible on Linux Mint 17.1 XFCE.

Version: 5.2.0.0.alpha0+
Build ID: 8a086a2c08efe2037957b959109e72b8bb3e27b7
Threads 2; Ver: Linux 3.13; Render: default; 
TinderBox: Linux-rpm_deb-x86_64@70-TDF, Branch:master, Time: 2015-12-07_08:17:11
Locale: en-US (en_US.UTF-8)
Comment 18 Michael Meeks 2015-12-15 17:01:12 UTC
hmm; so if you have a debug build; perhaps it would be better to generate a core file =) if you can ensure you're running soffice from a write-able directory and do:

ulimit -c unlimited

and run it until it crashes.

Then we should have a core.12345 file.

You should be able to load that in gdb:

gdb /path/to/soffice.bin core.12345
thread apply all backtrace

And then we'll have the detail we need to chase the real crash; not the Java related SEGV =)

Thanks !
Comment 19 Yousuf Philips (jay) (retired) 2016-03-08 22:14:32 UTC
(In reply to Michael Meeks from comment #18)
> hmm; so if you have a debug build; perhaps it would be better to generate a
> core file =) if you can ensure you're running soffice from a write-able
> directory and do:

yes i have a write-able directory.

> ulimit -c unlimited

i ran this at the commandline and it didnt output anything.

> and run it until it crashes.

then i ran `./soffice --backtrace` and caused the crash

> Then we should have a core.12345 file.

but no core.12345 file was created.
Comment 20 Xisco Faulí 2016-10-10 11:25:22 UTC Comment hidden (obsolete)
Comment 21 QA Administrators 2016-11-08 13:03:16 UTC
Dear Bug Submitter,

Please read this message in its entirety before proceeding.

Your bug report is being closed as INSUFFICIENTDATA due to inactivity and
a lack of information which is needed in order to accurately
reproduce and confirm the problem. We encourage you to retest
your bug against the latest release. If the issue is still
present in the latest stable release, we need the following
information (please ignore any that you've already provided):

a) Provide details of your system including your operating
   system and the latest version of LibreOffice that you have
   confirmed the bug to be present

b) Provide easy to reproduce steps – the simpler the better

c) Provide any test case(s) which will help us confirm the problem

d) Provide screenshots of the problem if you think it might help

e) Read all comments and provide any requested information

Once all of this is done, please set the bug back to UNCONFIRMED
and we will attempt to reproduce the issue. Please do not:

a) respond via email 

b) update the version field in the bug or any of the other details
   on the top section of our bug tracker

Warm Regards,
QA Team

MassPing-NeedInfo-20161108