[kaffe] CVS kaffe (guilhem): Fixlets for XLIB-AWT.
Kaffe CVS
cvs-commits at kaffe.org
Fri Jul 22 04:47:37 PDT 2005
PatchSet 6759
Date: 2005/07/22 11:42:49
Author: guilhem
Branch: HEAD
Tag: (none)
Log:
Fixlets for XLIB-AWT.
* libraries/clib/awt/X/gra.c,
libraries/clib/awt/X/imggif.c,
libraries/clib/awt/X/imgjpeg.c,
libraries/clib/awt/X/imgpng.c: Fixed the use of real raw data
inside native calls.
Members:
ChangeLog:1.4284->1.4285
libraries/clib/awt/X/gra.c:1.24->1.25
libraries/clib/awt/X/imggif.c:1.17->1.18
libraries/clib/awt/X/imgjpeg.c:1.20->1.21
libraries/clib/awt/X/imgpng.c:1.22->1.23
Index: kaffe/ChangeLog
diff -u kaffe/ChangeLog:1.4284 kaffe/ChangeLog:1.4285
--- kaffe/ChangeLog:1.4284 Fri Jul 22 11:36:15 2005
+++ kaffe/ChangeLog Fri Jul 22 11:42:49 2005
@@ -1,3 +1,11 @@
+2005-07-22 Guilhem Lavaux <guilhem at kaffe.org>
+
+ * libraries/clib/awt/X/gra.c,
+ libraries/clib/awt/X/imggif.c,
+ libraries/clib/awt/X/imgjpeg.c,
+ libraries/clib/awt/X/imgpng.c: Fixed the use of real raw data
+ inside native calls.
+
2005-07-22 Kurt Miller <truk at optonline.net>
* m4/ax_create_stdint_h.m4: Define intmax_t if it is not available.
Index: kaffe/libraries/clib/awt/X/gra.c
diff -u kaffe/libraries/clib/awt/X/gra.c:1.24 kaffe/libraries/clib/awt/X/gra.c:1.25
--- kaffe/libraries/clib/awt/X/gra.c:1.24 Thu Jul 21 17:30:36 2005
+++ kaffe/libraries/clib/awt/X/gra.c Fri Jul 22 11:42:55 2005
@@ -798,15 +798,12 @@
}
}
-
-void
-Java_java_awt_Toolkit_graDrawImage ( JNIEnv* env UNUSED, jclass clazz UNUSED, jobject ngr, jobject nimg,
- jint srcX, jint srcY,
- jint dstX, jint dstY,
- jint width, jint height, jint bgval )
+static void
+drawImage (Graphics *gr, Image *img,
+ jint srcX, jint srcY,
+ jint dstX, jint dstY,
+ jint width, jint height, jint bgval )
{
- Graphics *gr = UNVEIL_GR(ngr);
- Image *img = UNVEIL_IMG(nimg);
XGCValues values;
DBG( AWT_GRA, printf("drawImage: %p %p (%p,%p,%p %d,%d) %d,%d, %d,%d, %d,%d, %x\n",
@@ -880,6 +877,18 @@
void
+Java_java_awt_Toolkit_graDrawImage ( JNIEnv* env UNUSED, jclass clazz UNUSED, jobject ngr, jobject nimg,
+ jint srcX, jint srcY,
+ jint dstX, jint dstY,
+ jint width, jint height, jint bgval )
+{
+ if (nimg == NULL)
+ return;
+
+ drawImage(UNVEIL_GR(ngr), UNVEIL_IMG(nimg), srcX, srcY, dstX, dstY, width, height, bgval);
+}
+
+void
Java_java_awt_Toolkit_graDrawImageScaled ( JNIEnv* env, jclass clazz, jobject ngr, jobject nimg,
jint dx0, jint dy0, jint dx1, jint dy1,
jint sx0, jint sy0, jint sx1, jint sy1, jint bgval )
@@ -929,8 +938,8 @@
createXImage( X, tgt);
initScaledImage( X, tgt, img, dx0-x0, dy0-y0, dx1-x0, dy1-y0, sx0, sy0, sx1, sy1);
- Java_java_awt_Toolkit_graDrawImage ( env, clazz, gr, tgt, 0, 0,
- x0, y0, tgt->width, tgt->height, bgval);
+ drawImage ( gr, tgt, 0, 0,
+ x0, y0, tgt->width, tgt->height, bgval);
if ( tgt->shmiImg ) {
XSync( X->dsp, False); /* since we're going to destroy tgt, process its drawing first */
}
Index: kaffe/libraries/clib/awt/X/imggif.c
diff -u kaffe/libraries/clib/awt/X/imggif.c:1.17 kaffe/libraries/clib/awt/X/imggif.c:1.18
--- kaffe/libraries/clib/awt/X/imggif.c:1.17 Wed Jan 19 11:04:31 2000
+++ kaffe/libraries/clib/awt/X/imggif.c Fri Jul 22 11:42:55 2005
@@ -54,7 +54,7 @@
#define CHECK(gifOp) \
if ( gifOp == GIF_ERROR ) { \
- if ( img ) Java_java_awt_Toolkit_imgFreeImage( 0, 0, img); \
+ if ( img ) imgFreeImage( img); \
if ( rowBuf ) AWT_FREE( rowBuf); \
return 0; \
}
Index: kaffe/libraries/clib/awt/X/imgjpeg.c
diff -u kaffe/libraries/clib/awt/X/imgjpeg.c:1.20 kaffe/libraries/clib/awt/X/imgjpeg.c:1.21
--- kaffe/libraries/clib/awt/X/imgjpeg.c:1.20 Sat Mar 27 16:07:32 2004
+++ kaffe/libraries/clib/awt/X/imgjpeg.c Fri Jul 22 11:42:55 2005
@@ -309,7 +309,7 @@
if ( setjmp(jerr.setjmp_buffer)) {
if ( img ) {
- Java_java_awt_Toolkit_imgFreeImage( 0, 0, img);
+ imgFreeImage(img);
}
return 0;
}
Index: kaffe/libraries/clib/awt/X/imgpng.c
diff -u kaffe/libraries/clib/awt/X/imgpng.c:1.22 kaffe/libraries/clib/awt/X/imgpng.c:1.23
--- kaffe/libraries/clib/awt/X/imgpng.c:1.22 Mon Apr 5 05:30:16 2004
+++ kaffe/libraries/clib/awt/X/imgpng.c Fri Jul 22 11:42:55 2005
@@ -173,7 +173,7 @@
if ( setjmp(png_ptr->jmpbuf) ) {
if ( img )
- Java_java_awt_Toolkit_imgFreeImage( 0, 0, img);
+ imgFreeImage(img);
if ( rows )
AWT_FREE( rows);
if ( data )
More information about the kaffe
mailing list