Merge "Be careful of failed allocations in the intern table." into dalvik-dev
diff --git a/src/intern_table.cc b/src/intern_table.cc
index 53208fd..4cc19bd 100644
--- a/src/intern_table.cc
+++ b/src/intern_table.cc
@@ -98,18 +98,24 @@
 }
 
 String* InternTable::InternStrong(int32_t utf16_length, const char* utf8_data) {
-  return Insert(String::AllocFromModifiedUtf8(utf16_length, utf8_data), true);
+  return InternStrong(String::AllocFromModifiedUtf8(utf16_length, utf8_data));
 }
 
 String* InternTable::InternStrong(const char* utf8_data) {
-  return Insert(String::AllocFromModifiedUtf8(utf8_data), true);
+  return InternStrong(String::AllocFromModifiedUtf8(utf8_data));
 }
 
 String* InternTable::InternStrong(String* s) {
+  if (s == NULL) {
+    return NULL;
+  }
   return Insert(s, true);
 }
 
 String* InternTable::InternWeak(String* s) {
+  if (s == NULL) {
+    return NULL;
+  }
   return Insert(s, false);
 }