Skip to content

Commit

Permalink
Fix tootctl media remove-orphans choking on unknown files in storage (
Browse files Browse the repository at this point in the history
mastodon#13765)

Fix mastodon#13762

Catch tootctl interrupt to prevent confusing stacktrace
  • Loading branch information
Gargron committed May 15, 2020
1 parent 2b91a3d commit 199bbbc
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 1 deletion.
8 changes: 7 additions & 1 deletion bin/tootctl
@@ -1,5 +1,11 @@
#!/usr/bin/env ruby
APP_PATH = File.expand_path('../config/application', __dir__)

require_relative '../config/boot'
require_relative '../lib/cli'
Mastodon::CLI.start(ARGV)

begin
Mastodon::CLI.start(ARGV)
rescue Interrupt
exit(130)
end
17 changes: 17 additions & 0 deletions lib/mastodon/media_cli.rb
Expand Up @@ -88,6 +88,11 @@ def remove_orphans
path_segments = object.key.split('/')
path_segments.delete('cache')

if path_segments.size != 7
progress.log(pastel.yellow("Unrecognized file found: #{object.key}"))
next
end

model_name = path_segments.first.classify
attachment_name = path_segments[1].singularize
record_id = path_segments[2..-2].join.to_i
Expand Down Expand Up @@ -127,6 +132,11 @@ def remove_orphans
path_segments = key.split(File::SEPARATOR)
path_segments.delete('cache')

if path_segments.size != 7
progress.log(pastel.yellow("Unrecognized file found: #{key}"))
next
end

model_name = path_segments.first.classify
record_id = path_segments[2..-2].join.to_i
attachment_name = path_segments[1].singularize
Expand Down Expand Up @@ -246,6 +256,11 @@ def lookup(url)
path_segments = path.split('/')[2..-1]
path_segments.delete('cache')

if path_segments.size != 7
say('Not a media URL', :red)
exit(1)
end

model_name = path_segments.first.classify
record_id = path_segments[2..-2].join.to_i

Expand Down Expand Up @@ -294,6 +309,8 @@ def preload_records_from_mixed_objects(objects)
segments = object.key.split('/')
segments.delete('cache')

next if segments.size != 7

model_name = segments.first.classify
record_id = segments[2..-2].join.to_i

Expand Down

0 comments on commit 199bbbc

Please sign in to comment.