Index: connectors/l10n_drupal/l10n_drupal.drupalorg.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/l10n_server/connectors/l10n_drupal/Attic/l10n_drupal.drupalorg.inc,v
retrieving revision 1.1.2.3.2.1
diff -u -p -r1.1.2.3.2.1 l10n_drupal.drupalorg.inc
--- connectors/l10n_drupal/l10n_drupal.drupalorg.inc	4 Jan 2011 14:34:53 -0000	1.1.2.3.2.1
+++ connectors/l10n_drupal/l10n_drupal.drupalorg.inc	16 Feb 2011 12:18:29 -0000
@@ -245,22 +245,22 @@ function l10n_drupal_drupalorg_scan() {
       );
     }
   }
-  
+
   // Project usage data will only be present if we have updates.
   foreach ($project_usage as $uri => $project_data) {
     if (!isset($projects[$uri]->pid)) {
       // Not a project the upper project list knows about (eg. a translation).
       continue;
     }
-    
+
     // We save project usage as negative weight because the lower the weight,
     // the earlier an item will be in the list (Drupal standard). But usage
     // stats are better if higher, so we need to reverse the effect.
-    
+
     // Add up and save all project usage as negative weight.
     $all_project_usage = array_sum($project_data);
     db_query("UPDATE {l10n_server_project} SET weight = %d WHERE uri = '%s'", -$all_project_usage, $uri);
-    
+
     // Save individual release count data as negative weight.
     foreach ($project_data as $title => $count) {
       db_query("UPDATE {l10n_server_release} SET weight = %d WHERE pid = %d AND title = '%s'", -$count, $projects[$uri]->pid, $title);
@@ -376,9 +376,9 @@ function l10n_drupal_drupalorg_parse_pac
         unlink($package_file);
 
         // Record changes of the scanned project in the database.
-        $message_arguments = array('%filename' => $package_file);
-        $message_t = t('Contents of %filename have been scanned.', $message_arguments);
-        $message = 'Contents of %filename have been scanned.';
+        $message_arguments = array('@filename' => basename($package_file), '@num' => count($files));
+        $message_t = t('@filename with @num files scanned.', $message_arguments);
+        $message = '@filename with @num files scanned.';
 
         // Parsed this releases files.
         db_query("UPDATE {l10n_server_release} SET last_parsed = %d WHERE rid = %d", time(), $release->rid);
Index: connectors/l10n_drupal/l10n_drupal.files.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/l10n_server/connectors/l10n_drupal/Attic/l10n_drupal.files.inc,v
retrieving revision 1.1.2.1
diff -u -p -r1.1.2.1 l10n_drupal.files.inc
--- connectors/l10n_drupal/l10n_drupal.files.inc	31 Mar 2010 13:53:00 -0000	1.1.2.1
+++ connectors/l10n_drupal/l10n_drupal.files.inc	16 Feb 2011 12:18:29 -0000
@@ -215,7 +215,7 @@ function l10n_drupal_parse_package($pack
       l10n_drupal_rmdir_recursive($temp_path);
 
       // Record changes of the scanned project in the database.
-      $message = t('Contents of %filename have been scanned.', array('%filename' => $package_file));
+      $message = t('@filename with @num files scanned.', array('@filename' => basename($package_file), '@num' => count($files)));
 
       // Parsed this releases files.
       db_query("UPDATE {l10n_server_release} SET last_parsed = %d WHERE rid = %d", time(), $release->rid);
Index: connectors/l10n_gettext/l10n_gettext.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/l10n_server/connectors/l10n_gettext/Attic/l10n_gettext.module,v
retrieving revision 1.1.2.1
diff -u -p -r1.1.2.1 l10n_gettext.module
--- connectors/l10n_gettext/l10n_gettext.module	5 May 2010 15:08:45 -0000	1.1.2.1
+++ connectors/l10n_gettext/l10n_gettext.module	16 Feb 2011 12:18:29 -0000
@@ -37,12 +37,14 @@ function l10n_gettext_upload_handler($fo
     // Save file info and mark the file parsed.
     db_query("INSERT INTO {l10n_server_file} (pid, rid, location, revision) VALUES(%d, %d, '%s', '%s')", $project->pid, $release->rid, $file->filename, '');
     $fid = db_result(db_query("SELECT fid FROM {l10n_server_file} WHERE rid = %d and location = '%s'", $release->rid, $file->filename));
-    db_query("UPDATE {l10n_server_release} SET last_parsed = %d WHERE rid = %d", time(), $release->rid);
 
     // Do the actual parsing on the local file.
     if (l10n_server_parse_po($file, 'l10n_gettext_store_string', array($project->pid, $release->rid, $fid))) {
       drupal_set_message(format_plural(l10n_gettext_store_string(), 'The source file was successfully imported. One source string was added.', 'The source file was successfully imported. @count source strings were added.'));
     }
+
+    // Update this only once the parsing process succeeds.
+    db_query("UPDATE {l10n_server_release} SET last_parsed = %d WHERE rid = %d", time(), $release->rid);
   }
   else {
     drupal_set_message(t('File to import not found. Did you choose a file to upload which was under %maxsize?', array('%maxsize' => format_size(file_upload_max_size()))), 'error');
