Set correct attachment type for rejected media (#2599)
In #2110, a new attachment type "unknown" was introduced for attachments that were rejected due to a domain being blocked using reject_media. However, the "type" field was never set to "unknown" because a default value of "0" (image) is set for that column, causing the `type.blank?` expression to always equal false. This version uses type_changed? instead, causing the type to be set to "unknown" unless a type has been explicitly set. This introduces a small change in behaviour causing the type to be set to unknown before paperclip calls `before_post_process`. Presumably this behaviour is more appropriate than the current one because the attachment type has not been determined by that point. Included are new tests for `ProcessFeedService` and `UpdateRemoteProfileService` which now check that remote media is downloaded for non-blocked domains and is rejected for others.
This commit is contained in:
committed by
Eugen Rochko
parent
a823509b99
commit
8ac7fca5d0
@ -96,7 +96,7 @@ class MediaAttachment < ApplicationRecord
|
||||
private
|
||||
|
||||
def set_shortcode
|
||||
self.type = :unknown if file.blank? && type.blank?
|
||||
self.type = :unknown if file.blank? && !type_changed?
|
||||
|
||||
return unless local?
|
||||
|
||||
|
Reference in New Issue
Block a user