From 4badf488d539d7e50c7a156ecc65514796e6345a Mon Sep 17 00:00:00 2001 From: "c1541@hotmail.com" <> Date: Thu, 8 Dec 2011 00:12:27 +0100 Subject: Bug 684225: The removal of locally stored attachments should be done from Bugzilla::Attachment->remove_from_db r/a=LpSolit --- Bugzilla/Attachment.pm | 5 +++++ attachment.cgi | 4 ---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/Bugzilla/Attachment.pm b/Bugzilla/Attachment.pm index 3a8e7d5d5..6c39818f6 100644 --- a/Bugzilla/Attachment.pm +++ b/Bugzilla/Attachment.pm @@ -900,6 +900,11 @@ sub remove_from_db { $dbh->do('UPDATE attachments SET mimetype = ?, ispatch = ?, isobsolete = ? WHERE attach_id = ?', undef, ('text/plain', 0, 1, $self->id)); $dbh->bz_commit_transaction(); + + my $filename = $self->_get_local_filename; + if (-e $filename) { + unlink $filename or warn "Couldn't unlink $filename: $!"; + } } ############################### diff --git a/attachment.cgi b/attachment.cgi index 35afc227e..504ade424 100755 --- a/attachment.cgi +++ b/attachment.cgi @@ -795,10 +795,6 @@ sub delete_attachment { # Paste the reason provided by the admin into a comment. $bug->add_comment($msg); - # If the attachment is stored locally, remove it. - if (-e $attachment->_get_local_filename) { - unlink $attachment->_get_local_filename; - } $attachment->remove_from_db(); # Now delete the token. -- cgit v1.2.1