* src/native/vm/nativevm.c (nativevm_preinit) [WITH_CLASSPATH_SUN]:
authorChristian Thalinger <twisti@complang.tuwien.ac.at>
Mon, 31 Mar 2008 07:24:41 +0000 (09:24 +0200)
committerChristian Thalinger <twisti@complang.tuwien.ac.at>
Mon, 31 Mar 2008 07:24:41 +0000 (09:24 +0200)
Check for native_library_open error.

src/native/vm/nativevm.c

index bab13fb8acff147a069cc51fb81c0de1d64cc3a5..6ca352f21a58d0ccc287bfd244936126149b4f22 100644 (file)
@@ -100,6 +100,8 @@ void nativevm_preinit(void)
 
        TRACESUBSYSTEMINITIALIZATION("nativevm_preinit");
 
+       /* Load libjava.so */
+
        boot_library_path = properties_get("sun.boot.library.path");
 
        len =
@@ -114,9 +116,13 @@ void nativevm_preinit(void)
 
        u = utf_new_char(p);
 
+       handle = native_library_open(u);
+
+       if (handle == NULL)
+               vm_abort("nativevm_init: failed to open libjava.so at: %s", p);
+
        MFREE(p, char, len);
 
-       handle = native_library_open(u);
        native_library_add(u, NULL, handle);
 
        _Jv_sun_misc_Unsafe_init();