Index: l10n_community/export.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/l10n_server/l10n_community/Attic/export.inc,v
retrieving revision 1.1.2.15.2.16
diff -u -p -r1.1.2.15.2.16 export.inc
--- l10n_community/export.inc	11 Nov 2009 18:21:01 -0000	1.1.2.15.2.16
+++ l10n_community/export.inc	19 Nov 2009 22:42:01 -0000
@@ -393,8 +388,11 @@ function l10n_community_export($uri, $re
     $sql_args = array($project->pid);
   }
   else {
+    // Join differently based on compact method, so we can skip strings without
+    // translation for compact method export.
+    $translation_join = ($compact) ? 'INNER JOIN' : 'LEFT JOIN';
     // We only export active translations, not suggestions.
-    $sql = "SELECT s.sid, s.value, s.context, f.location, f.revision, l.lineno, l.type, t.translation, t.uid_approved, t.time_approved FROM {l10n_community_file} f INNER JOIN {l10n_community_line} l ON f.fid = l.fid INNER JOIN {l10n_community_string} s ON l.sid = s.sid  LEFT JOIN {l10n_community_translation} t ON s.sid = t.sid AND t.language = '%s' AND is_active = 1 AND is_suggestion = 0 WHERE f.pid = %d";
+    $sql = "SELECT s.sid, s.value, s.context, f.location, f.revision, l.lineno, l.type, t.translation, t.uid_approved, t.time_approved FROM {l10n_community_file} f INNER JOIN {l10n_community_line} l ON f.fid = l.fid INNER JOIN {l10n_community_string} s ON l.sid = s.sid  $translation_join {l10n_community_translation} t ON s.sid = t.sid AND t.language = '%s' AND is_active = 1 AND is_suggestion = 0 WHERE f.pid = %d";
     $sql_args = array($language->language, $project->pid);
   }
