summaryrefslogtreecommitdiffstats
path: root/libcxx/include/fstream
diff options
context:
space:
mode:
authorDan Albert <danalbert@google.com>2019-09-16 19:26:41 +0000
committerDan Albert <danalbert@google.com>2019-09-16 19:26:41 +0000
commita7e9059967c4bff83ae6c3b595828bbbc8aaf82e (patch)
tree17f91beff4ecc112991d60aa656e6dfffd57428d /libcxx/include/fstream
parenta507a5ec8f1d7ded4a808a8813be1ade08580a7b (diff)
downloadbcm5719-llvm-a7e9059967c4bff83ae6c3b595828bbbc8aaf82e.tar.gz
bcm5719-llvm-a7e9059967c4bff83ae6c3b595828bbbc8aaf82e.zip
Open fstream files in O_CLOEXEC mode when possible.
Reviewers: EricWF, mclow.lists, ldionne Reviewed By: ldionne Subscribers: smeenai, dexonsmith, christof, ldionne, libcxx-commits Tags: #libc Differential Revision: https://reviews.llvm.org/D59839 llvm-svn: 372027
Diffstat (limited to 'libcxx/include/fstream')
-rw-r--r--libcxx/include/fstream24
1 files changed, 12 insertions, 12 deletions
diff --git a/libcxx/include/fstream b/libcxx/include/fstream
index 7db9017aca9..e9138998bf1 100644
--- a/libcxx/include/fstream
+++ b/libcxx/include/fstream
@@ -508,34 +508,34 @@ const char* basic_filebuf<_CharT, _Traits>::__make_mdstring(
switch (__mode & ~ios_base::ate) {
case ios_base::out:
case ios_base::out | ios_base::trunc:
- return "w";
+ return "w" _LIBCPP_FOPEN_CLOEXEC_MODE;
case ios_base::out | ios_base::app:
case ios_base::app:
- return "a";
+ return "a" _LIBCPP_FOPEN_CLOEXEC_MODE;
case ios_base::in:
- return "r";
+ return "r" _LIBCPP_FOPEN_CLOEXEC_MODE;
case ios_base::in | ios_base::out:
- return "r+";
+ return "r+" _LIBCPP_FOPEN_CLOEXEC_MODE;
case ios_base::in | ios_base::out | ios_base::trunc:
- return "w+";
+ return "w+" _LIBCPP_FOPEN_CLOEXEC_MODE;
case ios_base::in | ios_base::out | ios_base::app:
case ios_base::in | ios_base::app:
- return "a+";
+ return "a+" _LIBCPP_FOPEN_CLOEXEC_MODE;
case ios_base::out | ios_base::binary:
case ios_base::out | ios_base::trunc | ios_base::binary:
- return "wb";
+ return "wb" _LIBCPP_FOPEN_CLOEXEC_MODE;
case ios_base::out | ios_base::app | ios_base::binary:
case ios_base::app | ios_base::binary:
- return "ab";
+ return "ab" _LIBCPP_FOPEN_CLOEXEC_MODE;
case ios_base::in | ios_base::binary:
- return "rb";
+ return "rb" _LIBCPP_FOPEN_CLOEXEC_MODE;
case ios_base::in | ios_base::out | ios_base::binary:
- return "r+b";
+ return "r+b" _LIBCPP_FOPEN_CLOEXEC_MODE;
case ios_base::in | ios_base::out | ios_base::trunc | ios_base::binary:
- return "w+b";
+ return "w+b" _LIBCPP_FOPEN_CLOEXEC_MODE;
case ios_base::in | ios_base::out | ios_base::app | ios_base::binary:
case ios_base::in | ios_base::app | ios_base::binary:
- return "a+b";
+ return "a+b" _LIBCPP_FOPEN_CLOEXEC_MODE;
default:
return nullptr;
}
OpenPOWER on IntegriCloud