Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(248)

Side by Side Diff: content/renderer/render_frame_impl.cc

Issue 518693002: Fix a crash when saving a <canvas> or <img> image which is large. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/render_frame_impl.h" 5 #include "content/renderer/render_frame_impl.h"
6 6
7 #include <map> 7 #include <map>
8 #include <string> 8 #include <string>
9 9
10 #include "base/auto_reset.h" 10 #include "base/auto_reset.h"
(...skipping 1767 matching lines...) Expand 10 before | Expand all | Expand 10 after
1778 void RenderFrameImpl::loadURLExternally( 1778 void RenderFrameImpl::loadURLExternally(
1779 blink::WebLocalFrame* frame, 1779 blink::WebLocalFrame* frame,
1780 const blink::WebURLRequest& request, 1780 const blink::WebURLRequest& request,
1781 blink::WebNavigationPolicy policy, 1781 blink::WebNavigationPolicy policy,
1782 const blink::WebString& suggested_name) { 1782 const blink::WebString& suggested_name) {
1783 DCHECK(!frame_ || frame_ == frame); 1783 DCHECK(!frame_ || frame_ == frame);
1784 Referrer referrer(RenderViewImpl::GetReferrerFromRequest(frame, request)); 1784 Referrer referrer(RenderViewImpl::GetReferrerFromRequest(frame, request));
1785 if (policy == blink::WebNavigationPolicyDownload) { 1785 if (policy == blink::WebNavigationPolicyDownload) {
1786 render_view_->Send(new ViewHostMsg_DownloadUrl(render_view_->GetRoutingID(), 1786 render_view_->Send(new ViewHostMsg_DownloadUrl(render_view_->GetRoutingID(),
1787 request.url(), referrer, 1787 request.url(), referrer,
1788 suggested_name, false)); 1788 suggested_name));
1789 } else if (policy == blink::WebNavigationPolicyDownloadTo) { 1789 } else if (policy == blink::WebNavigationPolicyDownloadTo) {
1790 render_view_->Send(new ViewHostMsg_DownloadUrl(render_view_->GetRoutingID(), 1790 render_view_->Send(
1791 request.url(), referrer, 1791 new ViewHostMsg_SaveImageAs(render_view_->GetRoutingID(),
1792 suggested_name, true)); 1792 request.url().string().utf8(),
Justin Novosad 2014/08/29 13:52:32 So you are just passing the URL as a string to wor
palmer 2014/08/30 00:37:29 I agree, just a byte vector is fine.
1793 referrer, suggested_name));
1793 } else { 1794 } else {
1794 OpenURL(frame, request.url(), referrer, policy); 1795 OpenURL(frame, request.url(), referrer, policy);
1795 } 1796 }
1796 } 1797 }
1797 1798
1798 blink::WebNavigationPolicy RenderFrameImpl::decidePolicyForNavigation( 1799 blink::WebNavigationPolicy RenderFrameImpl::decidePolicyForNavigation(
1799 const NavigationPolicyInfo& info) { 1800 const NavigationPolicyInfo& info) {
1800 DCHECK(!frame_ || frame_ == info.frame); 1801 DCHECK(!frame_ || frame_ == info.frame);
1801 return DecidePolicyForNavigation(this, info); 1802 return DecidePolicyForNavigation(this, info);
1802 } 1803 }
(...skipping 1951 matching lines...) Expand 10 before | Expand all | Expand 10 after
3754 3755
3755 #if defined(ENABLE_BROWSER_CDMS) 3756 #if defined(ENABLE_BROWSER_CDMS)
3756 RendererCdmManager* RenderFrameImpl::GetCdmManager() { 3757 RendererCdmManager* RenderFrameImpl::GetCdmManager() {
3757 if (!cdm_manager_) 3758 if (!cdm_manager_)
3758 cdm_manager_ = new RendererCdmManager(this); 3759 cdm_manager_ = new RendererCdmManager(this);
3759 return cdm_manager_; 3760 return cdm_manager_;
3760 } 3761 }
3761 #endif // defined(ENABLE_BROWSER_CDMS) 3762 #endif // defined(ENABLE_BROWSER_CDMS)
3762 3763
3763 } // namespace content 3764 } // namespace content
OLDNEW
« content/common/view_messages.h ('K') | « content/common/view_messages.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698