From 3b08535463029f45e3524ce2ccaea746eda15c57 Mon Sep 17 00:00:00 2001
From: Gomasy <nyan@gomasy.jp>
Date: Sat, 11 Jan 2020 14:41:37 +0900
Subject: [PATCH] Keep statuses bookmarked by local users in tootctl statuses
 remove (#12818)

---
 lib/mastodon/statuses_cli.rb | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/lib/mastodon/statuses_cli.rb b/lib/mastodon/statuses_cli.rb
index 74f15de5f..ecaac17e3 100644
--- a/lib/mastodon/statuses_cli.rb
+++ b/lib/mastodon/statuses_cli.rb
@@ -48,6 +48,8 @@ module Mastodon
       scope = scope.where('id NOT IN (SELECT statuses1.reblog_of_id FROM statuses AS statuses1 WHERE statuses.id = statuses1.reblog_of_id AND (statuses1.uri IS NULL OR statuses1.local OR statuses1.id >= ?))', max_id)
       # Skip statuses favourited by local users
       scope = scope.where('id NOT IN (SELECT favourites.status_id FROM favourites WHERE statuses.id = favourites.status_id AND favourites.account_id IN (SELECT accounts.id FROM accounts WHERE domain IS NULL))')
+      # Skip statuses bookmarked by local users
+      scope = scope.where('id NOT IN (SELECT bookmarks.status_id FROM bookmarks WHERE statuses.id = bookmarks.status_id AND bookmarks.account_id IN (SELECT accounts.id FROM accounts WHERE domain IS NULL))')
 
       unless options[:clean_followed]
         # Skip accounts followed by local accounts