| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/browser/gpu/gpu_data_manager_impl.h" | 5 #include "content/browser/gpu/gpu_data_manager_impl.h" |
| 6 | 6 |
| 7 #if defined(OS_MACOSX) | 7 #if defined(OS_MACOSX) |
| 8 #include <ApplicationServices/ApplicationServices.h> | 8 #include <ApplicationServices/ApplicationServices.h> |
| 9 #endif // OS_MACOSX | 9 #endif // OS_MACOSX |
| 10 | 10 |
| (...skipping 418 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 429 break; | 429 break; |
| 430 } | 430 } |
| 431 } else { | 431 } else { |
| 432 command_line->AppendSwitchASCII(switches::kSupportsDualGpus, "false"); | 432 command_line->AppendSwitchASCII(switches::kSupportsDualGpus, "false"); |
| 433 } | 433 } |
| 434 | 434 |
| 435 if (!swiftshader_path.empty()) | 435 if (!swiftshader_path.empty()) |
| 436 command_line->AppendSwitchPath(switches::kSwiftShaderPath, | 436 command_line->AppendSwitchPath(switches::kSwiftShaderPath, |
| 437 swiftshader_path); | 437 swiftshader_path); |
| 438 | 438 |
| 439 #if defined(OS_WIN) |
| 440 // DisplayLink 7.1 and earlier can cause the GPU process to crash on startup. |
| 441 // http://crbug.com/177611 |
| 442 if (gpu_info_.display_link_version.IsValid() |
| 443 && gpu_info_.display_link_version.IsOlderThan("7.2")) { |
| 444 command_line->AppendSwitch(switches::kReduceGpuSandbox); |
| 445 } |
| 446 #endif |
| 447 |
| 439 { | 448 { |
| 440 base::AutoLock auto_lock(gpu_info_lock_); | 449 base::AutoLock auto_lock(gpu_info_lock_); |
| 441 if (gpu_info_.optimus) | 450 if (gpu_info_.optimus) |
| 442 command_line->AppendSwitch(switches::kReduceGpuSandbox); | 451 command_line->AppendSwitch(switches::kReduceGpuSandbox); |
| 443 if (gpu_info_.amd_switchable) { | 452 if (gpu_info_.amd_switchable) { |
| 444 // The image transport surface currently doesn't work with AMD Dynamic | 453 // The image transport surface currently doesn't work with AMD Dynamic |
| 445 // Switchable graphics. | 454 // Switchable graphics. |
| 446 command_line->AppendSwitch(switches::kReduceGpuSandbox); | 455 command_line->AppendSwitch(switches::kReduceGpuSandbox); |
| 447 command_line->AppendSwitch(switches::kDisableImageTransportSurface); | 456 command_line->AppendSwitch(switches::kDisableImageTransportSurface); |
| 448 } | 457 } |
| (...skipping 348 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 797 | 806 |
| 798 void GpuDataManagerImpl::Notify3DAPIBlocked(const GURL& url, | 807 void GpuDataManagerImpl::Notify3DAPIBlocked(const GURL& url, |
| 799 int render_process_id, | 808 int render_process_id, |
| 800 int render_view_id, | 809 int render_view_id, |
| 801 ThreeDAPIType requester) { | 810 ThreeDAPIType requester) { |
| 802 observer_list_->Notify(&GpuDataManagerObserver::DidBlock3DAPIs, | 811 observer_list_->Notify(&GpuDataManagerObserver::DidBlock3DAPIs, |
| 803 url, render_process_id, render_view_id, requester); | 812 url, render_process_id, render_view_id, requester); |
| 804 } | 813 } |
| 805 | 814 |
| 806 } // namespace content | 815 } // namespace content |
| OLD | NEW |