After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 648365 - evince crashes in ev_mapping_list_find()
evince crashes in ev_mapping_list_find()
Status: RESOLVED FIXED
Product: evince
Classification: Core
Component: general
git master
Other Linux
: Normal critical
: ---
Assigned To: Evince Maintainers
Evince Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-04-21 09:47 UTC by Marek Kašík
Modified: 2011-04-26 08:15 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Fix the bug (765 bytes, patch)
2011-04-25 00:10 UTC, José Aliste
committed Details | Review

Description Marek Kašík 2011-04-21 09:47:43 UTC
Hi,

evince (3.0.0) crashes when I open a pdf form in evince, write something in an editable field and press ctrl+r (try to repeat it several times if it doesn't crash immediately). I tested it with "www.irs.gov/pub/irs-pdf/f1040.pdf".

It helps to swap "clear_caches (view)" and "ev_view_remove_all (view)" so that caches are cleared after removing all widgets in ev_view_document_changed_cb().

Marek


P.S.: It is probably related to the bug #632087.


Backtrace:

  • #0 ev_mapping_list_find
    at ev-mapping-list.c line 36
  • #1 ev_view_get_area_from_mapping
    at ev-view.c line 1488
  • #2 ev_view_form_field_get_region
    at ev-view.c line 2020
  • #3 ev_view_form_field_text_save
    at ev-view.c line 2119
  • #4 ev_view_form_field_text_focus_out
    at ev-view.c line 2159
  • #5 _gtk_marshal_BOOLEAN__BOXED
    at gtkmarshalers.c line 85
  • #6 g_closure_invoke
    at gclosure.c line 767
  • #7 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #8 g_signal_emit_valist
    at gsignal.c line 2993
  • #9 g_signal_emit
    at gsignal.c line 3040
  • #10 gtk_widget_event_internal
    at gtkwidget.c line 6098
  • #11 gtk_widget_send_focus_change
    at gtkwidget.c line 14030
  • #12 do_focus_change
    at gtkwindow.c line 5858
  • #13 gtk_window_real_set_focus
    at gtkwindow.c line 6038
  • #14 g_closure_invoke
    at gclosure.c line 767
  • #15 signal_emit_unlocked_R
    at gsignal.c line 3290
  • #16 g_signal_emit_valist
    at gsignal.c line 2983
  • #17 g_signal_emit
    at gsignal.c line 3040
  • #18 _gtk_window_unset_focus_and_default
    at gtkwindow.c line 6177
  • #19 gtk_widget_unparent
    at gtkwidget.c line 3732
  • #20 ev_view_remove
    at ev-view.c line 4760
  • #21 g_closure_invoke
    at gclosure.c line 767
  • #22 signal_emit_unlocked_R
    at gsignal.c line 3182
  • #23 g_signal_emit_valist
    at gsignal.c line 2983
  • #24 g_signal_emit
    at gsignal.c line 3040
  • #25 gtk_widget_dispose
    at gtkwidget.c line 10581
  • #26 g_object_run_dispose
    at gobject.c line 945
  • #27 ev_view_forall
    at ev-view.c line 4787
  • #28 ev_view_document_changed_cb
    at ev-view.c line 5238
  • #29 g_closure_invoke
    at gclosure.c line 767
  • #30 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #31 g_signal_emit_valist
    at gsignal.c line 2983
  • #32 g_signal_emit
    at gsignal.c line 3040
  • #33 g_object_dispatch_properties_changed
    at gobject.c line 925
  • #34 g_object_notify_queue_thaw
    at gobjectnotifyqueue.c line 132
  • #35 g_object_notify_by_spec_internal
    at gobject.c line 983
  • #36 g_object_notify
    at gobject.c line 1024
  • #37 ev_window_reload_job_cb
    at ev-window.c line 1700
  • #38 ev_window_reload_job_cb
    at ev-window.c line 1684
  • #39 g_closure_invoke
    at gclosure.c line 767
  • #40 signal_emit_unlocked_R
    at gsignal.c line 3252
  • #41 g_signal_emit_valist
    at gsignal.c line 2983
  • #42 g_signal_emit
    at gsignal.c line 3040
  • #43 emit_finished
    at ev-jobs.c line 178
  • #44 emit_finished
    at ev-jobs.c line 168
  • #45 g_main_dispatch
    at gmain.c line 2440
  • #46 g_main_context_dispatch
    at gmain.c line 3013
  • #47 g_main_context_iterate
    at gmain.c line 3091
  • #48 g_main_loop_run
    at gmain.c line 3299
  • #49 gtk_main
    at gtkmain.c line 1358
  • #50 main
    at main.c line 322

Comment 1 Akhil Laddha 2011-04-21 11:17:30 UTC
crash is critical in bgo.
Comment 2 José Aliste 2011-04-22 17:42:48 UTC
Marek, it's related to #632087. What do you mean by it helps? do you have a patch? I am going to look more closely to this during the weekend.
Comment 3 José Aliste 2011-04-25 00:10:10 UTC
Created attachment 186571 [details] [review]
Fix the bug

So this is the patch proposed by Marek that indeed fixes the crash...
Comment 4 Carlos Garcia Campos 2011-04-25 06:59:18 UTC
Review of attachment 186571 [details] [review]:

Thanks!
Comment 5 José Aliste 2011-04-25 11:57:16 UTC
This problem has been fixed in the development version. This fix should be available in Evince 3.0.1
Comment 6 Marek Kašík 2011-04-26 08:15:41 UTC
Hi,

thank you for the fix and sorry about that I forgot to attach a patch. Btw, I've should add that this was originally reported here: https://bugzilla.redhat.com/show_bug.cgi?id=677074 (and 657103, 645903).

Thanks

Marek