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 148139 - Dia crashes with file output by PostgreSQL Autodoc
Dia crashes with file output by PostgreSQL Autodoc
Status: RESOLVED FIXED
Product: dia
Classification: Other
Component: general
0.93
Other Linux
: Urgent critical
: ---
Assigned To: Dia maintainers
Dia maintainers
Depends on:
Blocks:
 
 
Reported: 2004-07-22 02:22 UTC by Jonathan Brandmeyer
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
bzip2-ed .dia that causes the crash (6.23 KB, application/octet-stream)
2004-07-22 02:25 UTC, Jonathan Brandmeyer
Details
the file from above saved compressed with Dia 0.92.2 (19.33 KB, application/octet-stream)
2004-09-19 19:12 UTC, Hans Breuer
Details

Description Jonathan Brandmeyer 2004-07-22 02:22:26 UTC
Open attached file.
Crash.

The file was generated by PostgreSQL Autodoc.

GDB backtrace:
  • #0 pango_layout_line_get_pixel_extents
    from /usr/lib/libpango-1.0.so.0
  • #1 pango_layout_iter_get_line_extents
    from /usr/lib/libpango-1.0.so.0
  • #2 dia_font_scaled_ascent
    from /usr/lib/dia/libdia.so
  • #3 dia_gdk_renderer_get_type
    from /usr/lib/dia/libdia.so
  • #4 umlclass_get_properties
    from /usr/lib/dia/libuml_objects.so
  • #5 dia_renderer_get_height_pixels
    from /usr/lib/dia/libdia.so
  • #6 display_set_active
  • #7 layer_render
    from /usr/lib/dia/libdia.so
  • #8 data_render
    from /usr/lib/dia/libdia.so
  • #9 ddisplay_render_pixmap
  • #10 display_set_active
  • #11 g_child_watch_add
    from /usr/lib/libglib-2.0.so.0
  • #12 g_main_depth
    from /usr/lib/libglib-2.0.so.0
  • #13 g_main_context_dispatch
    from /usr/lib/libglib-2.0.so.0
  • #14 g_main_context_dispatch
    from /usr/lib/libglib-2.0.so.0
  • #15 g_main_loop_run
    from /usr/lib/libglib-2.0.so.0
  • #16 gtk_main
    from /usr/lib/libgtk-x11-2.0.so.0
  • #17 main


GObject Warnings/Errors (these only show up when running Dia within GDB):
(dia:11831): GLib-GObject-CRITICAL **: file gobject.c: line 1561 (g_object_ref):
assertion `G_IS_OBJECT (object)' failed

(dia:11831): GLib-GObject-WARNING **: invalid unclassed pointer in cast to `GObject'

(dia:11831): GLib-GObject-CRITICAL **: file gobject.c: line 1579
(g_object_unref): assertion `G_IS_OBJECT (object)' failed

(dia:11831): GLib-GObject-CRITICAL **: file gobject.c: line 1561 (g_object_ref):
assertion `G_IS_OBJECT (object)' failed

** (dia:11831): CRITICAL **: file pango-layout.c: line 4207
(pango_layout_get_iter): assertion `PANGO_IS_LAYOUT (layout)' failed
Comment 1 Jonathan Brandmeyer 2004-07-22 02:25:25 UTC
Created attachment 29768 [details]
bzip2-ed .dia that causes the crash

This file decompresses to about 765 kB.
Comment 2 Lars Clausen 2004-07-22 20:58:07 UTC
Thanks for the example, but could you make your attachments compressed in dia
rather than bzip2'ing them?  That way they can open in Dia directly.
Comment 3 Jonathan Brandmeyer 2004-07-22 21:10:00 UTC
I couldn't open it in Dia to begin with, so how could I have compressed it with
Dia?  (although, to be honest, I didn't know that you could in the first place.)
Comment 4 Lars Clausen 2004-07-22 21:41:55 UTC
Oh.  Right.  You did do it with the other example, though.  But yeah,
gzip-compressed files with extension .dia can be read directly by dia.  It used
to be the only format, but CVS users complained.
Comment 5 Hans Breuer 2004-09-19 19:10:56 UTC
Dia 0.92.2 is able to open, display and save the file. Current cvs still crashes
(on both versions of it).
Comment 6 Hans Breuer 2004-09-19 19:12:42 UTC
Created attachment 31701 [details]
the file from above saved compressed with Dia 0.92.2
Comment 7 Hans Breuer 2004-09-19 20:13:07 UTC
The instant crashing is fixed by the first change, but there appear
to be more things broken with current cvs. (Anyway closing this bug 
as fixed ;)

2004-09-19  Hans Breuer  <hans@breuer.org>

        * lib/diarenderer.c : don't try to draw lines which are so much 
        degenerated that their point count became negative, fixes bug #148139
        
        * lib/font.c(layout_cache_equals) : don't crash on nonexisting 
        strings (NULL from g_strdup())