Index: i18nblocks/i18nblocks.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/i18n/i18nblocks/i18nblocks.module,v
retrieving revision 1.7.2.17
diff -u -p -r1.7.2.17 i18nblocks.module
--- i18nblocks/i18nblocks.module	29 Aug 2009 21:08:25 -0000	1.7.2.17
+++ i18nblocks/i18nblocks.module	10 Sep 2009 08:41:54 -0000
@@ -327,13 +327,23 @@ function i18nblocks_theme_blocks($region
           $block = i18nblocks_translate_block($block, $i18nblocks['block'][$block->delta]);
         }
       }
-      elseif ($i18nmenu) {
+      else {
         // Replace menu blocks by their translated version.
-        if ($block->module == 'menu') {
-          $block->content = i18nmenu_translated_tree($block->delta);
+        if ($i18nmenu && $block->module == 'menu') {
+            $block->content = i18nmenu_translated_tree($block->delta);
+          }
+        elseif ($i18nmenu && $block->module == 'user' && $block->delta == 1) {
+            $block->content = i18nmenu_translated_tree('navigation');
+          }
+          
+        // This is block that isn't managed by i18nblock but still could have a
+        // user customized title
+        if ($block->title) {
+          // Check plain here to allow module generated titles to keep any markup.
+          $block->subject = $block->title == '<none>' ? '' : check_plain(tt("blocks:{$block->module}:{$block->bid}:title", $block->title));
         }
-        elseif ($block->module == 'user' && $block->delta == 1) {
-          $block->content = i18nmenu_translated_tree('navigation');
+        elseif (!empty($block->subject)) {
+          $block->subject = tt("blocks:{$block->module}:{$block->bid}:title", $block->subject);
         }
       }
       // Finally, render the block using standard theming.
Index: i18nstrings/i18nstrings.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/i18n/i18nstrings/i18nstrings.module,v
retrieving revision 1.8.2.32
diff -u -p -r1.8.2.32 i18nstrings.module
--- i18nstrings/i18nstrings.module	29 Aug 2009 21:08:25 -0000	1.8.2.32
+++ i18nstrings/i18nstrings.module	10 Sep 2009 08:41:55 -0000
@@ -233,7 +233,7 @@ function i18nstrings_tt($name, $string, 
     // If $update it should already been created so skip this step.
     if (!$update) {
       $source = i18nstrings_get_source($context, $string);
-      if (!$source || empty($source->context)) {
+      if (!$source || empty($source->context) || $source->source != $string) {
         i18nstrings_add_string($name, $string);
       }
     }
