Merge change I325e22ca into eclair-mr2

* changes:
  Fix a leak in WebView.
diff --git a/core/java/android/webkit/BrowserFrame.java b/core/java/android/webkit/BrowserFrame.java
index e6e26fa..1496f1b 100644
--- a/core/java/android/webkit/BrowserFrame.java
+++ b/core/java/android/webkit/BrowserFrame.java
@@ -105,10 +105,13 @@
      */
     public BrowserFrame(Context context, WebViewCore w, CallbackProxy proxy,
             WebSettings settings, Map<String, Object> javascriptInterfaces) {
+
+        Context appContext = context.getApplicationContext();
+
         // Create a global JWebCoreJavaBridge to handle timers and
         // cookies in the WebCore thread.
         if (sJavaBridge == null) {
-            sJavaBridge = new JWebCoreJavaBridge(context);
+            sJavaBridge = new JWebCoreJavaBridge(appContext);
             // set WebCore native cache size
             ActivityManager am = (ActivityManager) context
                     .getSystemService(Context.ACTIVITY_SERVICE);
@@ -118,18 +121,18 @@
                 sJavaBridge.setCacheSize(4 * 1024 * 1024);
             }
             // initialize CacheManager
-            CacheManager.init(context);
+            CacheManager.init(appContext);
             // create CookieSyncManager with current Context
-            CookieSyncManager.createInstance(context);
+            CookieSyncManager.createInstance(appContext);
             // create PluginManager with current Context
-            PluginManager.getInstance(context);
+            PluginManager.getInstance(appContext);
         }
         mJSInterfaceMap = javascriptInterfaces;
 
         mSettings = settings;
         mContext = context;
         mCallbackProxy = proxy;
-        mDatabase = WebViewDatabase.getInstance(context);
+        mDatabase = WebViewDatabase.getInstance(appContext);
         mWebViewCore = w;
 
         AssetManager am = context.getAssets();
@@ -496,7 +499,7 @@
      * @param uri A String representing the URI of the desired file.
      * @param buffer The byte array to copy the data into.
      * @param offset The offet into buffer to place the data.
-     * @param expectSize The size that the buffer has allocated for this file.
+     * @param expectedSize The size that the buffer has allocated for this file.
      * @return int The size of the given file, or zero if it fails.
      */
     private int getFile(String uri, byte[] buffer, int offset,
diff --git a/core/java/android/webkit/CacheManager.java b/core/java/android/webkit/CacheManager.java
index c167414..c4e26bc 100644
--- a/core/java/android/webkit/CacheManager.java
+++ b/core/java/android/webkit/CacheManager.java
@@ -167,7 +167,7 @@
      * @param context The application context.
      */
     static void init(Context context) {
-        mDataBase = WebViewDatabase.getInstance(context);
+        mDataBase = WebViewDatabase.getInstance(context.getApplicationContext());
         mBaseDir = new File(context.getCacheDir(), "webviewCache");
         if (createCacheDirectory() && mClearCacheOnInit) {
             removeAllCacheFiles();
diff --git a/core/java/android/webkit/CookieSyncManager.java b/core/java/android/webkit/CookieSyncManager.java
index 14375d2..abe9178 100644
--- a/core/java/android/webkit/CookieSyncManager.java
+++ b/core/java/android/webkit/CookieSyncManager.java
@@ -93,7 +93,7 @@
     public static synchronized CookieSyncManager createInstance(
             Context context) {
         if (sRef == null) {
-            sRef = new CookieSyncManager(context);
+            sRef = new CookieSyncManager(context.getApplicationContext());
         }
         return sRef;
     }
diff --git a/core/java/android/webkit/PluginManager.java b/core/java/android/webkit/PluginManager.java
index 88429c5..141984a 100644
--- a/core/java/android/webkit/PluginManager.java
+++ b/core/java/android/webkit/PluginManager.java
@@ -96,7 +96,7 @@
                 throw new IllegalStateException(
                         "First call to PluginManager need a valid context.");
             }
-            mInstance = new PluginManager(context);
+            mInstance = new PluginManager(context.getApplicationContext());
         }
         return mInstance;
     }
diff --git a/core/java/android/webkit/WebView.java b/core/java/android/webkit/WebView.java
index 3207c79..add4ac7 100644
--- a/core/java/android/webkit/WebView.java
+++ b/core/java/android/webkit/WebView.java
@@ -732,7 +732,7 @@
     /**
      * Construct a new WebView with layout parameters, a default style and a set
      * of custom Javscript interfaces to be added to the WebView at initialization
-     * time. This guraratees that these interfaces will be available when the JS
+     * time. This guarantees that these interfaces will be available when the JS
      * context is initialized.
      * @param context A Context object used to access application assets.
      * @param attrs An AttributeSet passed to our parent.