Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0fb17641 authored by Torne (Richard Coles)'s avatar Torne (Richard Coles) Committed by Android (Google) Code Review
Browse files

Merge "Make WebViewFactory more robust." into lmp-dev

parents a3d98c25 27cb0d22
Loading
Loading
Loading
Loading
+30 −26
Original line number Diff line number Diff line
@@ -175,7 +175,9 @@ public final class WebViewFactory {
        String[] nativePaths = null;
        try {
            nativePaths = getWebViewNativeLibraryPaths();
        } catch (PackageManager.NameNotFoundException e) {
        } catch (Throwable t) {
            // Log and discard errors at this stage as we must not crash the system server.
            Log.e(LOGTAG, "error preparing webview native library", t);
        }
        prepareWebViewInSystemServer(nativePaths);
    }
@@ -201,9 +203,6 @@ public final class WebViewFactory {
        String[] nativeLibs = null;
        try {
            nativeLibs = WebViewFactory.getWebViewNativeLibraryPaths();
        } catch (PackageManager.NameNotFoundException e) {
        }

            if (nativeLibs != null) {
                long newVmSize = 0L;

@@ -224,13 +223,18 @@ public final class WebViewFactory {
                            " bytes of address space.");
                }
                // The required memory can be larger than the file on disk (due to .bss), and an
            // upgraded version of the library will likely be larger, so always attempt to reserve
            // twice as much as we think to allow for the library to grow during this boot cycle.
                // upgraded version of the library will likely be larger, so always attempt to
                // reserve twice as much as we think to allow for the library to grow during this
                // boot cycle.
                newVmSize = Math.max(2 * newVmSize, CHROMIUM_WEBVIEW_DEFAULT_VMSIZE_BYTES);
                Log.d(LOGTAG, "Setting new address space to " + newVmSize);
                SystemProperties.set(CHROMIUM_WEBVIEW_VMSIZE_SIZE_PROPERTY,
                        Long.toString(newVmSize));
            }
        } catch (Throwable t) {
            // Log and discard errors at this stage as we must not crash the system server.
            Log.e(LOGTAG, "error preparing webview native library", t);
        }
        prepareWebViewInSystemServer(nativeLibs);
    }