Index: wp-includes/l10n.php
===================================================================
--- wp-includes/l10n.php	(revision 8399)
+++ wp-includes/l10n.php	(working copy)
@@ -242,15 +242,21 @@
 function load_textdomain($domain, $mofile) {
 	global $l10n;
 
-	if (isset($l10n[$domain]))
-		return;
-
 	if ( is_readable($mofile))
 		$input = new CachedFileReader($mofile);
 	else
 		return;
 
-	$l10n[$domain] = new gettext_reader($input);
+	$gettext = new gettext_reader($input);
+
+	if (isset($l10n[$domain])) {
+		$l10n[$domain]->load_tables();
+		$gettext->load_tables();
+		$l10n[$domain]->cache_translations = array_merge($gettext->cache_translations, $l10n[$domain]->cache_translations);
+	} else
+		$l10n[$domain] = $gettext;
+
+	unset($input, $gettext);
 }
 
 /**
