Bug#647992: chromium: unrecoverable Aw, Snap! on start up

Jonathan Nieder jrnieder at gmail.com
Mon Nov 21 05:36:56 UTC 2011


Mattia Monga wrote:

> Chromium starts with a Aw, Snap! page and it is stuck on that. 

Still not clear what the underlying cause is (maybe libnspr is not
available in the sandboxed renderers to resolve weak references or
something like that), but here's a patch to get back to the version 14
behavior, of NSS modules not causing trouble because they are not
loaded at all.

Even with this patch, I can't reproduce the problem described at
http://bugs.debian.org/642219 (i.e., https://mail.google.com loads
fine, even with --user-data-dir=/tmp/nonexistent).

Maybe something along these lines can work as a temporary way to help
people use chromium with sandboxing until we figure the actual cause
out.

Yuck.  I'd go for something more explicit like --without-nss if it
existed.
---
 debian/patches/nss-workaround.patch |   49 +++++++++++++++++++++++++++++++++++
 debian/patches/series               |    1 +
 2 files changed, 50 insertions(+), 0 deletions(-)
 create mode 100644 debian/patches/nss-workaround.patch

diff --git a/debian/patches/nss-workaround.patch b/debian/patches/nss-workaround.patch
new file mode 100644
index 00000000..00c06745
--- /dev/null
+++ b/debian/patches/nss-workaround.patch
@@ -0,0 +1,47 @@
+Subject: Revert "Merge 104421 - Fix library paths for preloading NSS on Ubuntu 11.10."
+
+This backs out the change introduced by r104798, which allowed NSS to
+actually be initialized, where "initialized" means "trip a sandboxing
+bug and take down the renderer".
+
+Works around: http://bugs.debian.org/647992
+
+--- 874/src/crypto/nss_util.cc	2011/10/10 22:14:15	104798
++++ 874/src/crypto/nss_util.cc	2011/10/10 22:11:59	104797
+@@ -29,7 +29,6 @@
+ #include "base/native_library.h"
+ #include "base/stringprintf.h"
+ #include "base/threading/thread_restrictions.h"
+-#include "build/build_config.h"
+ #include "crypto/scoped_nss_types.h"
+ 
+ // USE_NSS means we use NSS for everything crypto-related.  If USE_NSS is not
+@@ -604,18 +603,9 @@
+   // Use relative path to Search PATH for the library files.
+   paths.push_back(FilePath());
+ 
++  // For Debian derivaties NSS libraries are located here.
+-  // For Debian derivatives NSS libraries are located here.
+   paths.push_back(FilePath("/usr/lib/nss"));
+ 
+-  // Ubuntu 11.10 (Oneiric) places the libraries here.
+-#if defined(ARCH_CPU_X86_64)
+-  paths.push_back(FilePath("/usr/lib/x86_64-linux-gnu/nss"));
+-#elif defined(ARCH_CPU_X86)
+-  paths.push_back(FilePath("/usr/lib/i386-linux-gnu/nss"));
+-#elif defined(ARCH_CPU_ARMEL)
+-  paths.push_back(FilePath("/usr/lib/arm-linux-gnueabi/nss"));
+-#endif
+-
+   // A list of library files to load.
+   std::vector<std::string> libs;
+   libs.push_back("libsoftokn3.so");
+@@ -638,7 +628,7 @@
+   if (loaded == libs.size()) {
+     VLOG(3) << "NSS libraries loaded.";
+   } else {
++    LOG(WARNING) << "Failed to load NSS libraries.";
+-    LOG(ERROR) << "Failed to load NSS libraries.";
+   }
+ #endif
+ }
diff --git a/debian/patches/series b/debian/patches/series
index ad74c539..0f1cdaae 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -18,3 +18,4 @@ webkit-version.patch
 cups1.5.patch
 #system_v8.patch
 #protobuf.patch
+nss-workaround.patch
-- 
1.7.8.rc3






More information about the Pkg-games-devel mailing list