diff --git a/inc/display.php b/inc/display.php
index 706905b0..60c95a1f 100644
--- a/inc/display.php
+++ b/inc/display.php
@@ -285,7 +285,7 @@ class Post {
// Delete file (keep post)
if (!empty($this->file) && hasPermission($config['mod']['deletefile'], $board['uri'], $this->mod))
- $built .= ' ' . $config['mod']['link_deletefile'] . '';
+ $built .= ' ' . secure_link_confirm($config['mod']['link_deletefile'], 'Delete file', 'Are you sure you want to delete this file?', $board['uri'] . '/deletefile/' . $this->id);
// Edit post
if (hasPermission($config['mod']['editpost'], $board['uri'], $this->mod))
@@ -383,7 +383,7 @@ class Thread {
// Delete file (keep post)
if (!empty($this->file) && $this->file != 'deleted' && hasPermission($config['mod']['deletefile'], $board['uri'], $this->mod))
- $built .= ' ' . $config['mod']['link_deletefile'] . '';
+ $built .= ' ' . secure_link_confirm($config['mod']['link_deletefile'], 'Delete file', 'Are you sure you want to delete this file?', $board['uri'] . '/deletefile/' . $this->id);
// Sticky
if (hasPermission($config['mod']['sticky'], $board['uri'], $this->mod))
diff --git a/inc/mod/pages.php b/inc/mod/pages.php
index ca6a2540..caec6443 100644
--- a/inc/mod/pages.php
+++ b/inc/mod/pages.php
@@ -1013,8 +1013,14 @@ function mod_deletefile($board, $post) {
deleteFile($post);
// Record the action
modLog("Deleted file from post #{$post}");
+
+ $query = prepare(sprintf('SELECT `thread` FROM `posts_%s` WHERE `id` = :id', $board));
+ $query->bindValue(':id', $post);
+ $query->execute() or error(db_error($query));
+ $thread = $query->fetchColumn();
+
// Rebuild thread
- buildThread($post);
+ buildThread($thread ? $thread : $post);
// Rebuild board
buildIndex();