Be more consistent about which bool value means an error occurred

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@338002 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/src/experimental/filesystem/operations.cpp b/src/experimental/filesystem/operations.cpp
index 028d5bf..775c178 100644
--- a/src/experimental/filesystem/operations.cpp
+++ b/src/experimental/filesystem/operations.cpp
@@ -433,19 +433,19 @@
                      error_code& ec) {
   if (::ftruncate(fd.fd, to_size) == -1) {
     ec = capture_errno();
-    return false;
+    return true;
   }
   ec.clear();
-  return true;
+  return false;
 }
 
 bool posix_fchmod(const FileDescriptor& fd, const StatT& st, error_code& ec) {
   if (::fchmod(fd.fd, st.st_mode) == -1) {
     ec = capture_errno();
-    return false;
+    return true;
   }
   ec.clear();
-  return true;
+  return false;
 }
 
 bool stat_equivalent(const StatT& st1, const StatT& st2) {
@@ -796,9 +796,9 @@
       return err.report(errc::bad_file_descriptor);
 
     // Set the permissions and truncate the file we opened.
-    if (!detail::posix_fchmod(to_fd, from_stat, m_ec))
+    if (detail::posix_fchmod(to_fd, from_stat, m_ec))
       return err.report(m_ec);
-    if (!detail::posix_ftruncate(to_fd, 0, m_ec))
+    if (detail::posix_ftruncate(to_fd, 0, m_ec))
       return err.report(m_ec);
   }