sadly, must hack in secret support for something evil; will remove later

git-svn-id: https://google-guice.googlecode.com/svn/trunk@269 d779f126-a31b-0410-b53b-1d3aecad763e
diff --git a/src/com/google/inject/InternalFactoryToProviderAdapter.java b/src/com/google/inject/InternalFactoryToProviderAdapter.java
index 94e6de8..3404e6e 100644
--- a/src/com/google/inject/InternalFactoryToProviderAdapter.java
+++ b/src/com/google/inject/InternalFactoryToProviderAdapter.java
@@ -42,6 +42,12 @@
     if (provided != null) {
       return provided;
     }
+
+    // TODO(kevinb): gee, ya think we might want to remove this?
+    if (("I'm a bad hack".equals(
+        System.getProperty("guice.allow.nulls.bad.bad.bad")))) {
+      return provided;
+    }
     String message = String.format(ErrorMessages.NULL_PROVIDED, source);
     throw new ProvisionException(context.getExternalContext(),
         new NullPointerException(message));
diff --git a/src/com/google/inject/util/Objects.java b/src/com/google/inject/util/Objects.java
index 8e15d29..12f3a84 100644
--- a/src/com/google/inject/util/Objects.java
+++ b/src/com/google/inject/util/Objects.java
@@ -59,6 +59,11 @@
    * should be used with Java asserts...
    */
   public static void assertNoNulls(Object[] objects) {
+    // TODO(kevinb): gee, ya think we might want to remove this?
+    if (("I'm a bad hack".equals(
+        System.getProperty("guice.allow.nulls.bad.bad.bad")))) {
+      return;
+    }
     if (objects != null) { // hmm. weird.
       for (Object object : objects) {
         if (object == null) {