Re: compile error gtkextra-2
Michael Noble <[email protected]>
| Newsgroups | gmane.comp.scigraphica.gtkextra |
|---|---|
| Message-ID | <[email protected]> |
> > The post above describes another issue with gtkplotcanvas.h.
>
> Yes, I am now stuck at this one. Were you able to solve it? I am not a C programmer, allthough I was tought some C++ in the past...
Yes, add
void (*add_item) (GtkPlotCanvas *canvas,
GtkPlotCanvasChild *item);
to the _GtkPlotCanvasClass struct definition within gtkplotcanvas.h.
Now, as of about 2 weeks ago this (plus the earlier fix to the plot
surface) was all I needed to do to get GtkExtra compiled from CVS.
But, after your note yesterday I did another CVS extraction and
encountered a third issue, this time in gtkplotgdk.c, at line 250:
GTK_OBJECT_CLASS(parent_class)->finalize(object);
As of Gtk 2.0 GtkObject proper no longer contains a finalize member.
It _is_ a member of GObject, from which GtkObject is "derived," and
_was_ a member of GtkObject in Gtk 1.x, but the compiler is correct
to complain/fail at the cast being attempted above when compiled
against Gtk 2.x.
Changing the cast to
G_OBJECT_CLASS(parent_class)->finalize(object);
removes the compiler error but I can't vouch for it's correctness.
Perhaps safer for now (i.e. until someone corrects CVS) is to just
comment out the finalize call and accept whatever leaks might occur.
Now, all that said, once I got the latest GtkExtra CVS to compile and
ran the testgtkplot program, I was greeted with numerous warnings:
(lt-testgtkplot:31578): GLib-GObject-WARNING **: invalid unclassed
pointer in cast to `GtkObject'
(lt-testgtkplot:31578): Gtk-CRITICAL **: file gtkobject.c: line 745
(gtk_object_unref): assertion `GTK_IS_OBJECT (object)' failed
(lt-testgtkplot:31578): GLib-GObject-WARNING **: invalid cast from
`(null)' to `GtkObject'
(lt-testgtkplot:31578): Gtk-CRITICAL **: file gtkobject.c: line 745
(gtk_object_unref): assertion `GTK_IS_OBJECT (object)' failed
So, GtkExtra seems a little unhealthy at present.
Adrian, can you or anyone with CVS checkin privileges respond? I've
got almost a dozen modifications I'd like to offer, but was holding
off to sync with CVS first before I sent in the diffs.
Regards, Mike
-------------------------------------------------------
This SF.net email is sponsored by: If flattening out C++ or Java
code to make your application fit in a relational database is painful,
don't do it! Check out ObjectStore. Now part of Progress Software.
http://www.objectstore.net/sourceforge