diff -urpN modules-6.3\translation\translation.pages.inc modules\translation\translation.pages.inc
--- modules-6.3\translation\translation.pages.inc	Mon Jan 07 15:18:40 2008
+++ modules\translation\translation.pages.inc	Sat Jul 19 12:36:48 2008
@@ -33,9 +33,9 @@ function translation_node_overview($node
       // Existing translation in the translation set: display status.
       // We load the full node to check whether the user can edit it.
       $translation_node = node_load($translations[$language->language]->nid);
-      $title = l($translation_node->title, 'node/'. $translation_node->nid);
+      $title = l($translation_node->title, 'node/'. $translation_node->nid, array('language' => $language));
       if (node_access('update', $translation_node)) {
-        $options[] = l(t('edit'), "node/$translation_node->nid/edit");
+        $options[] = l(t('edit'), "node/$translation_node->nid/edit", array('language' => $language));
       }
       $status = $translation_node->status ? t('Published') : t('Not published');
       $status .= $translation_node->translate ? ' - <span class="marker">'. t('outdated') .'</span>' : '';
@@ -47,7 +47,7 @@ function translation_node_overview($node
       // No such translation in the set yet: help user to create it.
       $title = t('n/a');
       if (node_access('create', $node)) {
-        $options[] = l(t('add translation'), 'node/add/'. str_replace('_', '-', $node->type), array('query' => "translation=$node->nid&language=$language->language"));
+        $options[] = l(t('add translation'), 'node/add/'. str_replace('_', '-', $node->type), array('query' => "translation=$node->nid&language=$language->language", 'language' => $language));
       }
       $status = t('Not translated');
     }
