786 }
787 #endif /* ENABLE_AWT_PRELOAD */
788
789 if (thread_handle) {
790 WaitForSingleObject(thread_handle, INFINITE);
791 GetExitCodeThread(thread_handle, &rslt);
792 CloseHandle(thread_handle);
793 } else {
794 rslt = JavaMain(args);
795 }
796
797 #ifdef ENABLE_AWT_PRELOAD
798 if (awtPreloaded) {
799 AWTPreloadStop();
800 }
801 #endif /* ENABLE_AWT_PRELOAD */
802
803 return rslt;
804 }
805
806 /* Unix only, empty on windows. */
807 void SetJavaLauncherPlatformProps() {}
808
809 /*
810 * The implementation for finding classes from the bootstrap
811 * class loader, refer to java.h
812 */
813 static FindClassFromBootLoader_t *findBootClass = NULL;
814
815 jclass FindBootStrapClass(JNIEnv *env, const char *classname)
816 {
817 HMODULE hJvm;
818
819 if (findBootClass == NULL) {
820 hJvm = GetModuleHandle(JVM_DLL);
821 if (hJvm == NULL) return NULL;
822 /* need to use the demangled entry point */
823 findBootClass = (FindClassFromBootLoader_t *)GetProcAddress(hJvm,
824 "JVM_FindClassFromBootLoader");
825 if (findBootClass == NULL) {
826 JLI_ReportErrorMessage(DLL_ERROR4, "JVM_FindClassFromBootLoader");
827 return NULL;
828 }
|
786 }
787 #endif /* ENABLE_AWT_PRELOAD */
788
789 if (thread_handle) {
790 WaitForSingleObject(thread_handle, INFINITE);
791 GetExitCodeThread(thread_handle, &rslt);
792 CloseHandle(thread_handle);
793 } else {
794 rslt = JavaMain(args);
795 }
796
797 #ifdef ENABLE_AWT_PRELOAD
798 if (awtPreloaded) {
799 AWTPreloadStop();
800 }
801 #endif /* ENABLE_AWT_PRELOAD */
802
803 return rslt;
804 }
805
806 /*
807 * The implementation for finding classes from the bootstrap
808 * class loader, refer to java.h
809 */
810 static FindClassFromBootLoader_t *findBootClass = NULL;
811
812 jclass FindBootStrapClass(JNIEnv *env, const char *classname)
813 {
814 HMODULE hJvm;
815
816 if (findBootClass == NULL) {
817 hJvm = GetModuleHandle(JVM_DLL);
818 if (hJvm == NULL) return NULL;
819 /* need to use the demangled entry point */
820 findBootClass = (FindClassFromBootLoader_t *)GetProcAddress(hJvm,
821 "JVM_FindClassFromBootLoader");
822 if (findBootClass == NULL) {
823 JLI_ReportErrorMessage(DLL_ERROR4, "JVM_FindClassFromBootLoader");
824 return NULL;
825 }
|