summaryrefslogtreecommitdiffstats
path: root/Source/WebKit/android
diff options
context:
space:
mode:
authorBen Murdoch <benm@google.com>2011-08-16 02:11:53 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2011-08-16 02:11:53 -0700
commitbadc3029160bff93bea4574c36d391ec8e469327 (patch)
treeeb14c16ecf19273b40666ef97566310a5d0802ed /Source/WebKit/android
parent45e2b50602b151ee4c7e01f9cabdd9d491acde8e (diff)
parent3e556736c899f74f2ccc010a8bc7401c36e9a1a0 (diff)
downloadexternal_webkit-badc3029160bff93bea4574c36d391ec8e469327.zip
external_webkit-badc3029160bff93bea4574c36d391ec8e469327.tar.gz
external_webkit-badc3029160bff93bea4574c36d391ec8e469327.tar.bz2
Merge "Check the available memory when allocating an ImageBuffer."
Diffstat (limited to 'Source/WebKit/android')
-rw-r--r--Source/WebKit/android/WebCoreSupport/PlatformBridge.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/Source/WebKit/android/WebCoreSupport/PlatformBridge.cpp b/Source/WebKit/android/WebCoreSupport/PlatformBridge.cpp
index 8d8d809..27fe208 100644
--- a/Source/WebKit/android/WebCoreSupport/PlatformBridge.cpp
+++ b/Source/WebKit/android/WebCoreSupport/PlatformBridge.cpp
@@ -30,6 +30,7 @@
#include "Document.h"
#include "FileSystemClient.h"
#include "FrameView.h"
+#include "JNIUtility.h"
#include "JavaSharedClient.h"
#include "KeyGeneratorClient.h"
#include "MemoryUsage.h"
@@ -229,6 +230,17 @@ int PlatformBridge::actualMemoryUsageMB()
return MemoryUsage::memoryUsageMb(true);
}
+bool PlatformBridge::canSatisfyMemoryAllocation(long bytes)
+{
+ JNIEnv* env = JSC::Bindings::getJNIEnv();
+ jclass bridgeClass = env->FindClass("android/webkit/JniUtil");
+ jmethodID method = env->GetStaticMethodID(bridgeClass, "canSatisfyMemoryAllocation", "(J)Z");
+ jboolean canAllocate = env->CallStaticBooleanMethod(bridgeClass, method, static_cast<jlong>(bytes));
+ env->DeleteLocalRef(bridgeClass);
+
+ return canAllocate == JNI_TRUE;
+}
+
} // namespace WebCore