mirror of https://github.com/encounter/SDL.git
Android: nativeQuit for SDLActivity thread
- destroy Android_ActivityMutex - display any SDL error message that may have occured in this thread, since SDL_GetError() is thread specific, and user has no access to it.
This commit is contained in:
parent
dad8161103
commit
66fbfe1d00
|
@ -405,6 +405,8 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||
}
|
||||
}
|
||||
|
||||
SDLActivity.nativeQuit();
|
||||
|
||||
super.onDestroy();
|
||||
}
|
||||
|
||||
|
@ -727,6 +729,7 @@ public class SDLActivity extends Activity implements View.OnSystemUiVisibilityCh
|
|||
public static native int nativeRunMain(String library, String function, Object arguments);
|
||||
public static native void nativeLowMemory();
|
||||
public static native void nativeSendQuit();
|
||||
public static native void nativeQuit();
|
||||
public static native void nativePause();
|
||||
public static native void nativeResume();
|
||||
public static native void onNativeDropFile(String filename);
|
||||
|
|
|
@ -125,6 +125,9 @@ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE(nativeLowMemory)(
|
|||
JNIEXPORT void JNICALL SDL_JAVA_INTERFACE(nativeSendQuit)(
|
||||
JNIEnv *env, jclass cls);
|
||||
|
||||
JNIEXPORT void JNICALL SDL_JAVA_INTERFACE(nativeQuit)(
|
||||
JNIEnv *env, jclass cls);
|
||||
|
||||
JNIEXPORT void JNICALL SDL_JAVA_INTERFACE(nativePause)(
|
||||
JNIEnv *env, jclass cls);
|
||||
|
||||
|
@ -833,6 +836,25 @@ JNIEXPORT void JNICALL SDL_JAVA_INTERFACE(nativeSendQuit)(
|
|||
SDL_SemPost(Android_ResumeSem);
|
||||
}
|
||||
|
||||
/* Activity ends */
|
||||
JNIEXPORT void JNICALL SDL_JAVA_INTERFACE(nativeQuit)(
|
||||
JNIEnv *env, jclass cls)
|
||||
{
|
||||
const char *str;
|
||||
|
||||
if (Android_ActivityMutex) {
|
||||
SDL_DestroyMutex(Android_ActivityMutex);
|
||||
Android_ActivityMutex = NULL;
|
||||
}
|
||||
|
||||
str = SDL_GetError();
|
||||
if (str && str[0]) {
|
||||
__android_log_print(ANDROID_LOG_VERBOSE, "SDL", "SDLActivity thread ends (error=%s)", str);
|
||||
} else {
|
||||
__android_log_print(ANDROID_LOG_VERBOSE, "SDL", "SDLActivity thread ends");
|
||||
}
|
||||
}
|
||||
|
||||
/* Pause */
|
||||
JNIEXPORT void JNICALL SDL_JAVA_INTERFACE(nativePause)(
|
||||
JNIEnv *env, jclass cls)
|
||||
|
|
Loading…
Reference in New Issue