diff --git a/server/lib/classes/cron.d/500-backup_mail.inc.php b/server/lib/classes/cron.d/500-backup_mail.inc.php index f95f815a707a5293b87343e28c6b5f11e14199a1..2197251e91a3007d3b41811945401f128613ad18 100644 --- a/server/lib/classes/cron.d/500-backup_mail.inc.php +++ b/server/lib/classes/cron.d/500-backup_mail.inc.php @@ -95,13 +95,15 @@ class cronjob_backup extends cronjob { $domain_dir=explode('/',$rec['maildir']); $_temp=array_pop($domain_dir);unset($_temp); $domain_dir=implode('/',$domain_dir); - - $source_dir=array_pop(explode('/',$rec['maildir'])); + + $parts=explode('/',$rec['maildir']); + $source_dir=array_pop($parts); + unset($parts); //* create archives if($backup_mode == 'userzip') { $mail_backup_file.='.zip'; - exec('cd '.$rec['homedir'].' && zip -b /tmp -r '.$mail_backup_dir.'/'.$mail_backup_file.' '.$source_dir.' > /dev/nul'); + exec('cd '.$domain_dir.' && zip '.$mail_backup_dir.'/'.$mail_backup_file.' -b /tmp -r '.$source_dir.' > /dev/nul', $tmp_output, $retval); } else { /* Create a tar.gz backup */ $mail_backup_file.='.tar.gz';