]> cat aescling's git repositories - mastodon.git/commitdiff
Skip some methods in BatchedRemoveStatusService when account is nil (#10095)
authorNOGISAKA Sadata <ngsksdt@gmail.com>
Sun, 24 Feb 2019 13:28:36 +0000 (22:28 +0900)
committerEugen Rochko <eugen@zeonfederated.com>
Sun, 24 Feb 2019 13:28:36 +0000 (14:28 +0100)
* Skip some methods in BatchedRemoveStatusService when account is nil

Sometimes `bin/tootctl accounts cull` fails with below error:

undefined method `followers_for_local_distribution' for nil:NilClass (NoMethodError)

This commit makes BatchedRemoveStatusService to skip below methods when
`account` is nil:

- unpush_from_home_timelines()
- unpush_from_list_timelines()
- batch_stream_entries()

* Fix rubocop error: Use `next` to skip iteration.

app/services/batched_remove_status_service.rb

index cd3b14e08e34ef1c58060b69f0bc8f39eaa42663..e328b17391b94008a2027295cf5cc7692fe97d25 100644 (file)
@@ -35,6 +35,8 @@ class BatchedRemoveStatusService < BaseService
     statuses.group_by(&:account_id).each_value do |account_statuses|
       account = account_statuses.first.account
 
+      next unless account
+
       unpush_from_home_timelines(account, account_statuses)
       unpush_from_list_timelines(account, account_statuses)