inkscape crashes when canceled import pdf

Bug #1229605 reported by Maksim Kasherny
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Inkscape
Fix Released
High
jazzynico

Bug Description

Dear, developers, sorry for opening a new bug, but I havent' time to attention reading of all bugs with this tag. Is this bug is duplicate of something than link them.

1. Open Inkscape new document
2. Open import dialog
3. Choose some *.pdf file with text in it
4. In opened dialog of some kind options select Cancel of import
5. Inkscape (segfault) crashes

SOME gdb log
$ gdb inkscape
GNU gdb (Ubuntu/Linaro 7.4-2012.04-0ubuntu2.1) 7.4-2012.04
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-linux-gnu".
For bug reporting instructions, please see:
<http://bugs.launchpad.net/gdb-linaro/>...
Reading symbols from /usr/bin/inkscape...(no debugging symbols found)...done.
(gdb) run
Starting program: /usr/bin/inkscape
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
[New Thread 0xb5590b40 (LWP 27475)]
[New Thread 0xb4bffb40 (LWP 27476)]
[New Thread 0xaca5bb40 (LWP 27477)]
[New Thread 0xab8f3b40 (LWP 27518)]
[New Thread 0xab0f2b40 (LWP 27519)]
[Thread 0xab8f3b40 (LWP 27518) exited]
[Thread 0xab0f2b40 (LWP 27519) exited]
[New Thread 0xab0f2b40 (LWP 27521)]
[Thread 0xaca5bb40 (LWP 27477) exited]
terminate called after throwing an instance of 'Inkscape::Extension::Input::open_cancelled'
  what(): Open was cancelled

Program received signal SIGABRT, Aborted.
0xb7fdd424 in __kernel_vsyscall ()
(gdb) bt
#0 0xb7fdd424 in __kernel_vsyscall ()
#1 0xb63541df in raise () from /lib/i386-linux-gnu/libc.so.6
#2 0xb6357825 in abort () from /lib/i386-linux-gnu/libc.so.6
#3 0xb65e213d in __gnu_cxx::__verbose_terminate_handler() ()
   from /usr/lib/i386-linux-gnu/libstdc++.so.6
#4 0xb65dfed3 in ?? () from /usr/lib/i386-linux-gnu/libstdc++.so.6
#5 0xb65dff0f in std::terminate() () from /usr/lib/i386-linux-gnu/libstdc++.so.6
#6 0xb65e005e in __cxa_throw () from /usr/lib/i386-linux-gnu/libstdc++.so.6
#7 0x08215ea0 in ?? ()
#8 0x08213a1b in ?? ()
#9 0x080b6240 in ?? ()
#10 0x080b6f20 in ?? ()
#11 0x081b8517 in ?? ()
#12 0x0829d629 in ?? ()
#13 0xb683b1ec in g_cclosure_marshal_VOID__VOID () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#14 0xb6839484 in g_closure_invoke () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#15 0xb684b0d9 in ?? () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#16 0xb68532dc in g_signal_emit_valist () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#17 0xb6853453 in g_signal_emit () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#18 0xb779bda6 in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0
#19 0xb779c7ed in gtk_action_activate () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0
#20 0xb795b40e in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0
#21 0xb683b243 in g_cclosure_marshal_VOID__VOIDv () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#22 0xb6839727 in ?? () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#23 0xb6852a29 in g_signal_emit_valist () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#24 0xb6853453 in g_signal_emit () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#25 0xb77b721a in gtk_button_clicked () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0
#26 0xb77b8630 in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0
#27 0xb683b1ec in g_cclosure_marshal_VOID__VOID () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#28 0xb68382fd in ?? () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#29 0xb6839484 in g_closure_invoke () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#30 0xb684b535 in ?? () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#31 0xb68532dc in g_signal_emit_valist () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#32 0xb6853453 in g_signal_emit () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#33 0xb77b713a in gtk_button_released () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0
#34 0xb77b7184 in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0
#35 0xb78768a2 in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0
#36 0xb68382fd in ?? () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#37 0xb6839484 in g_closure_invoke () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#38 0xb684b70d in ?? () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#39 0xb6852ff5 in g_signal_emit_valist () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#40 0xb6853453 in g_signal_emit () from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0
#41 0xb79b0413 in ?? () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0
#42 0xb7874a6e in gtk_propagate_event () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0
#43 0xb7874e00 in gtk_main_do_event () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0
#44 0xb76e6758 in ?? () from /usr/lib/i386-linux-gnu/libgdk-x11-2.0.so.0
#45 0xb6660d86 in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#46 0xb6661125 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#47 0xb666156b in g_main_loop_run () from /lib/i386-linux-gnu/libglib-2.0.so.0
#48 0xb7873b8f in gtk_main () from /usr/lib/i386-linux-gnu/libgtk-x11-2.0.so.0
#49 0xb7e2e194 in Gtk::Main::run_impl() () from /usr/lib/i386-linux-gnu/libgtkmm-2.4.so.1
#50 0xb7e2ebcf in Gtk::Main::run() () from /usr/lib/i386-linux-gnu/libgtkmm-2.4.so.1
#51 0x080a56c5 in ?? ()
#52 0x0808ce87 in ?? ()
#53 0xb633f4d3 in __libc_start_main () from /lib/i386-linux-gnu/libc.so.6
#54 0x080a2e21 in ?? ()

$ dpkg -l | grep ii | grep inkscape
ii inkscape-trunk 1:0.48+devel+12526+41~ubuntu12.04.1 vector-based drawing program (trunk build)
ii inkscape-trunk-data 1:0.48+devel+12526+41~ubuntu12.04.1 Data files for Inkscape

$ uname -a
Linux jmaks-laptop 3.2.0-53-generic-pae #81-Ubuntu SMP Thu Aug 22 21:23:47 UTC 2013 i686 i686 i386 GNU/Linux

OS: Ubuntu 12.04.3 LTS
cpu: Intel® Core™2 Duo CPU T5550 @ 1.83GHz × 2

Revision history for this message
su_v (suv-lp) wrote :

Not reproduced
- on Ubuntu 12.04 (VM, 64bit) with latest inkscape-trunk package, using "some *.pdf file with text in it":
$ dpkg -s inkscape-trunk | grep Version
Version: 1:0.48+devel+12577+41~ubuntu12.04.1
- on OS X 10.7.5 with r12526 (same as reporter) and r12583, using the same "some *.pdf file with text in it" as tested in the Ubuntu 12.04 VM
(6 tested builds, based on GTK+/X11 2.24.13, GTK+/Quartz 2.24.17, GTK+/X11 2.24.21)

Could you attach (or share the link to) a sample PDF file which consistently crashes inkscape-trunk on your system when canceling import?

tags: added: crash importing pdf
Changed in inkscape:
importance: Undecided → High
Revision history for this message
Maksim Kasherny (jmaks) wrote :

example pdf-file

Revision history for this message
Maksim Kasherny (jmaks) wrote :

Ok. Today I updates to last revision
(~)
└> dpkg -s inkscape-trunk | grep Version
Version: 1:0.48+devel+12591+41~ubuntu12.04.1

See that i made screenshots of process.
1. open ink
https://dl.dropboxusercontent.com/u/100271953/screens/ink/screen_2013-09-26_101753.png

2. open import dialog (opened gtk-dialog) and select pdf-file with some text e.g. 'текст.pdf' (in Russian)
https://dl.dropboxusercontent.com/u/100271953/screens/ink/screen_2013-09-26_101850.png

3. in opened ink dialog of some kinda import options 'Cancel' import
https://dl.dropboxusercontent.com/u/100271953/screens/ink/screen_2013-09-26_102018.png

4. Inkscape crashes
https://dl.dropboxusercontent.com/u/100271953/screens/ink/screen_2013-09-26_102032.png

In attachment pdf-file with generated text of LoremIpsum created with LibreOffice 4.1

Revision history for this message
jazzynico (jazzynico) wrote :

Reproduced on Windows XP, Inkscape trunk revision 12593 (default preferences).
Works as expected with File>Open, but not with File>Import.

Console message:
-----
Error: Couldn't open file 'C:\SVG\B5:AB.pdf': No such file or directory.
terminate called after throwing an instance of 'Inkscape::Extension::Input::open_cancelled'
  what(): Open was cancelled

Changed in inkscape:
status: New → Confirmed
Revision history for this message
jazzynico (jazzynico) wrote :

Note that the "B5:AB.pdf" error doesn't show when testing with latin text files but Inkscape also crashes when canceling import.

Revision history for this message
jazzynico (jazzynico) wrote :

Not reproduced with Inkscape 0.48.4.

tags: added: regression
Revision history for this message
jazzynico (jazzynico) wrote :

Patch attached.
Tested on Windows XP, Inkscape trunk revision 12593.

Changed in inkscape:
assignee: nobody → JazzyNico (jazzynico)
milestone: none → 0.49
status: Confirmed → In Progress
Revision history for this message
su_v (suv-lp) wrote :

JazzyNico wrote:
> Works as expected with File>Open, but not with File>Import.

*blush* My mistake for not following the STR correctly. Reproduced on OS X 10.7.5 too.

Revision history for this message
su_v (suv-lp) wrote :

Based on tests with archived builds (OS X):
- not reproduced with 11774
- reproduced with 11778
the regression was likely introduced in r12777 (fix for bug #426763).

Other file formats which use a secondary import options dialog (e.g. multipage VSD/CDR, DXF) don't produce this crash if import is canceled but inkscape still shows that message 'Failed to load the requested file…' (which was removed only for PDF import in r11777).

Patch tested successfully with r12591 on OS X with PDF/PS/EPS import - thx JazzyNico!

Revision history for this message
jazzynico (jazzynico) wrote :

Patch committed revision 12595.

Now let's investigate Bug #1005825 ;)

Changed in inkscape:
milestone: 0.49 → none
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.