commit: Fix segfaults, leaks and bugs in images.

From: msevior@physics.unimelb.edu.au
Date: Sun Oct 12 2003 - 21:21:13 EDT

  • Next message: Martin Sevior: "commit: Clean up reduce flicker drawing and scrolling images."

    CVS: ----------------------------------------------------------------------
    CVS: Enter Log. Lines beginning with `CVS:' are removed automatically
    CVS:
    CVS: Committing in .
    CVS:
    CVS: Modified Files:
    CVS: af/gr/unix/gr_UnixImage.cpp af/gr/xp/gr_Graphics.cpp
    CVS: text/fmt/xp/fg_GraphicRaster.cpp
    CVS: text/fmt/xp/fp_ContainerObject.cpp
    CVS: text/fmt/xp/fp_TableContainer.cpp
    CVS: wp/ap/xp/ap_Dialog_FormatTable.cpp
    CVS: ----------------------------------------------------------------------
    Fix segfaults, mem leaks and bugs to do with background imaes in tables
    and gr_UnixImage

    In particular I found that it is *extremely* easy to leak massive amounts
    of memory doing image manipulations in GdkPixbuf. The only way to delete a
    GdkPixbuf is to do an unref on an object with a ref_count of 1.
    Unfortunately there are some gdk-pixbuf functions that return inconsistent
    ref_counts on objects.

    I put asserts all through gr_UnixImage and various gobject_refs and _unref
    manipulations. I think I've got all the leaks plugged now.

    Cheers

    Martin



    This archive was generated by hypermail 2.1.4 : Sun Oct 12 2003 - 21:43:01 EDT