Index: wp-includes/l10n.php
===================================================================
--- wp-includes/l10n.php	(revision 12053)
+++ wp-includes/l10n.php	(working copy)
@@ -396,19 +396,41 @@
 }
 
 /**
+ * Empty translation class used when no Translation object is available
+ * for domain.
+ *
+ * @package WordPress
+ * @since 2.9.0
+ */
+Class Empty_Translation {
+	function translate($text, $context = '') {
+		return $text;
+	}
+
+	function translate_plural($single, $plural, $number) {
+		return $number == 1 ? $single : $plural;
+	}
+}
+
+/**
  * Returns the Translations instance for a domain. If there isn't one,
- * returns empty Translations instance.
+ * returns Empty_Translations instance. That means the only valid methods
+ * are translate() and translate_plural().
  *
  * @param string $domain
- * @return object A Translation instance
+ * @return object An (Empty_)Translation instance
  */
 function &get_translations_for_domain( $domain ) {
 	global $l10n;
-	$empty = &new Translations;
+	static $empty;
+
 	if ( isset($l10n[$domain]) )
 		return $l10n[$domain];
-	else
+	else {
+		if (!isset($empty))
+			$empty = &new Empty_Translation();
 		return $empty;
+	}
 }
 
 /**
