diff options
author | avi@google.com <avi@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-12-09 14:58:13 +0000 |
---|---|---|
committer | avi@google.com <avi@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-12-09 14:58:13 +0000 |
commit | e2ac7000e32f351ec6026060c489514f397dcb9d (patch) | |
tree | d5b3e90db5bf516f04b5b143f68ddc22aca8cfc9 /base/mac_util.mm | |
parent | 31db0c695037f0e0a0492ee5eb7564ae85357b52 (diff) | |
download | chromium_src-e2ac7000e32f351ec6026060c489514f397dcb9d.zip chromium_src-e2ac7000e32f351ec6026060c489514f397dcb9d.tar.gz chromium_src-e2ac7000e32f351ec6026060c489514f397dcb9d.tar.bz2 |
Cleanup of the path service. (With some extra utilities to be used later.)
Review URL: http://codereview.chromium.org/13260
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6584 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/mac_util.mm')
-rw-r--r-- | base/mac_util.mm | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/base/mac_util.mm b/base/mac_util.mm new file mode 100644 index 0000000..1f92e62 --- /dev/null +++ b/base/mac_util.mm @@ -0,0 +1,26 @@ +// Copyright (c) 2008 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "base/mac_util.h" + +#import <Cocoa/Cocoa.h> + +#include "base/scoped_cftyperef.h" + +namespace mac_util { + +std::string PathFromFSRef(const FSRef& ref) { + scoped_cftyperef<CFURLRef> url( + CFURLCreateFromFSRef(kCFAllocatorDefault, &ref)); + NSString *path_string = [(NSURL *)url.get() path]; + return [path_string fileSystemRepresentation]; +} + +bool FSRefFromPath(const std::string& path, FSRef* ref) { + OSStatus status = FSPathMakeRef((const UInt8*)path.c_str(), + ref, nil); + return status == noErr; +} + +} // namespace mac_util |