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

Side by Side Diff: chrome/browser/renderer_host/resource_message_filter.cc

Issue 199105: Continue with the FreeBSD port - this version builds and links, though... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 11 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2008 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 "chrome/browser/renderer_host/resource_message_filter.h" 5 #include "chrome/browser/renderer_host/resource_message_filter.h"
6 6
7 #include "base/clipboard.h" 7 #include "base/clipboard.h"
8 #include "base/command_line.h" 8 #include "base/command_line.h"
9 #include "base/gfx/native_widget_types.h" 9 #include "base/gfx/native_widget_types.h"
10 #include "base/histogram.h" 10 #include "base/histogram.h"
(...skipping 316 matching lines...) Expand 10 before | Expand all | Expand 10 after
327 OnGetMimeTypeFromExtension) 327 OnGetMimeTypeFromExtension)
328 IPC_MESSAGE_HANDLER(ViewHostMsg_GetMimeTypeFromFile, 328 IPC_MESSAGE_HANDLER(ViewHostMsg_GetMimeTypeFromFile,
329 OnGetMimeTypeFromFile) 329 OnGetMimeTypeFromFile)
330 IPC_MESSAGE_HANDLER(ViewHostMsg_GetPreferredExtensionForMimeType, 330 IPC_MESSAGE_HANDLER(ViewHostMsg_GetPreferredExtensionForMimeType,
331 OnGetPreferredExtensionForMimeType) 331 OnGetPreferredExtensionForMimeType)
332 IPC_MESSAGE_HANDLER(ViewHostMsg_GetCPBrowsingContext, 332 IPC_MESSAGE_HANDLER(ViewHostMsg_GetCPBrowsingContext,
333 OnGetCPBrowsingContext) 333 OnGetCPBrowsingContext)
334 #if defined(OS_WIN) 334 #if defined(OS_WIN)
335 IPC_MESSAGE_HANDLER(ViewHostMsg_DuplicateSection, OnDuplicateSection) 335 IPC_MESSAGE_HANDLER(ViewHostMsg_DuplicateSection, OnDuplicateSection)
336 #endif 336 #endif
337 #if defined(OS_LINUX) 337 #if defined(USE_X11)
338 IPC_MESSAGE_HANDLER(ViewHostMsg_AllocateShareMemory, 338 IPC_MESSAGE_HANDLER(ViewHostMsg_AllocateShareMemory,
339 OnAllocateShareMemory) 339 OnAllocateShareMemory)
340 #endif 340 #endif
341 IPC_MESSAGE_HANDLER(ViewHostMsg_ResourceTypeStats, OnResourceTypeStats) 341 IPC_MESSAGE_HANDLER(ViewHostMsg_ResourceTypeStats, OnResourceTypeStats)
342 IPC_MESSAGE_HANDLER_DELAY_REPLY(ViewHostMsg_ResolveProxy, OnResolveProxy) 342 IPC_MESSAGE_HANDLER_DELAY_REPLY(ViewHostMsg_ResolveProxy, OnResolveProxy)
343 IPC_MESSAGE_HANDLER_DELAY_REPLY(ViewHostMsg_GetDefaultPrintSettings, 343 IPC_MESSAGE_HANDLER_DELAY_REPLY(ViewHostMsg_GetDefaultPrintSettings,
344 OnGetDefaultPrintSettings) 344 OnGetDefaultPrintSettings)
345 #if defined(OS_WIN) 345 #if defined(OS_WIN)
346 IPC_MESSAGE_HANDLER_DELAY_REPLY(ViewHostMsg_ScriptedPrint, 346 IPC_MESSAGE_HANDLER_DELAY_REPLY(ViewHostMsg_ScriptedPrint,
347 OnScriptedPrint) 347 OnScriptedPrint)
(...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after
613 // memory objects. handle() is a handle to the process that would 613 // memory objects. handle() is a handle to the process that would
614 // own any shared memory that might be in the object list. We only do this 614 // own any shared memory that might be in the object list. We only do this
615 // on Windows and it only applies to bitmaps. (On Linux, bitmaps 615 // on Windows and it only applies to bitmaps. (On Linux, bitmaps
616 // are copied pixel by pixel rather than using shared memory.) 616 // are copied pixel by pixel rather than using shared memory.)
617 Clipboard::DuplicateRemoteHandles(handle(), long_living_objects); 617 Clipboard::DuplicateRemoteHandles(handle(), long_living_objects);
618 #endif 618 #endif
619 619
620 ui_loop()->PostTask(FROM_HERE, new WriteClipboardTask(long_living_objects)); 620 ui_loop()->PostTask(FROM_HERE, new WriteClipboardTask(long_living_objects));
621 } 621 }
622 622
623 #if !defined(OS_LINUX) 623 #if !defined(USE_X11)
624 // On non-Linux platforms, clipboard actions can be performed on the IO thread. 624 // On non-X/11 platforms, clipboard actions can be performed on the IO thread.
625 // On Linux, since the clipboard is linked with GTK, we either have to do this 625 // On X/11, since the clipboard is linked with GTK, we either have to do this
626 // with GTK on the UI thread, or with Xlib on the BACKGROUND_X11 thread. In an 626 // with GTK on the UI thread, or with Xlib on the BACKGROUND_X11 thread. In an
627 // ideal world, we would do the latter. However, for now we're going to 627 // ideal world, we would do the latter. However, for now we're going to
628 // terminate these calls on the UI thread. This risks deadlock in the case of 628 // terminate these calls on the UI thread. This risks deadlock in the case of
629 // plugins, but it's better than crashing which is what doing on the IO thread 629 // plugins, but it's better than crashing which is what doing on the IO thread
630 // gives us. 630 // gives us.
631 // 631 //
632 // See resource_message_filter_gtk.cc for the Linux implementation of these 632 // See resource_message_filter_gtk.cc for the Linux implementation of these
633 // functions. 633 // functions.
634 634
635 void ResourceMessageFilter::OnClipboardIsFormatAvailable( 635 void ResourceMessageFilter::OnClipboardIsFormatAvailable(
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
695 void ResourceMessageFilter::OnDuplicateSection( 695 void ResourceMessageFilter::OnDuplicateSection(
696 base::SharedMemoryHandle renderer_handle, 696 base::SharedMemoryHandle renderer_handle,
697 base::SharedMemoryHandle* browser_handle) { 697 base::SharedMemoryHandle* browser_handle) {
698 // Duplicate the handle in this process right now so the memory is kept alive 698 // Duplicate the handle in this process right now so the memory is kept alive
699 // (even if it is not mapped) 699 // (even if it is not mapped)
700 base::SharedMemory shared_buf(renderer_handle, true, handle()); 700 base::SharedMemory shared_buf(renderer_handle, true, handle());
701 shared_buf.GiveToProcess(base::GetCurrentProcessHandle(), browser_handle); 701 shared_buf.GiveToProcess(base::GetCurrentProcessHandle(), browser_handle);
702 } 702 }
703 #endif 703 #endif
704 704
705 #if defined(OS_LINUX) 705 #if defined(USE_X11)
706 void ResourceMessageFilter::OnAllocateShareMemory( 706 void ResourceMessageFilter::OnAllocateShareMemory(
707 size_t buffer_size, 707 size_t buffer_size,
708 base::SharedMemoryHandle* browser_handle) { 708 base::SharedMemoryHandle* browser_handle) {
709 // We don't want to allocate a super big chunk of memory. 709 // We don't want to allocate a super big chunk of memory.
710 // 32MB should be large enough for printing on Linux. 710 // 32MB should be large enough for printing on Linux.
711 if (buffer_size > 32 * 1024 * 1024) { 711 if (buffer_size > 32 * 1024 * 1024) {
712 *browser_handle = base::SharedMemory::NULLHandle(); 712 *browser_handle = base::SharedMemory::NULLHandle();
713 NOTREACHED() << "Buffer too large: " << buffer_size; 713 NOTREACHED() << "Buffer too large: " << buffer_size;
714 return; 714 return;
715 } 715 }
(...skipping 319 matching lines...) Expand 10 before | Expand all | Expand 10 after
1035 } 1035 }
1036 1036
1037 void ResourceMessageFilter::ReplyGetFileSize(int64 result, void* param) { 1037 void ResourceMessageFilter::ReplyGetFileSize(int64 result, void* param) {
1038 IPC::Message* reply_msg = static_cast<IPC::Message*>(param); 1038 IPC::Message* reply_msg = static_cast<IPC::Message*>(param);
1039 ViewHostMsg_GetFileSize::WriteReplyParams(reply_msg, result); 1039 ViewHostMsg_GetFileSize::WriteReplyParams(reply_msg, result);
1040 Send(reply_msg); 1040 Send(reply_msg);
1041 1041
1042 // Getting file size callback done, decrease the ref count. 1042 // Getting file size callback done, decrease the ref count.
1043 Release(); 1043 Release();
1044 } 1044 }
OLDNEW
« no previous file with comments | « chrome/browser/renderer_host/resource_message_filter.h ('k') | chrome/browser/search_engines/template_url_prepopulate_data.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698