cmArchiveWrite: replace mode_t with int

Rationale:

* mode_t is not defined on all platforms
* bitmasking (operator &) promotes the value to an int anyway
* libarchive uses int in the public api starting with version 4
This commit is contained in:
Daniel Pfeifer 2016-08-17 23:52:34 +02:00
parent 67a7dcef45
commit 373b2e483d
2 changed files with 5 additions and 5 deletions

View File

@ -268,7 +268,7 @@ bool cmArchiveWrite::AddFile(const char* file, size_t skip, const char* prefix)
} }
if (this->PermissionsMask.IsSet()) { if (this->PermissionsMask.IsSet()) {
mode_t perm = archive_entry_perm(e); int perm = archive_entry_perm(e);
archive_entry_set_perm(e, perm & this->PermissionsMask.Get()); archive_entry_set_perm(e, perm & this->PermissionsMask.Get());
} }

View File

@ -94,7 +94,7 @@ public:
void SetMTime(std::string const& t) { this->MTime = t; } void SetMTime(std::string const& t) { this->MTime = t; }
//! Sets the permissions of the added files/folders //! Sets the permissions of the added files/folders
void SetPermissions(mode_t permissions_) void SetPermissions(int permissions_)
{ {
this->Permissions.Set(permissions_); this->Permissions.Set(permissions_);
} }
@ -107,7 +107,7 @@ public:
//! The permissions will be copied from the existing file //! The permissions will be copied from the existing file
//! or folder. The mask will then be applied to unset //! or folder. The mask will then be applied to unset
//! some of them //! some of them
void SetPermissionsMask(mode_t permissionsMask_) void SetPermissionsMask(int permissionsMask_)
{ {
this->PermissionsMask.Set(permissionsMask_); this->PermissionsMask.Set(permissionsMask_);
} }
@ -177,8 +177,8 @@ private:
//!@} //!@}
//! Permissions on files/folders //! Permissions on files/folders
cmArchiveWriteOptional<mode_t> Permissions; cmArchiveWriteOptional<int> Permissions;
cmArchiveWriteOptional<mode_t> PermissionsMask; cmArchiveWriteOptional<int> PermissionsMask;
}; };
#endif #endif