diff options
Diffstat (limited to 'backends')
-rw-r--r-- | backends/platform/android/android.cpp | 6 | ||||
-rw-r--r-- | backends/platform/android/asset-archive.cpp | 26 | ||||
-rw-r--r-- | backends/platform/android/jni.cpp | 4 | ||||
-rw-r--r-- | backends/platform/maemo/debian/changelog | 10 | ||||
-rw-r--r-- | backends/platform/psp/audio.cpp | 2 |
5 files changed, 34 insertions, 14 deletions
diff --git a/backends/platform/android/android.cpp b/backends/platform/android/android.cpp index 0b31ee717c..f06e4be19e 100644 --- a/backends/platform/android/android.cpp +++ b/backends/platform/android/android.cpp @@ -116,7 +116,7 @@ OSystem_Android::OSystem_Android(int audio_sample_rate, int audio_buffer_size) : _screen_changeid(0), _egl_surface_width(0), _egl_surface_height(0), - _htc_fail(false), + _htc_fail(true), _force_redraw(false), _game_texture(0), _overlay_texture(0), @@ -162,10 +162,10 @@ OSystem_Android::OSystem_Android(int audio_sample_rate, int audio_buffer_size) : getSystemProperty("ro.product.cpu.abi").c_str()); mf.toLowercase(); - _htc_fail = mf.contains("htc"); + /*_htc_fail = mf.contains("htc"); if (_htc_fail) - LOGI("Enabling HTC workaround"); + LOGI("Enabling HTC workaround");*/ } OSystem_Android::~OSystem_Android() { diff --git a/backends/platform/android/asset-archive.cpp b/backends/platform/android/asset-archive.cpp index 14840de996..da378fb082 100644 --- a/backends/platform/android/asset-archive.cpp +++ b/backends/platform/android/asset-archive.cpp @@ -97,7 +97,9 @@ JavaInputStream::JavaInputStream(JNIEnv *env, jobject is) : { _input_stream = env->NewGlobalRef(is); _buflen = 8192; - _buf = (jbyteArray)env->NewGlobalRef(env->NewByteArray(_buflen)); + jobject buf = env->NewByteArray(_buflen); + _buf = (jbyteArray)env->NewGlobalRef(buf); + env->DeleteLocalRef(buf); jclass cls = env->GetObjectClass(_input_stream); MID_mark = env->GetMethodID(cls, "mark", "(I)V"); @@ -112,6 +114,7 @@ JavaInputStream::JavaInputStream(JNIEnv *env, jobject is) : assert(MID_reset); MID_skip = env->GetMethodID(cls, "skip", "(J)J"); assert(MID_skip); + env->DeleteLocalRef(cls); // Mark start of stream, so we can reset back to it. // readlimit is set to something bigger than anything we might @@ -142,7 +145,9 @@ uint32 JavaInputStream::read(void *dataPtr, uint32 dataSize) { _buflen = dataSize; env->DeleteGlobalRef(_buf); - _buf = static_cast<jbyteArray>(env->NewGlobalRef(env->NewByteArray(_buflen))); + jobject buf = env->NewByteArray(_buflen); + _buf = static_cast<jbyteArray>(env->NewGlobalRef(buf)); + env->DeleteLocalRef(buf); } jint ret = env->CallIntMethod(_input_stream, MID_read, _buf, 0, dataSize); @@ -290,6 +295,7 @@ AssetFdReadStream::AssetFdReadStream(JNIEnv *env, jobject assetfd) : jclass cls = env->GetObjectClass(_assetfd); MID_close = env->GetMethodID(cls, "close", "()V"); assert(MID_close); + env->DeleteLocalRef(cls); jmethodID MID_getStartOffset = env->GetMethodID(cls, "getStartOffset", "()J"); @@ -311,8 +317,10 @@ AssetFdReadStream::AssetFdReadStream(JNIEnv *env, jobject assetfd) : jclass fd_cls = env->GetObjectClass(javafd); jfieldID FID_descriptor = env->GetFieldID(fd_cls, "descriptor", "I"); assert(FID_descriptor); + env->DeleteLocalRef(fd_cls); _fd = env->GetIntField(javafd, FID_descriptor); + env->DeleteLocalRef(javafd); } AssetFdReadStream::~AssetFdReadStream() { @@ -382,6 +390,7 @@ AndroidAssetArchive::AndroidAssetArchive(jobject am) { MID_list = env->GetMethodID(cls, "list", "(Ljava/lang/String;)[Ljava/lang/String;"); assert(MID_list); + env->DeleteLocalRef(cls); } AndroidAssetArchive::~AndroidAssetArchive() { @@ -452,7 +461,9 @@ int AndroidAssetArchive::listMembers(Common::ArchiveMemberList &member_list) con member_list.push_back(getMember(thispath)); ++count; } else { - dirlist.push_back(thispath); + // AssetManager is ridiculously slow and we don't care + // about subdirectories at the moment, so ignore them. + // dirlist.push_back(thispath); } } @@ -481,8 +492,10 @@ Common::SeekableReadStream *AndroidAssetArchive::createReadStreamForMember(const env->ExceptionClear(); else if (afd != 0) { // success :) + Common::SeekableReadStream *stream = new AssetFdReadStream(env, afd); env->DeleteLocalRef(jpath); - return new AssetFdReadStream(env, afd); + env->DeleteLocalRef(afd); + return stream; } // ... and fallback to normal open() if that doesn't work @@ -498,7 +511,10 @@ Common::SeekableReadStream *AndroidAssetArchive::createReadStreamForMember(const return 0; } - return new JavaInputStream(env, is); + Common::SeekableReadStream *stream = new JavaInputStream(env, is); + env->DeleteLocalRef(jpath); + env->DeleteLocalRef(is); + return stream; } #endif diff --git a/backends/platform/android/jni.cpp b/backends/platform/android/jni.cpp index a7ebb87651..2b738dd63f 100644 --- a/backends/platform/android/jni.cpp +++ b/backends/platform/android/jni.cpp @@ -603,10 +603,10 @@ void JNI::setPause(JNIEnv *env, jobject self, jboolean value) { g_engine->pauseEngine(value); - if (value && + /*if (value && g_engine->hasFeature(Engine::kSupportsSavingDuringRuntime) && g_engine->canSaveGameStateCurrently()) - g_engine->saveGameState(0, "Android parachute"); + g_engine->saveGameState(0, "Android parachute");*/ } pause = value; diff --git a/backends/platform/maemo/debian/changelog b/backends/platform/maemo/debian/changelog index ea44574e96..568edd0282 100644 --- a/backends/platform/maemo/debian/changelog +++ b/backends/platform/maemo/debian/changelog @@ -1,8 +1,14 @@ -scummvm (1.6.0~git) unstable; urgency=low +scummvm (1.7.0~git) unstable; urgency=low * Development snapshot - -- Tarek Soliman <tsoliman@scummvm.org> Tue, 10 Jul 2012 23:02:00 -0500 + -- Tarek Soliman <tsoliman@scummvm.org> Sat, 01 Jun 2013 21:03:52 -0500 + +scummvm (1.6.0) unstable; urgency=low + + * 1.6.0 release + + -- Tarek Soliman <tsoliman@scummvm.org> Fri, 31 May 2013 23:02:00 -0500 scummvm (1.5.0) unstable; urgency=low diff --git a/backends/platform/psp/audio.cpp b/backends/platform/psp/audio.cpp index 4fab9fdd3f..dcbf0b2239 100644 --- a/backends/platform/psp/audio.cpp +++ b/backends/platform/psp/audio.cpp @@ -100,8 +100,6 @@ void PspAudio::threadFunction() { PSP_DEBUG_PRINT("audio thread unpaused\n"); } - PSP_DEBUG_PRINT("remaining samples[%d]\n", _remainingSamples); - PSP_DEBUG_PRINT("filling buffer[%d]\n", _bufferToFill); _callback(_userData, _buffers[_bufferToFill], _bufferSize); // ask mixer to fill in data nextBuffer(_bufferToFill); |