/hg/icedtea7-forest/jdk: 2 new changesets

andrew at icedtea.classpath.org andrew at icedtea.classpath.org
Fri Apr 3 15:53:06 UTC 2015


changeset a0983132193a in /hg/icedtea7-forest/jdk
details: http://icedtea.classpath.org/hg/icedtea7-forest/jdk?cmd=changeset;node=a0983132193a
author: andrew
date: Fri Apr 03 15:50:26 2015 +0100

	PR2233, RH1190835: Discover gsettings symbols separately so early versions of GLib can be used (e.g. on RHEL 6)


changeset bf4c2a6c354d in /hg/icedtea7-forest/jdk
details: http://icedtea.classpath.org/hg/icedtea7-forest/jdk?cmd=changeset;node=bf4c2a6c354d
author: andrew
date: Fri Apr 03 16:52:05 2015 +0100

	PR2236: ppc64le should report its os.arch as ppc64le so tools can detect it
	Summary: Support ppc64le appearing as a separate architecture


diffstat:

 make/common/Defs-linux.gmk                              |   13 +-
 make/common/shared/Platform.gmk                         |    1 -
 make/java/net/FILES_c.gmk                               |    2 +-
 make/java/net/Makefile                                  |   10 +-
 make/java/nio/Makefile                                  |    4 +
 make/javax/sound/SoundDefs.gmk                          |    4 +
 make/sun/xawt/Makefile                                  |    4 +
 src/share/native/com/sun/media/sound/SoundDefs.h        |    1 +
 src/solaris/bin/ppc64le/jvm.cfg                         |   33 ++++
 src/solaris/native/common/deps/glib2/gio/gio_typedefs.h |    6 +-
 src/solaris/native/common/deps/glib2/gio_fp.c           |  114 ++++++++++++---
 src/solaris/native/common/deps/glib2/gio_fp.h           |   10 +-
 src/solaris/native/common/deps/glib2/glib_fp.h          |   27 +++-
 src/solaris/native/sun/net/spi/DefaultProxySelector.c   |    6 +-
 src/solaris/native/sun/nio/fs/GnomeFileTypeDetector.c   |   44 ++++-
 src/solaris/native/sun/xawt/awt_Desktop.c               |    5 +
 16 files changed, 220 insertions(+), 64 deletions(-)

diffs (truncated from 540 to 500 lines):

diff -r 8e740701950b -r bf4c2a6c354d make/common/Defs-linux.gmk
--- a/make/common/Defs-linux.gmk	Tue Feb 10 16:24:28 2015 +0000
+++ b/make/common/Defs-linux.gmk	Fri Apr 03 16:52:05 2015 +0100
@@ -199,16 +199,9 @@
 CFLAGS_REQUIRED_mips    +=
 CFLAGS_REQUIRED_mipsel  += -D_LITTLE_ENDIAN
 CFLAGS_REQUIRED_ppc     += -m32 -fsigned-char -D_BIG_ENDIAN
-ifeq ($(ARCH),ppc64)
-  ifeq ($(OPENJDK_TARGET_CPU_ENDIAN),big)
-    CFLAGS_REQUIRED_ppc64   += -m64 -D_BIG_ENDIAN
-    LDFLAGS_COMMON_ppc64    += -m64 -L/lib64 -Wl,-melf64ppc
-  else ifeq ($(OPENJDK_TARGET_CPU_ENDIAN),little)
-    CFLAGS_REQUIRED_ppc64   += -D_LITTLE_ENDIAN -DABI_ELFv2
-  else
-    $(error Expected big/little for ARCH=ppc64, got OPENJDK_TARGET_CPU_ENDIAN=$(OPENJDK_TARGET_CPU_ENDIAN))
-  endif
-endif
+CFLAGS_REQUIRED_ppc64   += -m64 -D_BIG_ENDIAN
+LDFLAGS_COMMON_ppc64    += -m64 -L/lib64 -Wl,-melf64ppc
+CFLAGS_REQUIRED_ppc64le += -D_LITTLE_ENDIAN -DABI_ELFv2
 CFLAGS_REQUIRED_s390    +=
 CFLAGS_REQUIRED_s390x   += -m64
 CFLAGS_REQUIRED_sh      += -mieee
diff -r 8e740701950b -r bf4c2a6c354d make/common/shared/Platform.gmk
--- a/make/common/shared/Platform.gmk	Tue Feb 10 16:24:28 2015 +0000
+++ b/make/common/shared/Platform.gmk	Fri Apr 03 16:52:05 2015 +0100
@@ -217,7 +217,6 @@
   else ifeq ($(ARCH), ppc64le)
     ARCH_DATA_MODEL=64
     OPENJDK_TARGET_CPU_ENDIAN=little
-    ARCH := ppc64
   else
     # Most archs are 32-bit
     ifndef ARCH_DATA_MODEL
diff -r 8e740701950b -r bf4c2a6c354d make/java/net/FILES_c.gmk
--- a/make/java/net/FILES_c.gmk	Tue Feb 10 16:24:28 2015 +0000
+++ b/make/java/net/FILES_c.gmk	Fri Apr 03 16:52:05 2015 +0100
@@ -68,6 +68,6 @@
    FILES_c += gconf_fp.c
 endif
 
-ifneq ($(SYSTEM_GIO), true)
+ifneq ($(SYSTEM_GIO)$(SYSTEM_GSETTINGS), truetrue)
    FILES_c += gio_fp.c
 endif
diff -r 8e740701950b -r bf4c2a6c354d make/java/net/Makefile
--- a/make/java/net/Makefile	Tue Feb 10 16:24:28 2015 +0000
+++ b/make/java/net/Makefile	Fri Apr 03 16:52:05 2015 +0100
@@ -90,7 +90,7 @@
   vpath %.c	$(PLATFORM_SRC)/native/common/deps/gconf2
 endif
 
-ifneq ($(SYSTEM_GIO), true)
+ifneq ($(SYSTEM_GIO)$(SYSTEM_GSETTINGS), truetrue)
   vpath %.c     $(PLATFORM_SRC)/native/common/deps/glib2
 endif
 
@@ -101,6 +101,10 @@
 
 include $(BUILDDIR)/common/Library.gmk
 
+ifeq ($(NATIVE_SUPPORT_DEBUG), true)
+  OTHER_CFLAGS += -DNATIVE_SUPPORT_DEBUG
+endif
+
 ifeq ($(PLATFORM), macosx)
 ifdef DONT_ENABLE_IPV6
   OTHER_CFLAGS += -DDONT_ENABLE_IPV6
@@ -127,9 +131,9 @@
   OTHER_LDLIBS += $(LIBDL)
 endif
 
-ifeq ($(SYSTEM_GIO), true)
+ifeq ($(SYSTEM_GIO)$(SYSTEM_GSETTINGS), truetrue)
   OTHER_LDLIBS += $(GIO_LIBS)
-  CPPFLAGS += $(GIO_CFLAGS) -DUSE_SYSTEM_GIO
+  CPPFLAGS += $(GIO_CFLAGS) -DUSE_SYSTEM_GIO -DUSE_SYSTEM_GSETTINGS
 else
   CPPFLAGS += -I$(PLATFORM_SRC)/native/common/deps/glib2
   OTHER_LDLIBS += $(LIBDL)
diff -r 8e740701950b -r bf4c2a6c354d make/java/nio/Makefile
--- a/make/java/nio/Makefile	Tue Feb 10 16:24:28 2015 +0000
+++ b/make/java/nio/Makefile	Fri Apr 03 16:52:05 2015 +0100
@@ -383,6 +383,10 @@
 
 JAVALIB = 		# Don't self-link
 
+ifeq ($(NATIVE_SUPPORT_DEBUG), true)
+  OTHER_CFLAGS += -DNATIVE_SUPPORT_DEBUG
+endif
+
 #
 # Access to io_util.c and net_util.c
 #
diff -r 8e740701950b -r bf4c2a6c354d make/javax/sound/SoundDefs.gmk
--- a/make/javax/sound/SoundDefs.gmk	Tue Feb 10 16:24:28 2015 +0000
+++ b/make/javax/sound/SoundDefs.gmk	Fri Apr 03 16:52:05 2015 +0100
@@ -110,6 +110,10 @@
     CPPFLAGS += -DX_ARCH=X_PPC
   endif # ARCH ppc64
 
+  ifeq ($(ARCH), ppc64le)
+    CPPFLAGS += -DX_ARCH=X_PPC64LE
+  endif # ARCH ppc64le
+
   ifeq ($(ARCH), s390)
     CPPFLAGS += -DX_ARCH=X_S390
   endif # ARCH s390
diff -r 8e740701950b -r bf4c2a6c354d make/sun/xawt/Makefile
--- a/make/sun/xawt/Makefile	Tue Feb 10 16:24:28 2015 +0000
+++ b/make/sun/xawt/Makefile	Fri Apr 03 16:52:05 2015 +0100
@@ -215,6 +215,10 @@
   endif
 endif
 
+ifeq ($(NATIVE_SUPPORT_DEBUG), true)
+  OTHER_CFLAGS += -DNATIVE_SUPPORT_DEBUG
+endif
+
 # We have some odd logic here because some Solaris 10 updates
 # have a render.h file that suggests gradients are supported, but
 # the Xrender.h doesn't have the corresponding type definitions.
diff -r 8e740701950b -r bf4c2a6c354d src/share/native/com/sun/media/sound/SoundDefs.h
--- a/src/share/native/com/sun/media/sound/SoundDefs.h	Tue Feb 10 16:24:28 2015 +0000
+++ b/src/share/native/com/sun/media/sound/SoundDefs.h	Fri Apr 03 16:52:05 2015 +0100
@@ -52,6 +52,7 @@
 #define X_S390X         15
 #define X_SH            16
 #define X_AARCH64       17
+#define X_PPC64LE       18
 
 // **********************************
 // Make sure you set X_PLATFORM and X_ARCH defines correctly.
diff -r 8e740701950b -r bf4c2a6c354d src/solaris/bin/ppc64le/jvm.cfg
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/solaris/bin/ppc64le/jvm.cfg	Fri Apr 03 16:52:05 2015 +0100
@@ -0,0 +1,33 @@
+# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+# List of JVMs that can be used as an option to java, javac, etc.
+# Order is important -- first in this list is the default JVM.
+# NOTE that this both this file and its format are UNSUPPORTED and
+# WILL GO AWAY in a future release.
+#
+# You may also select a JVM in an arbitrary location with the
+# "-XXaltjvm=<jvm_dir>" option, but that too is unsupported
+# and may not be available in a future release.
+#
+-server KNOWN
diff -r 8e740701950b -r bf4c2a6c354d src/solaris/native/common/deps/glib2/gio/gio_typedefs.h
--- a/src/solaris/native/common/deps/glib2/gio/gio_typedefs.h	Tue Feb 10 16:24:28 2015 +0000
+++ b/src/solaris/native/common/deps/glib2/gio/gio_typedefs.h	Fri Apr 03 16:52:05 2015 +0100
@@ -30,14 +30,9 @@
 
 #define G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE "standard::content-type"
 
-typedef void* gpointer;
-typedef int    gint;
-typedef gint   gboolean;
-typedef char   gchar;
 typedef struct _GFile GFile;
 typedef struct _GFileInfo GFileInfo;
 typedef struct _GCancellable GCancellable;
-typedef struct _GError GError;
 typedef struct _GAppLaunchContext GAppLaunchContext;
 typedef struct _GSettings GSettings;
 
@@ -61,5 +56,6 @@
 typedef gint (*settings_get_int_func) (GSettings *settings, const gchar *key);
 typedef GSettings* (*settings_get_child_func) (GSettings *settings, const gchar *name);
 typedef void (*strfreev_func) (gchar **str_array);
+typedef void (*error_free_func) (GError *error);
 
 #endif
diff -r 8e740701950b -r bf4c2a6c354d src/solaris/native/common/deps/glib2/gio_fp.c
--- a/src/solaris/native/common/deps/glib2/gio_fp.c	Tue Feb 10 16:24:28 2015 +0000
+++ b/src/solaris/native/common/deps/glib2/gio_fp.c	Fri Apr 03 16:52:05 2015 +0100
@@ -34,29 +34,47 @@
 file_query_info_func file_query_info;
 file_info_get_content_type_func file_info_get_content_type;
 app_info_launch_default_for_uri_func app_info_launch_default_for_uri;
+strfreev_func gstrfreev;
+free_func gfree;
+error_free_func gerror_free;
+
 settings_new_func settings_new;
 settings_get_boolean_func settings_get_boolean;
 settings_get_string_func settings_get_string;
 settings_get_strv_func settings_get_strv;
 settings_get_int_func settings_get_int;
 settings_get_child_func settings_get_child;
-strfreev_func gstrfreev;
-free_func gfree;
+
+static void* gio_handle = NULL;
 
 jboolean gio_init()
 {
-    void* gio_handle;
 
-    gio_handle = dlopen("libgio-2.0.so", RTLD_LAZY);
     if (gio_handle == NULL) {
-        gio_handle = dlopen("libgio-2.0.so.0", RTLD_LAZY);
+        gio_handle = dlopen("libgio-2.0.so", RTLD_LAZY);
         if (gio_handle == NULL) {
-            return JNI_FALSE;
+            gio_handle = dlopen("libgio-2.0.so.0", RTLD_LAZY);
+            if (gio_handle == NULL) {
+                return JNI_FALSE;
+            }
         }
     }
 
+    if (type_init != NULL &&
+        object_unref != NULL &&
+        file_new_for_path != NULL &&
+        file_query_info != NULL &&
+        file_info_get_content_type != NULL &&
+        app_info_launch_default_for_uri != NULL &&
+        gstrfreev != NULL &&
+        gfree != NULL &&
+	gerror_free != NULL)
+    {
+        NATDEBUG("gio_init returning early true\n")
+        return JNI_TRUE;
+    }
+
     type_init = (type_init_func)dlsym(gio_handle, "g_type_init");
-    (*g_type_init)();
 
     object_unref = (object_unref_func)dlsym(gio_handle, "g_object_unref");
 
@@ -70,7 +88,54 @@
         dlsym(gio_handle, "g_file_info_get_content_type");
 
     app_info_launch_default_for_uri = (app_info_launch_default_for_uri_func)
-	dlsym (gio_handle, "g_app_info_launch_default_for_uri");
+        dlsym (gio_handle, "g_app_info_launch_default_for_uri");
+
+    gstrfreev = (strfreev_func) dlsym (gio_handle, "g_strfreev");
+    gfree = (free_func) dlsym (gio_handle, "g_free");
+    gerror_free = (error_free_func) dlsym (gio_handle, "g_error_free");
+
+#ifdef NATIVE_SUPPORT_DEBUG
+    printf("type_init=%p, object_unref=%p, file_new_for_path=%p,"
+           "file_query_info=%p, file_info_get_content_type=%p,"
+           "app_info_launch_default_for_uri=%p,gstrfreev=%p,"
+           "gfree=%p, gerror_free=%p\n", type_init, object_unref,
+	   file_new_for_path, file_query_info, file_info_get_content_type,
+	   app_info_launch_default_for_uri, gstrfreev, gfree, gerror_free);
+#endif
+
+    if (type_init == NULL ||
+        object_unref == NULL ||
+        file_new_for_path == NULL ||
+        file_query_info == NULL ||
+        file_info_get_content_type == NULL ||
+        app_info_launch_default_for_uri == NULL ||
+        gstrfreev == NULL ||
+        gfree == NULL ||
+	gerror_free == NULL)
+    {
+        dlclose(gio_handle);
+        NATDEBUG("gio_init returning false\n")
+        return JNI_FALSE;
+    }
+
+    NATDEBUG("gio_init returning true\n")
+    return JNI_TRUE;
+}
+
+jboolean gsettings_init()
+{
+    gio_init();
+
+    if (settings_new != NULL &&
+        settings_get_boolean != NULL &&
+        settings_get_string != NULL &&
+        settings_get_strv != NULL &&
+        settings_get_int != NULL &&
+        settings_get_child != NULL)
+    {
+        NATDEBUG("gsettings_init returning early true\n")
+        return JNI_TRUE;
+    }
 
     settings_new = (settings_new_func) dlsym (gio_handle, "g_settings_new");
     settings_get_boolean = (settings_get_boolean_func)
@@ -83,27 +148,28 @@
       dlsym (gio_handle, "g_settings_get_int");
     settings_get_child = (settings_get_child_func)
       dlsym (gio_handle, "g_settings_get_child");
-    gstrfreev = (strfreev_func) dlsym (gio_handle, "g_strfreev");
-    gfree = (free_func) dlsym (gio_handle, "g_free");
 
-    if (type_init == NULL ||
-        object_unref == NULL ||
-        file_new_for_path == NULL ||
-        file_query_info == NULL ||
-        file_info_get_content_type == NULL ||
-	app_info_launch_default_for_uri == NULL ||
-	settings_new == NULL ||
-	settings_get_boolean == NULL ||
-	settings_get_string == NULL ||
-	settings_get_strv == NULL ||
-	settings_get_int == NULL ||
-	settings_get_child == NULL ||
-	gstrfreev == NULL ||
-	gfree == NULL)
+#ifdef NATIVE_SUPPORT_DEBUG
+    printf("settings_new=%p, settings_get_boolean=%p,"
+           "settings_get_string=%p, settings_get_strv=%p,"
+           "settings_get_int=%p, settings_get_child=%p\n",
+           settings_new, settings_get_boolean,
+           settings_get_string, settings_get_strv,
+           settings_get_int, settings_get_child);
+#endif
+
+    if (settings_new == NULL ||
+        settings_get_boolean == NULL ||
+        settings_get_string == NULL ||
+        settings_get_strv == NULL ||
+        settings_get_int == NULL ||
+        settings_get_child == NULL)
     {
         dlclose(gio_handle);
+        NATDEBUG("g_settings_init returning false\n")
         return JNI_FALSE;
     }
 
+    NATDEBUG("g_settings_init returning true\n")
     return JNI_TRUE;
 }
diff -r 8e740701950b -r bf4c2a6c354d src/solaris/native/common/deps/glib2/gio_fp.h
--- a/src/solaris/native/common/deps/glib2/gio_fp.h	Tue Feb 10 16:24:28 2015 +0000
+++ b/src/solaris/native/common/deps/glib2/gio_fp.h	Fri Apr 03 16:52:05 2015 +0100
@@ -26,9 +26,14 @@
 #ifndef __GIO_FP_H__
 #define __GIO_FP_H__
 
+#include <glib_fp.h>
 #include <gio/gio_typedefs.h>
 
-#include <glib_fp.h>
+#ifdef NATIVE_SUPPORT_DEBUG
+#define NATDEBUG(x) printf(x);
+#else
+#define NATDEBUG(x)
+#endif
 
 extern object_unref_func object_unref;
 extern file_new_for_path_func file_new_for_path;
@@ -42,9 +47,11 @@
 extern settings_get_int_func settings_get_int;
 extern settings_get_child_func settings_get_child;
 extern strfreev_func gstrfreev;
+extern error_free_func gerror_free;
 
 #define g_object_unref (*object_unref)
 #define g_strfreev (*gstrfreev)
+#define g_error_free (*gerror_free);
 #define g_file_new_for_path (*file_new_for_path)
 #define g_file_query_info (*file_query_info)
 #define g_file_info_get_content_type (*file_info_get_content_type)
@@ -57,5 +64,6 @@
 #define g_settings_get_child (*settings_get_child)
 
 jboolean gio_init();
+jboolean gsettings_init();
 
 #endif
diff -r 8e740701950b -r bf4c2a6c354d src/solaris/native/common/deps/glib2/glib_fp.h
--- a/src/solaris/native/common/deps/glib2/glib_fp.h	Tue Feb 10 16:24:28 2015 +0000
+++ b/src/solaris/native/common/deps/glib2/glib_fp.h	Fri Apr 03 16:52:05 2015 +0100
@@ -27,15 +27,32 @@
 #ifndef __GLIB_FP_H__
 #define __GLIB_FP_H__
 
+#if !defined (USE_SYSTEM_GIO) && !defined (USE_SYSTEM_GCONF)
+
+#include <stdint.h>
+
+typedef void* gpointer;
+typedef int    gint;
+typedef gint   gboolean;
+typedef char   gchar;
+typedef uint32_t guint32;
+typedef guint32 GQuark;
+
+typedef struct {
+  GQuark       domain;
+  gint         code;
+  gchar       *message;
+} GError;
+
+#define g_type_init (*type_init)
+#define g_free (*gfree)
+
+#endif
+
 typedef void (*type_init_func)(void);
 typedef void (*free_func) (void* mem);
 
 extern type_init_func type_init;
 extern free_func gfree;
 
-#ifndef USE_SYSTEM_GIO
-#define g_type_init (*type_init)
-#define g_free (*gfree)
-#endif
-
 #endif /* __GLIB_FP_H__ */
diff -r 8e740701950b -r bf4c2a6c354d src/solaris/native/sun/net/spi/DefaultProxySelector.c
--- a/src/solaris/native/sun/net/spi/DefaultProxySelector.c	Tue Feb 10 16:24:28 2015 +0000
+++ b/src/solaris/native/sun/net/spi/DefaultProxySelector.c	Fri Apr 03 16:52:05 2015 +0100
@@ -37,7 +37,7 @@
 
 #include <gconf/gconf-client.h>
 
-#ifdef USE_SYSTEM_GIO
+#ifdef USE_SYSTEM_GSETTINGS
 #include <gio/gio.h>
 #else
 #include <gio_fp.h>
@@ -103,11 +103,11 @@
   ptype_socksID = (*env)->GetStaticFieldID(env, ptype_class, "SOCKS", "Ljava/net/Proxy$Type;");
   isaddr_createUnresolvedID = (*env)->GetStaticMethodID(env, isaddr_class, "createUnresolved", "(Ljava/lang/String;I)Ljava/net/InetSocketAddress;");
 
-#ifdef USE_SYSTEM_GIO
+#ifdef USE_SYSTEM_GSETTINGS
   use_gio = JNI_TRUE;
   g_type_init ();
 #else
-  use_gio = gio_init();
+  use_gio = gsettings_init();
 #endif
 
   if (use_gio == JNI_TRUE) {
diff -r 8e740701950b -r bf4c2a6c354d src/solaris/native/sun/nio/fs/GnomeFileTypeDetector.c
--- a/src/solaris/native/sun/nio/fs/GnomeFileTypeDetector.c	Tue Feb 10 16:24:28 2015 +0000
+++ b/src/solaris/native/sun/nio/fs/GnomeFileTypeDetector.c	Fri Apr 03 16:52:05 2015 +0100
@@ -68,6 +68,11 @@
     ret = gio_init();
 #endif
 
+#ifdef NATIVE_SUPPORT_DEBUG
+    printf("initializeGio: gio_init returned %s\n",
+	   ret == JNI_FALSE ? "false" : "true");
+#endif
+
     // If there was an error initializing GIO, return false immediately
     if (ret == JNI_FALSE)
     {
@@ -85,22 +90,39 @@
     char* path = (char*)jlong_to_ptr(pathAddress);
     GFile* gfile;
     GFileInfo* gfileinfo;
+    GError *error = NULL;
     jbyteArray result = NULL;
 
     gfile = g_file_new_for_path (path);
     gfileinfo = g_file_query_info (gfile, G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE,
-        G_FILE_QUERY_INFO_NONE, NULL, NULL);
-    if (gfileinfo != NULL) {
-        const char* mime = g_file_info_get_content_type (gfileinfo);
-        if (mime != NULL) {
-            jsize len = strlen(mime);
-            result = (*env)->NewByteArray(env, len);
-            if (result != NULL) {
-                (*env)->SetByteArrayRegion(env, result, 0, len, (jbyte*)mime);
-            }
-        }
-        g_object_unref (gfileinfo);
+        G_FILE_QUERY_INFO_NONE, NULL, &error);
+
+#ifdef NATIVE_SUPPORT_DEBUG
+    printf("gfile=%p, gfileinfo=%p\n", gfile, gfileinfo);
+#endif
+


More information about the distro-pkg-dev mailing list