summaryrefslogtreecommitdiff
path: root/modules/upload/upload.module
diff options
context:
space:
mode:
Diffstat (limited to 'modules/upload/upload.module')
-rw-r--r--modules/upload/upload.module5
1 files changed, 5 insertions, 0 deletions
diff --git a/modules/upload/upload.module b/modules/upload/upload.module
index 893c2d7ff..5c50bc8a1 100644
--- a/modules/upload/upload.module
+++ b/modules/upload/upload.module
@@ -263,6 +263,7 @@ function _upload_validate(&$node) {
// Only denies an upload when all roles prevent it.
$total_usersize = upload_space_used($user->uid) + $filesize;
+ $error = array();
foreach ($user->roles as $rid => $name) {
$extensions = variable_get("upload_extensions_$rid", 'jpg jpeg gif png txt html doc xls pdf ppt pps');
$uploadsize = variable_get("upload_uploadsize_$rid", 1) * 1024 * 1024;
@@ -291,6 +292,10 @@ function _upload_validate(&$node) {
elseif ($error['usersize'] == count($user->roles) && $user->uid != 1) {
form_set_error('upload', t('The selected file %name can not be attached to this post, because the disk quota of %quota has been reached.', array('%name' => theme('placeholder', $file->filename), '%quota' => theme('placeholder', format_size($usersize)))));
}
+ if (count($error)) {
+ unset($node->files[$fid], $_SESSION['file_previews'][$fid]);
+ file_delete($file->filepath);
+ }
}
}
}