Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3f669e07 authored by Badhri Jagan Sridharan's avatar Badhri Jagan Sridharan Committed by Android Git Automerger
Browse files

am 59be5aed: Merge "libziparchive: fix fallocate failures"

* commit '59be5aed':
  libziparchive: fix fallocate failures
parents de28adf3 59be5aed
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -1008,8 +1008,13 @@ class FileWriter : public Writer {
      // entry. Note that the call to ftruncate below will change the file size but
      // will not allocate space on disk and this call to fallocate will not
      // change the file size.
      // Note: fallocate is only supported by the following filesystems -
      // btrfs, ext4, ocfs2, and xfs. Therefore fallocate might fail with
      // EOPNOTSUPP error when issued in other filesystems.
      // Hence, check for the return error code before concluding that the
      // disk does not have enough space.
      result = TEMP_FAILURE_RETRY(fallocate(fd, 0, current_offset, declared_length));
      if (result == -1) {
      if (result == -1 && errno == ENOSPC) {
        ALOGW("Zip: unable to allocate space for file to %" PRId64 ": %s",
              static_cast<int64_t>(declared_length + current_offset), strerror(errno));
        return std::unique_ptr<FileWriter>(nullptr);