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 3 // found in the LICENSE file. 4 5 #include "content/child/blink_glue.h" 6 7 #include "base/logging.h" 8 #include "third_party/WebKit/public/platform/WebFileInfo.h" 9 10 namespace content { 11 FileInfoToWebFileInfo(const base::File::Info & file_info,blink::WebFileInfo * web_file_info)12void FileInfoToWebFileInfo(const base::File::Info& file_info, 13 blink::WebFileInfo* web_file_info) { 14 DCHECK(web_file_info); 15 // WebKit now expects NaN as uninitialized/null Date. 16 if (file_info.last_modified.is_null()) 17 web_file_info->modificationTime = std::numeric_limits<double>::quiet_NaN(); 18 else 19 web_file_info->modificationTime = file_info.last_modified.ToDoubleT(); 20 web_file_info->length = file_info.size; 21 if (file_info.is_directory) 22 web_file_info->type = blink::WebFileInfo::TypeDirectory; 23 else 24 web_file_info->type = blink::WebFileInfo::TypeFile; 25 } 26 27 COMPILE_ASSERT(std::numeric_limits<double>::has_quiet_NaN, has_quiet_NaN); 28 29 } // namespace content 30