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

Side by Side Diff: runtime/bin/file.cc

Issue 23658048: Revert "dart:io | Change File.fullPath to FileSystemEntity.resolveSymbolicLinks." (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 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
« no previous file with comments | « runtime/bin/file.h ('k') | runtime/bin/file_patch.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "bin/file.h" 5 #include "bin/file.h"
6 6
7 #include "bin/builtin.h" 7 #include "bin/builtin.h"
8 #include "bin/dartutils.h" 8 #include "bin/dartutils.h"
9 #include "bin/io_buffer.h" 9 #include "bin/io_buffer.h"
10 #include "bin/thread.h" 10 #include "bin/thread.h"
(...skipping 490 matching lines...) Expand 10 before | Expand all | Expand 10 after
501 if (result) { 501 if (result) {
502 Dart_SetReturnValue(args, Dart_NewBoolean(result)); 502 Dart_SetReturnValue(args, Dart_NewBoolean(result));
503 } else { 503 } else {
504 Dart_Handle err = DartUtils::NewDartOSError(); 504 Dart_Handle err = DartUtils::NewDartOSError();
505 if (Dart_IsError(err)) Dart_PropagateError(err); 505 if (Dart_IsError(err)) Dart_PropagateError(err);
506 Dart_SetReturnValue(args, err); 506 Dart_SetReturnValue(args, err);
507 } 507 }
508 } 508 }
509 509
510 510
511 void FUNCTION_NAME(File_ResolveSymbolicLinks)(Dart_NativeArguments args) { 511 void FUNCTION_NAME(File_FullPath)(Dart_NativeArguments args) {
512 const char* str = 512 const char* str =
513 DartUtils::GetStringValue(Dart_GetNativeArgument(args, 0)); 513 DartUtils::GetStringValue(Dart_GetNativeArgument(args, 0));
514 char* path = File::GetCanonicalPath(str); 514 char* path = File::GetCanonicalPath(str);
515 if (path != NULL) { 515 if (path != NULL) {
516 Dart_SetReturnValue(args, DartUtils::NewString(path)); 516 Dart_SetReturnValue(args, DartUtils::NewString(path));
517 free(path); 517 free(path);
518 } else { 518 } else {
519 Dart_Handle err = DartUtils::NewDartOSError(); 519 Dart_Handle err = DartUtils::NewDartOSError();
520 if (Dart_IsError(err)) Dart_PropagateError(err); 520 if (Dart_IsError(err)) Dart_PropagateError(err);
521 Dart_SetReturnValue(args, err); 521 Dart_SetReturnValue(args, err);
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after
704 CObjectString old_path(request[1]); 704 CObjectString old_path(request[1]);
705 CObjectString new_path(request[2]); 705 CObjectString new_path(request[2]);
706 bool completed = File::Rename(old_path.CString(), new_path.CString()); 706 bool completed = File::Rename(old_path.CString(), new_path.CString());
707 if (completed) return CObject::True(); 707 if (completed) return CObject::True();
708 return CObject::NewOSError(); 708 return CObject::NewOSError();
709 } 709 }
710 return CObject::IllegalArgumentError(); 710 return CObject::IllegalArgumentError();
711 } 711 }
712 712
713 713
714 static CObject* FileResolveSymbolicLinksRequest(const CObjectArray& request) { 714 static CObject* FileFullPathRequest(const CObjectArray& request) {
715 if (request.Length() == 2 && request[1]->IsString()) { 715 if (request.Length() == 2 && request[1]->IsString()) {
716 CObjectString filename(request[1]); 716 CObjectString filename(request[1]);
717 char* result = File::GetCanonicalPath(filename.CString()); 717 char* result = File::GetCanonicalPath(filename.CString());
718 if (result != NULL) { 718 if (result != NULL) {
719 CObject* path = new CObjectString(CObject::NewString(result)); 719 CObject* path = new CObjectString(CObject::NewString(result));
720 free(result); 720 free(result);
721 return path; 721 return path;
722 } else { 722 } else {
723 return CObject::NewOSError(); 723 return CObject::NewOSError();
724 } 724 }
(...skipping 459 matching lines...) Expand 10 before | Expand all | Expand 10 after
1184 break; 1184 break;
1185 case File::kOpenRequest: 1185 case File::kOpenRequest:
1186 response = FileOpenRequest(request); 1186 response = FileOpenRequest(request);
1187 break; 1187 break;
1188 case File::kDeleteRequest: 1188 case File::kDeleteRequest:
1189 response = FileDeleteRequest(request); 1189 response = FileDeleteRequest(request);
1190 break; 1190 break;
1191 case File::kRenameRequest: 1191 case File::kRenameRequest:
1192 response = FileRenameRequest(request); 1192 response = FileRenameRequest(request);
1193 break; 1193 break;
1194 case File::kResolveSymbolicLinksRequest: 1194 case File::kFullPathRequest:
1195 response = FileResolveSymbolicLinksRequest(request); 1195 response = FileFullPathRequest(request);
1196 break; 1196 break;
1197 case File::kCloseRequest: 1197 case File::kCloseRequest:
1198 response = FileCloseRequest(request); 1198 response = FileCloseRequest(request);
1199 break; 1199 break;
1200 case File::kPositionRequest: 1200 case File::kPositionRequest:
1201 response = FilePositionRequest(request); 1201 response = FilePositionRequest(request);
1202 break; 1202 break;
1203 case File::kSetPositionRequest: 1203 case File::kSetPositionRequest:
1204 response = FileSetPositionRequest(request); 1204 response = FileSetPositionRequest(request);
1205 break; 1205 break;
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
1274 Dart_Port service_port = File::GetServicePort(); 1274 Dart_Port service_port = File::GetServicePort();
1275 if (service_port != ILLEGAL_PORT) { 1275 if (service_port != ILLEGAL_PORT) {
1276 // Return a send port for the service port. 1276 // Return a send port for the service port.
1277 Dart_Handle send_port = Dart_NewSendPort(service_port); 1277 Dart_Handle send_port = Dart_NewSendPort(service_port);
1278 Dart_SetReturnValue(args, send_port); 1278 Dart_SetReturnValue(args, send_port);
1279 } 1279 }
1280 } 1280 }
1281 1281
1282 } // namespace bin 1282 } // namespace bin
1283 } // namespace dart 1283 } // namespace dart
OLDNEW
« no previous file with comments | « runtime/bin/file.h ('k') | runtime/bin/file_patch.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698