Android fix for magic tools under 64 bits devices by Terrence Sheflin, see 345d3cc78a
This commit is contained in:
parent
79c246976c
commit
73c1cabac1
3 changed files with 15 additions and 2 deletions
|
|
@ -20,12 +20,18 @@
|
|||
#include "android_assets.h"
|
||||
|
||||
AAssetManager * asset_manager = NULL;
|
||||
char* nativelibdir = NULL;
|
||||
|
||||
AAssetDir * open_asset_dir(char * dirname)
|
||||
{
|
||||
return AAssetManager_openDir(asset_manager, dirname);
|
||||
}
|
||||
|
||||
char* get_nativelibdir()
|
||||
{
|
||||
return nativelibdir;
|
||||
}
|
||||
|
||||
void load_assets_dir(char * dirname, tp_ftw_str ** ffilenames, unsigned * num_file_names)
|
||||
{
|
||||
AAssetDir* assetDir = AAssetManager_openDir(asset_manager, dirname);
|
||||
|
|
@ -70,6 +76,12 @@ JNIEXPORT jboolean Java_org_tuxpaint_tuxpaintActivity_managertojni(JNIEnv * env,
|
|||
return 1;
|
||||
}
|
||||
|
||||
JNIEXPORT void Java_org_tuxpaint_tuxpaintActivity_setnativelibdir(JNIEnv * env, jclass clazz, jstring path)
|
||||
{
|
||||
const char *cpath = (*env)->GetStringUTFChars(env, path, NULL);
|
||||
nativelibdir = strdup(cpath);
|
||||
(*env)->ReleaseStringUTFChars(env, path, cpath);
|
||||
}
|
||||
|
||||
|
||||
void load_brushes_from_assets(SDL_Surface * screen, SDL_Texture *texture, SDL_Renderer *renderer, const char * dirname, void (*fn) (SDL_Surface * screen,
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@
|
|||
#define ASSETS_STAMPS_DIR "stamps/cartoon/tux"
|
||||
|
||||
AAssetDir * open_asset_dir(char * dirname);
|
||||
char* get_nativelibdir();
|
||||
|
||||
void load_brushes_from_assets(SDL_Surface * screen, SDL_Texture *texture, SDL_Renderer *renderer, const char * dirname, void (*fn) (SDL_Surface * screen,
|
||||
SDL_Texture * texture,
|
||||
|
|
@ -48,5 +49,6 @@ void load_assets_dir(char * dirname, tp_ftw_str ** ffilenames, unsigned * num_f
|
|||
|
||||
JNIEXPORT jboolean Java_org_tuxpaint_tuxpaintActivity_managertojni(JNIEnv * env, jclass clazz, jobject mgr);
|
||||
|
||||
JNIEXPORT void Java_org_tuxpaint_tuxpaintActivity_setnativelibdir(JNIEnv * env, jclass clazz, jstring path);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -20338,8 +20338,7 @@ static void load_magic_plugins(void)
|
|||
{
|
||||
#if defined (__ANDROID__)
|
||||
/* Need this at runtime as Android installs on different locations depending on the user */
|
||||
place = strdup(SDL_AndroidGetInternalStoragePath());
|
||||
strcpy(strstr(place, "/files"), "/lib/");
|
||||
place = strdup(get_nativelibdir());
|
||||
#else
|
||||
place = strdup(MAGIC_PREFIX);
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue