| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 // NOT DEAD CODE! | 5 // NOT DEAD CODE! |
| 6 // This code isn't dead, even if it isn't currently being used. Please refer to: | 6 // This code isn't dead, even if it isn't currently being used. Please refer to: |
| 7 // https://www.chromium.org/developers/how-tos/compact-language-detector-cld-dat
a-source-configuration | 7 // https://www.chromium.org/developers/how-tos/compact-language-detector-cld-dat
a-source-configuration |
| 8 | 8 |
| 9 #include "components/translate/content/browser/data_file_browser_cld_data_provid
er.h" | 9 #include "components/translate/content/browser/data_file_browser_cld_data_provid
er.h" |
| 10 | 10 |
| (...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 153 | 153 |
| 154 content::RenderProcessHost* render_process_host = | 154 content::RenderProcessHost* render_process_host = |
| 155 render_frame_host->GetProcess(); | 155 render_frame_host->GetProcess(); |
| 156 if (render_process_host == NULL) { | 156 if (render_process_host == NULL) { |
| 157 // Render process destroyed, render frame not yet dead. No need to bother. | 157 // Render process destroyed, render frame not yet dead. No need to bother. |
| 158 VLOG(1) << "Lost render process, giving up"; | 158 VLOG(1) << "Lost render process, giving up"; |
| 159 return; | 159 return; |
| 160 } | 160 } |
| 161 | 161 |
| 162 // Data available, respond to the request. | 162 // Data available, respond to the request. |
| 163 base::ProcessHandle render_process_handle = render_process_host->GetHandle(); | |
| 164 IPC::PlatformFileForTransit ipc_platform_file = | 163 IPC::PlatformFileForTransit ipc_platform_file = |
| 165 IPC::GetFileHandleForProcess(handle->GetPlatformFile(), | 164 IPC::GetPlatformFileForTransit(handle->GetPlatformFile(), false); |
| 166 render_process_handle, false); | |
| 167 | 165 |
| 168 // In general, sending a response from within the code path that is processing | 166 // In general, sending a response from within the code path that is processing |
| 169 // a request is discouraged because there is potential for deadlock (if the | 167 // a request is discouraged because there is potential for deadlock (if the |
| 170 // methods are sent synchronously) or loops (if the response can trigger a | 168 // methods are sent synchronously) or loops (if the response can trigger a |
| 171 // new request). Neither of these concerns is relevant in this code, so | 169 // new request). Neither of these concerns is relevant in this code, so |
| 172 // sending the response from within the code path of the request handler is | 170 // sending the response from within the code path of the request handler is |
| 173 // safe. | 171 // safe. |
| 174 render_frame_host->Send( | 172 render_frame_host->Send( |
| 175 new ChromeFrameMsg_CldDataFileAvailable(render_frame_host->GetRoutingID(), | 173 new ChromeFrameMsg_CldDataFileAvailable(render_frame_host->GetRoutingID(), |
| 176 ipc_platform_file, | 174 ipc_platform_file, |
| (...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 235 // Else, this request has taken care of it all. Cache all info. | 233 // Else, this request has taken care of it all. Cache all info. |
| 236 VLOG(1) << "Caching CLD data file information."; | 234 VLOG(1) << "Caching CLD data file information."; |
| 237 g_cached_file = file.release(); | 235 g_cached_file = file.release(); |
| 238 g_cached_data_offset = data_offset; | 236 g_cached_data_offset = data_offset; |
| 239 g_cached_data_length = data_length; | 237 g_cached_data_length = data_length; |
| 240 } | 238 } |
| 241 } | 239 } |
| 242 } | 240 } |
| 243 | 241 |
| 244 } // namespace translate | 242 } // namespace translate |
| OLD | NEW |