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

Side by Side Diff: native_client_sdk/src/libraries/nacl_io/html5fs/html5_fs_node.cc

Issue 2156503002: [NaCl SDK] Expose Google Drive to nacl_io. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 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 "nacl_io/html5fs/html5_fs_node.h" 5 #include "nacl_io/html5fs/html5_fs_node.h"
6 6
7 #include <errno.h> 7 #include <errno.h>
8 #include <fcntl.h> 8 #include <fcntl.h>
9 #include <ppapi/c/pp_completion_callback.h> 9 #include <ppapi/c/pp_completion_callback.h>
10 #include <ppapi/c/pp_directory_entry.h> 10 #include <ppapi/c/pp_directory_entry.h>
11 #include <ppapi/c/pp_errors.h> 11 #include <ppapi/c/pp_errors.h>
12 #include <ppapi/c/pp_file_info.h> 12 #include <ppapi/c/pp_file_info.h>
13 #include <ppapi/c/ppb_file_io.h> 13 #include <ppapi/c/ppb_file_io.h>
14 #include <string.h> 14 #include <string.h>
15 #include <vector> 15 #include <vector>
16 16
17 #include "nacl_io/filesystem.h" 17 #include "nacl_io/filesystem.h"
18 #include "nacl_io/getdents_helper.h" 18 #include "nacl_io/getdents_helper.h"
19 #include "nacl_io/hash.h"
19 #include "nacl_io/html5fs/html5_fs.h" 20 #include "nacl_io/html5fs/html5_fs.h"
20 #include "nacl_io/kernel_handle.h" 21 #include "nacl_io/kernel_handle.h"
21 #include "nacl_io/osdirent.h" 22 #include "nacl_io/osdirent.h"
22 #include "nacl_io/pepper_interface.h" 23 #include "nacl_io/pepper_interface.h"
23 #include "sdk_util/auto_lock.h" 24 #include "sdk_util/auto_lock.h"
24 25
25 namespace nacl_io { 26 namespace nacl_io {
26 27
27 namespace { 28 namespace {
28 29
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 var_iface_->VarToUtf8(file_name_var, &file_name_length); 123 var_iface_->VarToUtf8(file_name_var, &file_name_length);
123 124
124 if (file_name) { 125 if (file_name) {
125 file_name_length = 126 file_name_length =
126 std::min(static_cast<size_t>(file_name_length), 127 std::min(static_cast<size_t>(file_name_length),
127 MEMBER_SIZE(dirent, d_name) - 1); // -1 for NULL. 128 MEMBER_SIZE(dirent, d_name) - 1); // -1 for NULL.
128 129
129 // The INO is based on the running hash of fully qualified path, so 130 // The INO is based on the running hash of fully qualified path, so
130 // a childs INO must be the parent directories hash, plus '/', plus 131 // a childs INO must be the parent directories hash, plus '/', plus
131 // the filename. 132 // the filename.
132 ino_t child_ino = Html5Fs::HashPathSegment(stat_.st_ino, file_name, 133 ino_t child_ino = HashPathSegment(stat_.st_ino, file_name,
133 file_name_length); 134 file_name_length);
134 135
135 helper.AddDirent(child_ino, file_name, file_name_length); 136 helper.AddDirent(child_ino, file_name, file_name_length);
136 } 137 }
137 138
138 var_iface_->Release(file_name_var); 139 var_iface_->Release(file_name_var);
139 } 140 }
140 141
141 // Release the output buffer. 142 // Release the output buffer.
142 free(output_buf.data); 143 free(output_buf.data);
143 144
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
316 fileref_resource_ = 0; 317 fileref_resource_ = 0;
317 Node::Destroy(); 318 Node::Destroy();
318 } 319 }
319 320
320 Error Html5FsNode::Fchmod(mode_t mode) { 321 Error Html5FsNode::Fchmod(mode_t mode) {
321 // html5fs does not support any kinds of permissions or mode bits. 322 // html5fs does not support any kinds of permissions or mode bits.
322 return 0; 323 return 0;
323 } 324 }
324 325
325 } // namespace nacl_io 326 } // namespace nacl_io
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698