/* Store and get the pixbuf pointer */ static void createRawData (JNIEnv * env, jobject obj, void *ptr) { jclass cls; jobject data; jfieldID data_fid; cls = (*env)->GetObjectClass (env, obj); data_fid = (*env)->GetFieldID (env, cls, "pixbuf", "Lgnu/classpath/Pointer;"); g_assert (data_fid != 0); data = JCL_NewRawDataObject (env, ptr); (*env)->SetObjectField (env, obj, data_fid, data); }
jobject Java_java_awt_Toolkit_imgCreateFromFile (JNIEnv *env, jclass clazz UNUSED, jstring fileName) { char *fname; s_image_t *img; DEBUGF("Enter"); fname = java2CString(env, fileName); s_image_init(&img); if (s_image_img(fname, img)) { s_image_uninit(img); AWT_FREE(fname); return NULL; } AWT_FREE(fname); DEBUGF("Leave"); return JCL_NewRawDataObject(env, img); }