Hmm . . . let me be more clear. This is the error I get when making
Classpath:

[everything's compiling correctly . . . then]

gcc -DHAVE_CONFIG_H -I. -I. -I../../include -I/usr/local/japhar/include 
-I/usr/local/japhar/include/japhar -I/usr/lib/glib/include -I/usr/X11R6/include 
-I../../include -g -O2 -Wall -Wp,-MD,.deps/gdkpixbufdecoder.pp -c  -fPIC -DPIC 
gdkpixbufdecoder.c -o gdkpixbufdecoder.lo
gdkpixbufdecoder.c: In function `area_prepared':
gdkpixbufdecoder.c:66: dereferencing pointer to incomplete type
gdkpixbufdecoder.c: In function `area_updated':
gdkpixbufdecoder.c:94: dereferencing pointer to incomplete type
gdkpixbufdecoder.c:88: warning: `pixbuf' might be used uninitialized in this function
gdkpixbufdecoder.c: In function `Java_gnu_java_awt_image_GdkPixbufDecoder_loaderWrite':
gdkpixbufdecoder.c:176: warning: unused variable `pixbuf'
make[2]: *** [gdkpixbufdecoder.lo] Error 1
make[2]: Leaving directory `/firefly/joey/classpath/native/gnu.java.awt.image'

So I look at the code and I'm trying to figure out just what is going
on. For reference, here's the first snippet:

61:void
62:area_prepared (GdkPixbufLoader *loader, struct loader_vector *lv)
63:{
64:  ArtPixBuf *pixbuf;
65:
66:  pixbuf = gdk_pixbuf_loader_get_pixbuf (loader)->art_pixbuf;
67:
68:  printf ("AREA PREPARED\n");
69:
70:  return;
71:
72:  gdk_threads_leave ();
73:  (*gdk_env)->CallVoidMethod (gdk_env,
74:                           *(lv->loader), 
75:                           areaPreparedID,
76:                           *(lv->vector),
77:                           (jint) pixbuf->width,
78:                           (jint) pixbuf->height);
79:  gdk_threads_enter ();
80:}

Granted my C skills aren't stellar but even the guru around here doesn't
know what to make of this bit of code. It seems that after the return
pixbuf would be invalid as it was allocated on the stack.  Are there some
compilation flags that I should add?

Joey

Reply via email to