merge in idea133-weekly-release history after reset to 5109ec0544f566b5a2e5298a03b1ecd1d6538cca
diff --git a/bcprov/src/main/java/org/bouncycastle/asn1/StreamUtil.java b/bcprov/src/main/java/org/bouncycastle/asn1/StreamUtil.java
index b6cb070..59e96e8 100644
--- a/bcprov/src/main/java/org/bouncycastle/asn1/StreamUtil.java
+++ b/bcprov/src/main/java/org/bouncycastle/asn1/StreamUtil.java
@@ -8,7 +8,9 @@
 
 class StreamUtil
 {
-    private static final long  MAX_MEMORY = Runtime.getRuntime().maxMemory();
+    // BEGIN android-removed
+    // private static final long  MAX_MEMORY = Runtime.getRuntime().maxMemory();
+    // END android-removed
 
     /**
      * Find out possible longest length...
@@ -48,12 +50,15 @@
             }
         }
 
-        if (MAX_MEMORY > Integer.MAX_VALUE)
+        // BEGIN android-changed
+        long maxMemory = Runtime.getRuntime().maxMemory();
+        if (maxMemory > Integer.MAX_VALUE)
         {
             return Integer.MAX_VALUE;
         }
 
-        return (int)MAX_MEMORY;
+        return (int) maxMemory;
+        // END android-changed
     }
 
     static int calculateBodyLength(
diff --git a/patches/bcprov.patch b/patches/bcprov.patch
index 8ab729f..4640d50 100644
--- a/patches/bcprov.patch
+++ b/patches/bcprov.patch
@@ -130,6 +130,38 @@
  
      /**
       * return a printable string from the passed in object.
+diff -Naur bcprov-jdk15on-150.orig/org/bouncycastle/asn1/StreamUtil.java bcprov-jdk15on-150/org/bouncycastle/asn1/StreamUtil.java
+--- bcprov-jdk15on-150.orig/org/bouncycastle/asn1/StreamUtil.java	2013-12-03 20:18:20.000000000 +0000
++++ bcprov-jdk15on-150/org/bouncycastle/asn1/StreamUtil.java	2014-05-05 17:17:14.000000000 +0000
+@@ -8,7 +8,9 @@
+ 
+ class StreamUtil
+ {
+-    private static final long  MAX_MEMORY = Runtime.getRuntime().maxMemory();
++    // BEGIN android-removed
++    // private static final long  MAX_MEMORY = Runtime.getRuntime().maxMemory();
++    // END android-removed
+ 
+     /**
+      * Find out possible longest length...
+@@ -48,12 +50,15 @@
+             }
+         }
+ 
+-        if (MAX_MEMORY > Integer.MAX_VALUE)
++        // BEGIN android-changed
++        long maxMemory = Runtime.getRuntime().maxMemory();
++        if (maxMemory > Integer.MAX_VALUE)
+         {
+             return Integer.MAX_VALUE;
+         }
+ 
+-        return (int)MAX_MEMORY;
++        return (int) maxMemory;
++        // END android-changed
+     }
+ 
+     static int calculateBodyLength(
 diff -Naur bcprov-jdk15on-150.orig/org/bouncycastle/asn1/cms/ContentInfo.java bcprov-jdk15on-150/org/bouncycastle/asn1/cms/ContentInfo.java
 --- bcprov-jdk15on-150.orig/org/bouncycastle/asn1/cms/ContentInfo.java	2013-12-03 20:18:20.000000000 +0000
 +++ bcprov-jdk15on-150/org/bouncycastle/asn1/cms/ContentInfo.java	2013-12-12 00:35:05.000000000 +0000