Bug 6728

Summary: Poppler crash on PDF file
Product: poppler Reporter: Wouter Bolsterlee <uws+freedesktop>
Component: generalAssignee: poppler-bugs <poppler-bugs>
Status: RESOLVED FIXED QA Contact:
Severity: critical    
Priority: high CC: bugzilla, mdke, philsf79
Version: unspecified   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: PDF file that triggers the bug
pdf file with uming fonts embedded.

Description Wouter Bolsterlee 2006-04-25 01:28:24 UTC
Evince/poppler (both CVS HEAD) crashes when closing Evince after viewing the pdf
file I will attach shortly. The rendering is broken too (related to bug #4030
maybe?).

The console says:

Error: failed to load truetype font
some font thing failed




Backtrace was generated from '/opt/gnome/bin/evince'

Using host libthread_db library "/lib/tls/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread -1228515648 (LWP 25236)]
[New Thread -1230853200 (LWP 25237)]
0xb735a221 in __waitpid_nocancel () from /lib/tls/libpthread.so.0
#0  0xb735a221 in __waitpid_nocancel () from /lib/tls/libpthread.so.0
#1  0xb7f5c8a5 in libgnomeui_segv_handle (signum=-512) at gnome-ui-init.c:792
#2  <signal handler called>
#3  0xb6dfc9b4 in FT_Done_Face () from /usr/lib/libfreetype.so.6
#4  0xb7ce2035 in ~CairoFont (this=0x83bdbc0) at CairoFontEngine.cc:258
#5  0xb7ce22ee in ~CairoFontEngine (this=0xb5f27e98) at CairoFontEngine.cc:309
#6  0xb7ce346a in ~CairoOutputDev (this=0xb5f20d20) at CairoOutputDev.cc:65
#7  0xb7cde23c in poppler_document_finalize (object=0x7000400) at
poppler-document.cc:179
#8  0xb73fcfe3 in IA__g_object_unref (_object=0x81de498) at gobject.c:1762
#9  0x0808df3b in pdf_document_dispose (object=0x7000400) at ev-poppler.cc:151
#10 0xb73fcf4b in IA__g_object_unref (_object=0x8209c00) at gobject.c:1734
#11 0x08067dcd in ev_view_destroy (object=0x80de1f8) at ev-view.c:2253
#12 0xb740712b in IA__g_cclosure_marshal_VOID__VOID (closure=0x80b6730,
return_value=0x0, n_param_values=1, 
    param_values=0xbfea343c, invocation_hint=0xbfea332c, marshal_data=0x8067da0)
at gmarshal.c:77
#13 0xb73f9cf9 in g_type_class_meta_marshal (closure=0x80b6730,
return_value=0x7000400, n_param_values=117441536, 
    param_values=0xbfea343c, invocation_hint=0x7000400, marshal_data=0x7000400)
at gclosure.c:567
#14 0xb73fa3b9 in IA__g_closure_invoke (closure=0x80b6730,
return_value=0x7000400, n_param_values=117441536, 
    param_values=0x7000400, invocation_hint=0x7000400) at gclosure.c:490
#15 0xb740ab5e in signal_emit_unlocked_R (node=0x80b6778, detail=0,
instance=0x80de1f8, emission_return=0x0, 
    instance_and_params=0xbfea343c) at gsignal.c:2554
#16 0xb740bb90 in IA__g_signal_emit_valist (instance=0x80de1f8, signal_id=2,
detail=0, var_args=<value optimized out>)
    at gsignal.c:2197
#17 0xb740bef9 in IA__g_signal_emit (instance=0x7000400, signal_id=117441536,
detail=117441536) at gsignal.c:2241
#18 0xb76d454f in gtk_object_dispose (gobject=0x80de1f8) at gtkobject.c:419
#19 0xb77ad6e3 in gtk_widget_dispose (object=0x80de1f8) at gtkwidget.c:6672
#20 0xb73fdac1 in IA__g_object_run_dispose (object=0x80de1f8) at gobject.c:571
#21 0xb76d44fe in IA__gtk_object_destroy (object=0x80de1f8) at gtkobject.c:404
#22 0xb77a55c5 in IA__gtk_widget_destroy (widget=0x80de1f8) at gtkwidget.c:2011
#23 0xb75e2f0f in gtk_bin_forall (container=0x80e11c0, include_internals=0,
callback=0x7000400, callback_data=0x7000400)
    at gtkbin.c:166
#24 0xb76f7d2c in gtk_scrolled_window_forall (container=0x80e11c0,
include_internals=0, 
    callback=0xb77a5580 <IA__gtk_widget_destroy>, callback_data=0x0) at
gtkscrolledwindow.c:816
#25 0xb7622249 in IA__gtk_container_foreach (container=0x80e11c0,
callback=0xb77a5580 <IA__gtk_widget_destroy>, 
    callback_data=0x7000400) at gtkcontainer.c:1292
#26 0xb762420e in gtk_container_destroy (object=0x80e11c0) at gtkcontainer.c:829
#27 0xb76f7991 in gtk_scrolled_window_destroy (object=0x80e11c0) at
gtkscrolledwindow.c:675
#28 0xb740712b in IA__g_cclosure_marshal_VOID__VOID (closure=0x80b6730,
return_value=0x0, n_param_values=1, 
    param_values=0xbfea3a7c, invocation_hint=0xbfea396c,
marshal_data=0xb76f7920) at gmarshal.c:77
#29 0xb73f9cf9 in g_type_class_meta_marshal (closure=0x80b6730,
return_value=0x7000400, n_param_values=117441536, 
    param_values=0xbfea3a7c, invocation_hint=0x7000400, marshal_data=0x7000400)
at gclosure.c:567
#30 0xb73fa3b9 in IA__g_closure_invoke (closure=0x80b6730,
return_value=0x7000400, n_param_values=117441536, 
    param_values=0x7000400, invocation_hint=0x7000400) at gclosure.c:490
#31 0xb740ab5e in signal_emit_unlocked_R (node=0x80b6778, detail=0,
instance=0x80e11c0, emission_return=0x0, 
    instance_and_params=0xbfea3a7c) at gsignal.c:2554
#32 0xb740bb90 in IA__g_signal_emit_valist (instance=0x80e11c0, signal_id=2,
detail=0, var_args=<value optimized out>)
    at gsignal.c:2197
#33 0xb740bef9 in IA__g_signal_emit (instance=0x7000400, signal_id=117441536,
detail=117441536) at gsignal.c:2241
#34 0xb76d454f in gtk_object_dispose (gobject=0x80e11c0) at gtkobject.c:419
#35 0xb77ad6e3 in gtk_widget_dispose (object=0x80e11c0) at gtkwidget.c:6672
#36 0xb73fdac1 in IA__g_object_run_dispose (object=0x80e11c0) at gobject.c:571
#37 0xb76d44fe in IA__gtk_object_destroy (object=0x80e11c0) at gtkobject.c:404
#38 0xb77a55c5 in IA__gtk_widget_destroy (widget=0x80e11c0) at gtkwidget.c:2011
#39 0xb76d9dea in gtk_paned_forall (container=0x81c5000, include_internals=0, 
    callback=0xb77a5580 <IA__gtk_widget_destroy>, callback_data=0x0) at
gtkpaned.c:1098
#40 0xb7622249 in IA__gtk_container_foreach (container=0x81c5000,
callback=0xb77a5580 <IA__gtk_widget_destroy>, 
    callback_data=0x7000400) at gtkcontainer.c:1292
#41 0xb762420e in gtk_container_destroy (object=0x81c5000) at gtkcontainer.c:829
#42 0xb740712b in IA__g_cclosure_marshal_VOID__VOID (closure=0x80b6730,
return_value=0x0, n_param_values=1, 
    param_values=0xbfea406c, invocation_hint=0xbfea3f5c,
marshal_data=0xb76241d0) at gmarshal.c:77
#43 0xb73f9cf9 in g_type_class_meta_marshal (closure=0x80b6730,
return_value=0x7000400, n_param_values=117441536, 
    param_values=0xbfea406c, invocation_hint=0x7000400, marshal_data=0x7000400)
at gclosure.c:567
#44 0xb73fa3b9 in IA__g_closure_invoke (closure=0x80b6730,
return_value=0x7000400, n_param_values=117441536, 
    param_values=0x7000400, invocation_hint=0x7000400) at gclosure.c:490
#45 0xb740ab5e in signal_emit_unlocked_R (node=0x80b6778, detail=0,
instance=0x81c5000, emission_return=0x0, 
    instance_and_params=0xbfea406c) at gsignal.c:2554
#46 0xb740bb90 in IA__g_signal_emit_valist (instance=0x81c5000, signal_id=2,
detail=0, var_args=<value optimized out>)
    at gsignal.c:2197
#47 0xb740bef9 in IA__g_signal_emit (instance=0x7000400, signal_id=117441536,
detail=117441536) at gsignal.c:2241
#48 0xb76d454f in gtk_object_dispose (gobject=0x81c5000) at gtkobject.c:419
#49 0xb77ad6e3 in gtk_widget_dispose (object=0x81c5000) at gtkwidget.c:6672
#50 0xb73fdac1 in IA__g_object_run_dispose (object=0x81c5000) at gobject.c:571
#51 0xb76d44fe in IA__gtk_object_destroy (object=0x81c5000) at gtkobject.c:404
#52 0xb77a55c5 in IA__gtk_widget_destroy (widget=0x81c5000) at gtkwidget.c:2011
#53 0xb75e6920 in gtk_box_forall (container=0x80e0990, include_internals=0,
callback=0xb77a5580 <IA__gtk_widget_destroy>, 
    callback_data=0x0) at gtkbox.c:703
#54 0xb7622249 in IA__gtk_container_foreach (container=0x80e0990,
callback=0xb77a5580 <IA__gtk_widget_destroy>, 
    callback_data=0x7000400) at gtkcontainer.c:1292
#55 0xb762420e in gtk_container_destroy (object=0x80e0990) at gtkcontainer.c:829
#56 0xb740712b in IA__g_cclosure_marshal_VOID__VOID (closure=0x80b6730,
return_value=0x0, n_param_values=1, 
    param_values=0xbfea465c, invocation_hint=0xbfea454c,
marshal_data=0xb76241d0) at gmarshal.c:77
#57 0xb73f9cf9 in g_type_class_meta_marshal (closure=0x80b6730,
return_value=0x7000400, n_param_values=117441536, 
    param_values=0xbfea465c, invocation_hint=0x7000400, marshal_data=0x7000400)
at gclosure.c:567
#58 0xb73fa3b9 in IA__g_closure_invoke (closure=0x80b6730,
return_value=0x7000400, n_param_values=117441536, 
    param_values=0x7000400, invocation_hint=0x7000400) at gclosure.c:490
#59 0xb740ab5e in signal_emit_unlocked_R (node=0x80b6778, detail=0,
instance=0x80e0990, emission_return=0x0, 
    instance_and_params=0xbfea465c) at gsignal.c:2554
#60 0xb740bb90 in IA__g_signal_emit_valist (instance=0x80e0990, signal_id=2,
detail=0, var_args=<value optimized out>)
    at gsignal.c:2197
#61 0xb740bef9 in IA__g_signal_emit (instance=0x7000400, signal_id=117441536,
detail=117441536) at gsignal.c:2241
#62 0xb76d454f in gtk_object_dispose (gobject=0x80e0990) at gtkobject.c:419
#63 0xb77ad6e3 in gtk_widget_dispose (object=0x80e0990) at gtkwidget.c:6672
#64 0xb73fdac1 in IA__g_object_run_dispose (object=0x80e0990) at gobject.c:571
#65 0xb76d44fe in IA__gtk_object_destroy (object=0x80e0990) at gtkobject.c:404
#66 0xb77a55c5 in IA__gtk_widget_destroy (widget=0x80e0990) at gtkwidget.c:2011
#67 0xb75e2f0f in gtk_bin_forall (container=0x8100008, include_internals=0,
callback=0x7000400, callback_data=0x7000400)
    at gtkbin.c:166
#68 0xb7622249 in IA__gtk_container_foreach (container=0x8100008,
callback=0xb77a5580 <IA__gtk_widget_destroy>, 
    callback_data=0x7000400) at gtkcontainer.c:1292
#69 0xb762420e in gtk_container_destroy (object=0x8100008) at gtkcontainer.c:829
#70 0xb77bbe43 in gtk_window_destroy (object=0x8100008) at gtkwindow.c:3828
#71 0xb740712b in IA__g_cclosure_marshal_VOID__VOID (closure=0x80b6730,
return_value=0x0, n_param_values=1, 
    param_values=0xbfea4c6c, invocation_hint=0xbfea4b5c,
marshal_data=0xb77bbdc0) at gmarshal.c:77
#72 0xb73f9cf9 in g_type_class_meta_marshal (closure=0x80b6730,
return_value=0x7000400, n_param_values=117441536, 
    param_values=0xbfea4c6c, invocation_hint=0x7000400, marshal_data=0x7000400)
at gclosure.c:567
#73 0xb73fa3b9 in IA__g_closure_invoke (closure=0x80b6730,
return_value=0x7000400, n_param_values=117441536, 
    param_values=0x7000400, invocation_hint=0x7000400) at gclosure.c:490
#74 0xb740ab5e in signal_emit_unlocked_R (node=0x80b6778, detail=0,
instance=0x8100008, emission_return=0x0, 
    instance_and_params=0xbfea4c6c) at gsignal.c:2554
#75 0xb740bb90 in IA__g_signal_emit_valist (instance=0x8100008, signal_id=2,
detail=0, var_args=<value optimized out>)
    at gsignal.c:2197
#76 0xb740bef9 in IA__g_signal_emit (instance=0x7000400, signal_id=117441536,
detail=117441536) at gsignal.c:2241
#77 0xb76d454f in gtk_object_dispose (gobject=0x8100008) at gtkobject.c:419
#78 0xb77ad6e3 in gtk_widget_dispose (object=0x8100008) at gtkwidget.c:6672
#79 0xb77b4b12 in gtk_window_dispose (object=0x8100008) at gtkwindow.c:1762
#80 0xb73fdac1 in IA__g_object_run_dispose (object=0x8100008) at gobject.c:571
#81 0xb76d44fe in IA__gtk_object_destroy (object=0x8100008) at gtkobject.c:404
#82 0xb77a55c5 in IA__gtk_widget_destroy (widget=0x8100008) at gtkwidget.c:2011
#83 0xb740712b in IA__g_cclosure_marshal_VOID__VOID (closure=0x8110e90,
return_value=0x0, n_param_values=1, 
    param_values=0xbfea51dc, invocation_hint=0xbfea50cc, marshal_data=0x806e000)
at gmarshal.c:77
#84 0xb73fa3b9 in IA__g_closure_invoke (closure=0x8110e90,
return_value=0x7000400, n_param_values=117441536, 
    param_values=0x7000400, invocation_hint=0x7000400) at gclosure.c:490
#85 0xb740a30a in signal_emit_unlocked_R (node=0x810f938, detail=0,
instance=0x80eced0, emission_return=0x0, 
    instance_and_params=0xbfea51dc) at gsignal.c:2438
#86 0xb740bb90 in IA__g_signal_emit_valist (instance=0x80eced0, signal_id=111,
detail=0, var_args=<value optimized out>)
    at gsignal.c:2197
#87 0xb740bef9 in IA__g_signal_emit (instance=0x7000400, signal_id=117441536,
detail=117441536) at gsignal.c:2241
#88 0xb75db743 in _gtk_action_emit_activate (action=0x80eced0) at gtkaction.c:1042
#89 0xb75dc314 in closure_accel_activate (closure=0x8110da0,
return_value=0x7000400, n_param_values=4, 
    param_values=0xbfea56ac, invocation_hint=0xbfea559c, marshal_data=0x0) at
gtkaction.c:1434
#90 0xb73fa3b9 in IA__g_closure_invoke (closure=0x8110da0,
return_value=0x7000400, n_param_values=117441536, 
    param_values=0x7000400, invocation_hint=0x7000400) at gclosure.c:490
#91 0xb740a30a in signal_emit_unlocked_R (node=0x8118990, detail=821,
instance=0x8114580, emission_return=0xbfea586c, 
    instance_and_params=0xbfea56ac) at gsignal.c:2438
#92 0xb740b8fe in IA__g_signal_emit_valist (instance=0x8114580, signal_id=122,
detail=821, 
    var_args=0xbfea58f8 "\bYê¿,Z]·\b") at gsignal.c:2207
#93 0xb740bef9 in IA__g_signal_emit (instance=0x7000400, signal_id=117441536,
detail=117441536) at gsignal.c:2241
#94 0xb75d60a9 in IA__gtk_accel_group_activate (accel_group=0x8114580,
accel_quark=117441536, acceleratable=0x8100008, 
    accel_key=117441536, accel_mods=117441536) at gtkaccelgroup.c:766
#95 0xb75d6983 in IA__gtk_accel_groups_activate (object=0x8100008,
accel_key=119, accel_mods=GDK_CONTROL_MASK)
    at gtkaccelgroup.c:804
#96 0xb77bbf68 in IA__gtk_window_activate_key (window=0x8100008,
event=0x81c0860) at gtkwindow.c:7506
#97 0xb77bbfcc in gtk_window_key_press_event (widget=0x8100008, event=0x81c0860)
at gtkwindow.c:4543
#98 0xb76b53a0 in _gtk_marshal_BOOLEAN__BOXED (closure=0x80ef830,
return_value=0xbfea5b50, n_param_values=2, 
    param_values=0xbfea5c4c, invocation_hint=0xbfea5b3c,
marshal_data=0xb77bbfa0) at gtkmarshalers.c:83
#99 0xb73f9cf9 in g_type_class_meta_marshal (closure=0x80ef830,
return_value=0x7000400, n_param_values=117441536, 
    param_values=0xbfea5c4c, invocation_hint=0x7000400, marshal_data=0x7000400)
at gclosure.c:567
#100 0xb73fa3b9 in IA__g_closure_invoke (closure=0x80ef830,
return_value=0x7000400, n_param_values=117441536, 
    param_values=0x7000400, invocation_hint=0x7000400) at gclosure.c:490
#101 0xb740aa15 in signal_emit_unlocked_R (node=0x80ef700, detail=0,
instance=0x8100008, emission_return=0xbfea5e0c, 
    instance_and_params=0xbfea5c4c) at gsignal.c:2476
#102 0xb740b8fe in IA__g_signal_emit_valist (instance=0x8100008, signal_id=60,
detail=0, 
    var_args=0xbfea5e90 "¨^ê¿`\b\034\b\b") at gsignal.c:2207
#103 0xb740bef9 in IA__g_signal_emit (instance=0x7000400, signal_id=117441536,
detail=117441536) at gsignal.c:2241
#104 0xb77a6e74 in gtk_widget_event_internal (widget=0x8100008, event=0x81c0860)
at gtkwidget.c:3751
#105 0xb76b38f5 in IA__gtk_propagate_event (widget=0x8100008, event=0x81c0860)
at gtkmain.c:2169
#106 0xb76b3c43 in IA__gtk_main_do_event (event=0x81c0860) at gtkmain.c:1424
#107 0xb75539da in gdk_event_dispatch (source=0x7000400, callback=0,
user_data=0x0) at gdkevents-x11.c:2291
#108 0xb738626c in IA__g_main_context_dispatch (context=0x80e3888) at gmain.c:1916
#109 0xb73896fb in g_main_context_iterate (context=0x80e3888, block=1,
dispatch=1, self=0x80b2948) at gmain.c:2547
#110 0xb7389a57 in IA__g_main_loop_run (loop=0x822cdf8) at gmain.c:2751
#111 0xb76b2de1 in IA__gtk_main () at gtkmain.c:1003
#112 0x0807a558 in main (argc=-1242428128, argv=0xb5f20d20) at main.c:295
Comment 1 Wouter Bolsterlee 2006-04-25 01:29:13 UTC
Created attachment 5458 [details]
PDF file that triggers the bug
Comment 2 Matthew East 2006-04-25 01:34:18 UTC
Some information about the pdf file: it uses embedded fonts created from the
Truetype freefont Serif set. It was created by apache fop[1]

[1] http://xmlgraphics.apache.org/fop/0.20.5/fonts.html
Comment 3 Jeff Muizelaar 2006-04-27 14:50:34 UTC
does the patch in bug 4030 fix it?
Comment 4 Matthew East 2006-05-10 21:05:43 UTC
I'm afraid that I don't run poppler/evince from cvs or compile it, so I'm not
able to check whether that patch fixes it. Perhaps someone else is able to
confirm? I'm really keen that this is fixed in Ubuntu before the next version is
released, because otherwise lots of PDFs will not be working properly.

In the mean time, I'll attach another pdf file with different fonts embedded
that has the same problem.
Comment 5 Matthew East 2006-05-10 21:07:57 UTC
Created attachment 5599 [details]
pdf file with uming fonts embedded.
Comment 6 Albert Astals Cid 2006-05-11 03:44:31 UTC
rettagging, the missing font happens on splash also, maybe freetype can not 
handle that font? need to investigate further, but need more time to do things, 
arrrrgggg
Comment 7 Jeff Muizelaar 2007-11-17 14:14:20 UTC
It doesn't crash with cairo anymore but still doesn't render the text.
Comment 8 Pablo Rodríguez 2008-09-07 13:21:40 UTC
I think this has been fixed (or at least improved) using version 0.8.6.

All I get is the following error:

$ evince attachment.cgi 
Error: Found a bad table definition on true type definition, trying to continue...

Maybe the bug can be closed or redefined.

Thanks,


Pablo
Comment 9 Albert Astals Cid 2008-09-07 13:43:40 UTC
Right, using a new poppler and the yet to be released Freetype this will work, that is, not crash and get the fonts rendered.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.