fixing sign-conversion warnings, part 21, file_flags (#1750)

fixing sign-conversion warnings, part 21, file_flags
This commit is contained in:
Alden Torres 2017-02-25 19:06:31 -05:00 committed by Arvid Norberg
parent 3a93e1767b
commit 97c8d0486c
4 changed files with 19 additions and 19 deletions

View File

@ -146,7 +146,7 @@ void bind_create_torrent()
std::string (file_storage::*file_storage_file_path)(file_index_t, std::string const&) const = &file_storage::file_path;
std::int64_t (file_storage::*file_storage_file_size)(file_index_t) const = &file_storage::file_size;
std::int64_t (file_storage::*file_storage_file_offset)(file_index_t) const = &file_storage::file_offset;
int (file_storage::*file_storage_file_flags)(file_index_t) const = &file_storage::file_flags;
std::uint32_t (file_storage::*file_storage_file_flags)(file_index_t) const = &file_storage::file_flags;
#ifndef TORRENT_NO_DEPRECATE
file_entry (file_storage::*at)(int) const = &file_storage::at;

View File

@ -285,7 +285,7 @@ namespace libtorrent
, std::string const& path, std::int64_t file_size
, std::uint32_t file_flags = 0, char const* filehash = 0
, std::int64_t mtime = 0, string_view symlink_path = string_view());
void add_file(std::string const& path, std::int64_t file_size, int file_flags = 0
void add_file(std::string const& path, std::int64_t file_size, std::uint32_t file_flags = 0
, std::time_t mtime = 0, string_view symlink_path = string_view());
// renames the file at ``index`` to ``new_filename``. Keep in mind
@ -301,7 +301,7 @@ namespace libtorrent
// instead, use the wchar -> utf8 conversion functions
// and pass in utf8 strings
TORRENT_DEPRECATED
void add_file(std::wstring const& p, std::int64_t size, int flags = 0
void add_file(std::wstring const& p, std::int64_t size, std::uint32_t flags = 0
, std::time_t mtime = 0, string_view s_p = "");
TORRENT_DEPRECATED
void rename_file(file_index_t index, std::wstring const& new_filename);
@ -489,7 +489,7 @@ namespace libtorrent
// flags indicating various attributes for files in
// a file_storage.
enum file_flags_t
enum file_flags_t : std::uint32_t
{
// this file is a pad file. The creator of the
// torrent promises the file is entirely filled with
@ -515,7 +515,7 @@ namespace libtorrent
// returns a bitmask of flags from file_flags_t that apply
// to file at ``index``.
int file_flags(file_index_t index) const;
std::uint32_t file_flags(file_index_t index) const;
// returns true if the file at the specified index has been renamed to
// have an absolute path, i.e. is not anchored in the save path of the

View File

@ -58,7 +58,7 @@ namespace libtorrent
inline bool ignore_subdir(std::string const& leaf)
{ return leaf == ".." || leaf == "."; }
int get_file_attributes(std::string const& p)
std::uint32_t get_file_attributes(std::string const& p)
{
#ifdef TORRENT_WINDOWS
WIN32_FILE_ATTRIBUTE_DATA attr;
@ -74,8 +74,8 @@ namespace libtorrent
return 0;
#else
struct stat s;
if (lstat(convert_to_native(p).c_str(), &s) < 0) return 0;
int file_attr = 0;
if (::lstat(convert_to_native(p).c_str(), &s) < 0) return 0;
std::uint32_t file_attr = 0;
if (s.st_mode & S_IXUSR)
file_attr += file_storage::attribute_executable;
if (S_ISLNK(s.st_mode))
@ -142,7 +142,7 @@ namespace libtorrent
else
{
// #error use the fields from s
int file_flags = get_file_attributes(f);
std::uint32_t file_flags = get_file_attributes(f);
// mask all bits to check if the file is a symlink
if ((file_flags & file_storage::attribute_symlink)
@ -531,7 +531,7 @@ namespace libtorrent
file_index_t const first(0);
if (m_include_mtime) info["mtime"] = m_files.mtime(first);
info["length"] = m_files.file_size(first);
int const flags = m_files.file_flags(first);
std::uint32_t const flags = m_files.file_flags(first);
if (flags & (file_storage::flag_pad_file
| file_storage::flag_hidden
| file_storage::flag_executable
@ -582,7 +582,7 @@ namespace libtorrent
path_e.list().push_back(entry(e));
}
int const flags = m_files.file_flags(i);
std::uint32_t const flags = m_files.file_flags(i);
if (flags != 0)
{
std::string& attr = file_e["attr"].string();

View File

@ -338,7 +338,7 @@ namespace libtorrent
void file_storage::add_file(file_entry const& fe, char const* filehash)
{
int flags = 0;
std::uint32_t flags = 0;
if (fe.pad_file) flags |= file_storage::flag_pad_file;
if (fe.hidden_attribute) flags |= file_storage::flag_hidden;
if (fe.executable_attribute) flags |= file_storage::flag_executable;
@ -361,7 +361,7 @@ namespace libtorrent
}
void file_storage::add_file(std::wstring const& file, std::int64_t file_size
, int file_flags, std::time_t mtime, string_view symlink_path)
, std::uint32_t file_flags, std::time_t mtime, string_view symlink_path)
{
add_file(wchar_utf8(file), file_size, file_flags, mtime, symlink_path);
}
@ -540,7 +540,7 @@ namespace libtorrent
}
void file_storage::add_file(std::string const& path, std::int64_t file_size
, int file_flags, std::time_t mtime, string_view symlink_path)
, std::uint32_t file_flags, std::time_t mtime, string_view symlink_path)
{
add_file_borrow(nullptr, 0, path, file_size, file_flags, nullptr, mtime
, symlink_path);
@ -813,14 +813,14 @@ namespace libtorrent
return m_files[index].offset;
}
int file_storage::file_flags(file_index_t const index) const
std::uint32_t file_storage::file_flags(file_index_t const index) const
{
TORRENT_ASSERT_PRECOND(index >= file_index_t(0) && index < end_file());
internal_file_entry const& fe = m_files[index];
return (fe.pad_file ? flag_pad_file : 0)
| (fe.hidden_attribute ? flag_hidden : 0)
| (fe.executable_attribute ? flag_executable : 0)
| (fe.symlink_attribute ? flag_symlink : 0);
return (fe.pad_file ? flag_pad_file : 0u)
| (fe.hidden_attribute ? flag_hidden : 0u)
| (fe.executable_attribute ? flag_executable : 0u)
| (fe.symlink_attribute ? flag_symlink : 0u);
}
bool file_storage::file_absolute_path(file_index_t const index) const