Index: l10n_client.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/l10n_client/Attic/l10n_client.module,v retrieving revision 1.22.2.3 diff -u -p -r1.22.2.3 l10n_client.module --- l10n_client.module 19 Apr 2010 21:24:07 -0000 1.22.2.3 +++ l10n_client.module 20 Apr 2010 14:08:53 -0000 @@ -483,9 +483,11 @@ function l10n_client_import_package_form // Clean out all translations first if user asked to do that. $langcodes = array_keys(array_filter($form_state['values']['langcodes'])); $textgroups = array_keys(array_filter($form_state['values']['textgroups'])); - db_query("DELETE FROM {locales_target} WHERE language IN (". db_placeholders($langcodes, 'varchar') .") AND lid IN (SELECT lid FROM {locales_source} WHERE textgroup IN (". db_placeholders($textgroups, 'varchar') ."))", array_merge($langcodes, $textgroups)); - // Also remove all source strings without translations. - db_query("DELETE FROM {locales_source} WHERE lid NOT IN (SELECT lid FROM {locales_target})"); + if (!empty($textgroups)) { + db_query("DELETE FROM {locales_target} WHERE language IN (". db_placeholders($langcodes, 'varchar') .") AND lid IN (SELECT lid FROM {locales_source} WHERE textgroup IN (". db_placeholders($textgroups, 'varchar') ."))", array_merge($langcodes, $textgroups)); + // Also remove all source strings without translations. + db_query("DELETE FROM {locales_source} WHERE lid NOT IN (SELECT lid FROM {locales_target})"); + } } // Set up and start batch for new imports.