From 0d3c1cde90c2681cb29f9f20f33754073a35d31c Mon Sep 17 00:00:00 2001
From: Vinoth Kannan <vinothkannan@vinkas.com>
Date: Sat, 15 Dec 2018 03:19:45 +0530
Subject: [PATCH] FIX: Use find_by_id method to prevent record not found
 exception

---
 lib/cooked_post_processor.rb                  | 2 +-
 spec/components/cooked_post_processor_spec.rb | 6 ++++++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/lib/cooked_post_processor.rb b/lib/cooked_post_processor.rb
index 9c9ed222bbc..910f59e7387 100644
--- a/lib/cooked_post_processor.rb
+++ b/lib/cooked_post_processor.rb
@@ -513,7 +513,7 @@ class CookedPostProcessor
       end
 
       upload_id = downloaded_images[src]
-      upload = Upload.find(upload_id) if upload_id
+      upload = Upload.find_by_id(upload_id) if upload_id
       img["src"] = upload.url if upload.present?
 
       # make sure we grab dimensions for oneboxed images
diff --git a/spec/components/cooked_post_processor_spec.rb b/spec/components/cooked_post_processor_spec.rb
index 829a4e8501e..5a783cfca38 100644
--- a/spec/components/cooked_post_processor_spec.rb
+++ b/spec/components/cooked_post_processor_spec.rb
@@ -778,6 +778,12 @@ describe CookedPostProcessor do
       cpp.post_process_oneboxes
 
       expect(cpp.doc.to_s).to eq("<p><img class=\"onebox\" src=\"#{upload.url}\" width=\"\" height=\"\"></p>")
+
+      upload.destroy
+      cpp = CookedPostProcessor.new(post, invalidate_oneboxes: true)
+      cpp.post_process_oneboxes
+
+      expect(cpp.doc.to_s).to eq("<p><img class=\"onebox\" src=\"#{image_url}\" width=\"\" height=\"\"></p>")
     end
 
     it "replaces large image placeholder" do