fix Attachment#url_ttl breaking when the account is missing

refs CORE-1359

Change-Id: Ia2f9a4726924fa0cd64eec0a7af10f55f9c3700a
Reviewed-on: https://gerrit.instructure.com/148939
Reviewed-by: James Williams  <jamesw@instructure.com>
Tested-by: Jenkins
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
This commit is contained in:
Cody Cutrer 2018-05-02 11:04:20 -06:00
parent ea5dfb719f
commit 4e9e8a0b3f
1 changed files with 5 additions and 2 deletions

View File

@ -790,8 +790,11 @@ class Attachment < ActiveRecord::Base
end
def url_ttl
settings = root_account_id && Account.find_cached(root_account_id)&.settings
setting = settings && settings[:s3_url_ttl_seconds]
settings = begin
root_account_id && Account.find_cached(root_account_id).settings
rescue ::Canvas::AccountCacheError
end
setting = settings&.[](:s3_url_ttl_seconds)
setting ||= Setting.get('attachment_url_ttl', 1.hour.to_s)
setting.to_i.seconds
end