diff options
author | gspencer@chromium.org <gspencer@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-12-03 17:37:54 +0000 |
---|---|---|
committer | gspencer@chromium.org <gspencer@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-12-03 17:37:54 +0000 |
commit | 723571af3c1a86aa14a68bce2511f3dad399287f (patch) | |
tree | c77043d78d5eb7eb1437071561fce7c8ad9b4a5d /base/base_paths_linux.cc | |
parent | 0868ee7ae6d7fbb63ab85dfeafa34d724f9a1b45 (diff) | |
download | chromium_src-723571af3c1a86aa14a68bce2511f3dad399287f.zip chromium_src-723571af3c1a86aa14a68bce2511f3dad399287f.tar.gz chromium_src-723571af3c1a86aa14a68bce2511f3dad399287f.tar.bz2 |
Start using file_util symlink code, now that it's available.
In CL http://codereview.chromium.org/5349007
I added some base API for manipulating symlinks (since I needed it for some ChromeOS code and noticed that other places could use it too), and this just starts using that API.
BUG=none
TEST=Ran ui_tests, passed trybots.
Review URL: http://codereview.chromium.org/5286010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68181 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/base_paths_linux.cc')
-rw-r--r-- | base/base_paths_linux.cc | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/base/base_paths_linux.cc b/base/base_paths_linux.cc index 24f86b4..bdf540c 100644 --- a/base/base_paths_linux.cc +++ b/base/base_paths_linux.cc @@ -37,14 +37,12 @@ bool PathProviderPosix(int key, FilePath* result) { case base::FILE_EXE: case base::FILE_MODULE: { // TODO(evanm): is this correct? #if defined(OS_LINUX) - char bin_dir[PATH_MAX + 1]; - int bin_dir_size = readlink(kSelfExe, bin_dir, PATH_MAX); - if (bin_dir_size < 0 || bin_dir_size > PATH_MAX) { + FilePath bin_dir; + if (!file_util::ReadSymbolicLink(FilePath(kSelfExe), &bin_dir)) { NOTREACHED() << "Unable to resolve " << kSelfExe << "."; return false; } - bin_dir[bin_dir_size] = 0; - *result = FilePath(bin_dir); + *result = bin_dir; return true; #elif defined(OS_FREEBSD) int name[] = { CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, -1 }; |