? platform/drupal/p Index: db_server/backup.provision.inc =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/provision/db_server/backup.provision.inc,v retrieving revision 1.9 diff -u -u -r1.9 backup.provision.inc --- db_server/backup.provision.inc 9 May 2009 18:20:51 -0000 1.9 +++ db_server/backup.provision.inc 17 Jun 2009 17:15:45 -0000 @@ -2,7 +2,10 @@ function drush_provision_mysql_pre_provision_backup($url = NULL) { drush_log("Generating mysql dump for $url.", 'backup'); - provision_shell_exec("mysqldump -h%s -u%s -p%s -rsites/%s/database.sql %s", drush_get_option('db_host'), drush_get_option('db_user'),drush_get_option('db_passwd'), $url, drush_get_option('db_name')); + $result = provision_shell_exec("mysqldump -h%s -u%s -p%s -rsites/%s/database.sql %s", drush_get_option('db_host'), drush_get_option('db_user'),drush_get_option('db_passwd'), $url, drush_get_option('db_name')); + if (!$result && !drush_get_option('force', false)) { + drush_set_error('PROVISION_BACKUP_FAILED', dt("Could not back up sites directory for drupal")); + } } function drush_provision_mysql_pre_provision_backup_rollback($url = NULL) { Index: platform/drupal/import_5.inc =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/provision/platform/drupal/import_5.inc,v retrieving revision 1.2 diff -u -u -r1.2 import_5.inc --- platform/drupal/import_5.inc 17 Apr 2009 20:44:06 -0000 1.2 +++ platform/drupal/import_5.inc 17 Jun 2009 17:15:45 -0000 @@ -8,11 +8,11 @@ } if ($parts = @parse_url($db_url)) { - drush_set_option('db_type', $parts['scheme'], 'site'); - drush_set_option('db_user', $parts['user'], 'site'); - drush_set_option('db_host', $parts['host'], 'site'); - drush_set_option('db_passwd', $parts['pass'], 'site'); - drush_set_option('db_name', substr($parts['path'], 1), 'site'); + drush_set_option('db_type', urldecode($parts['scheme']), 'site'); + drush_set_option('db_user', urldecode($parts['user']), 'site'); + drush_set_option('db_host', urldecode($parts['host']), 'site'); + drush_set_option('db_passwd', urldecode($parts['pass']), 'site'); + drush_set_option('db_name', substr(urldecode($parts['path']), 1), 'site'); drush_set_option('profile', variable_get('install_profile', 'default'), 'site'); $has_locale = db_result(db_query("SELECT status FROM {system} WHERE type='module' AND name='locale'")); Index: platform/drupal/import_6.inc =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/provision/platform/drupal/import_6.inc,v retrieving revision 1.2 diff -u -u -r1.2 import_6.inc --- platform/drupal/import_6.inc 17 Apr 2009 20:44:06 -0000 1.2 +++ platform/drupal/import_6.inc 17 Jun 2009 17:15:45 -0000 @@ -8,11 +8,11 @@ } if ($parts = @parse_url($db_url)) { - drush_set_option('db_type', $parts['scheme'], 'site'); - drush_set_option('db_user', $parts['user'], 'site'); - drush_set_option('db_host', $parts['host'], 'site'); - drush_set_option('db_passwd', $parts['pass'], 'site'); - drush_set_option('db_name', substr($parts['path'], 1), 'site'); + drush_set_option('db_type', urldecode($parts['scheme']), 'site'); + drush_set_option('db_user', urldecode($parts['user']), 'site'); + drush_set_option('db_host', urldecode($parts['host']), 'site'); + drush_set_option('db_passwd', urldecode($parts['pass']), 'site'); + drush_set_option('db_name', substr(urldecode($parts['path']), 1), 'site'); drush_set_option('profile', variable_get('install_profile', 'default'), 'site'); $language = language_default(); Index: platform/drupal/import_7.inc =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/provision/platform/drupal/import_7.inc,v retrieving revision 1.1 diff -u -u -r1.1 import_7.inc --- platform/drupal/import_7.inc 7 Apr 2009 22:26:37 -0000 1.1 +++ platform/drupal/import_7.inc 17 Jun 2009 17:15:45 -0000 @@ -1,11 +1,11 @@