summaryrefslogtreecommitdiff
path: root/modules/upload
diff options
context:
space:
mode:
Diffstat (limited to 'modules/upload')
-rw-r--r--modules/upload/upload.module31
1 files changed, 9 insertions, 22 deletions
diff --git a/modules/upload/upload.module b/modules/upload/upload.module
index 43ae3f2f3..f8ddc5f86 100644
--- a/modules/upload/upload.module
+++ b/modules/upload/upload.module
@@ -575,44 +575,31 @@ function upload_delete($node) {
}
foreach ($files as $fid => $file) {
- // Delete all file revision information associated with the node
- drupal_delete_add_query('DELETE FROM {files} WHERE fid = %d', $fid);
+ // Delete all files associated with the node
+ db_query('DELETE FROM {files} WHERE fid = %d', $fid);
+ file_delete($file->filepath);
}
- // Delete all files associated with the node
- drupal_delete_add_query('DELETE FROM {upload} WHERE nid = %d', $node->nid);
-
- // Register a callback to delete the files.
- drupal_delete_add_callback(array('upload_delete_post' => array($files)));
+ // Delete all file revision information associated with the node
+ db_query('DELETE FROM {upload} WHERE nid = %d', $node->nid);
}
function upload_delete_revision($node) {
if (is_array($node->files)) {
- $files = array();
foreach ($node->files as $file) {
// Check if the file will be used after this revision is deleted
$count = db_result(db_query('SELECT COUNT(fid) FROM {upload} WHERE fid = %d', $file->fid));
// if the file won't be used, delete it
if ($count < 2) {
- drupal_delete_add_query('DELETE FROM {files} WHERE fid = %d', $file->fid);
- $files[$file->fid] = $file;
+ db_query('DELETE FROM {files} WHERE fid = %d', $file->fid);
+ file_delete($file->filepath);
}
}
}
- // Delete the revision.
- drupal_delete_add_query('DELETE FROM {upload} WHERE vid = %d', $node->vid);
-
- // Register a callback to delete the files.
- drupal_delete_add_callback(array('upload_delete_post' => array($files)));
-}
-
-function upload_delete_post($files) {
- foreach ($files as $file) {
- // Delete all files associated with the node or revision.
- file_delete($file->filepath);
- }
+ // delete the revision
+ db_query('DELETE FROM {upload} WHERE vid = %d', $node->vid);
}
function _upload_form($node) {