aboutsummaryrefslogtreecommitdiff
path: root/libcxx/src/filesystem/operations.cpp
diff options
context:
space:
mode:
authorMartin Storsjö <martin@martin.st>2021-02-25 14:12:46 +0200
committerMartin Storsjö <martin@martin.st>2021-02-26 00:14:12 +0200
commitc7d46f221e829411b0f0dec41409ed626646cdd2 (patch)
tree18d4fb9453790c8a7fa6385f1353b42ece24622f /libcxx/src/filesystem/operations.cpp
parentfb2e4f5401d3ec2507ac3b2c4f86d4bfa07c01ec (diff)
downloadllvm-c7d46f221e829411b0f0dec41409ed626646cdd2.zip
llvm-c7d46f221e829411b0f0dec41409ed626646cdd2.tar.gz
llvm-c7d46f221e829411b0f0dec41409ed626646cdd2.tar.bz2
[libcxx] Use the allocating form of getcwd() on Glibc and Apple platforms
This avoids having to query pathconf for a max size for preallocating a buffer for the return value. This is an extension to the POSIX getcwd() spec. Differential Revision: https://reviews.llvm.org/D97460
Diffstat (limited to 'libcxx/src/filesystem/operations.cpp')
-rw-r--r--libcxx/src/filesystem/operations.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/libcxx/src/filesystem/operations.cpp b/libcxx/src/filesystem/operations.cpp
index d0f0d5b..06efb72 100644
--- a/libcxx/src/filesystem/operations.cpp
+++ b/libcxx/src/filesystem/operations.cpp
@@ -1095,7 +1095,7 @@ void __create_symlink(path const& from, path const& to, error_code* ec) {
path __current_path(error_code* ec) {
ErrorHandler<path> err("current_path", ec);
-#if defined(_LIBCPP_WIN32API)
+#if defined(_LIBCPP_WIN32API) || defined(__GLIBC__) || defined(__APPLE__)
// Common extension outside of POSIX getcwd() spec, without needing to
// preallocate a buffer. Also supported by a number of other POSIX libcs.
int size = 0;