1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-03-06 04:19:42 +00:00

Use std::size_t to iterate

This commit is contained in:
elsid 2021-05-03 21:30:31 +02:00
parent 903ce44634
commit f4cfade14b
No known key found for this signature in database
GPG key ID: B845CB9FEE18AB40
2 changed files with 9 additions and 9 deletions

View file

@ -212,7 +212,7 @@ void NIFFile::parse(Files::IStreamPtr stream)
userVer = nif.getUInt(); userVer = nif.getUInt();
// Number of records // Number of records
unsigned int recNum = nif.getUInt(); const std::size_t recNum = nif.getUInt();
records.resize(recNum); records.resize(recNum);
// Bethesda stream header // Bethesda stream header
@ -251,7 +251,7 @@ void NIFFile::parse(Files::IStreamPtr stream)
std::vector<unsigned int> recSizes; // Currently unused std::vector<unsigned int> recSizes; // Currently unused
nif.getUInts(recSizes, recNum); nif.getUInts(recSizes, recNum);
} }
unsigned int stringNum = nif.getUInt(); const std::size_t stringNum = nif.getUInt();
nif.getUInt(); // Max string length nif.getUInt(); // Max string length
if (stringNum) if (stringNum)
nif.getSizedStrings(strings, stringNum); nif.getSizedStrings(strings, stringNum);
@ -264,7 +264,7 @@ void NIFFile::parse(Files::IStreamPtr stream)
} }
const bool hasRecordSeparators = ver >= NIFStream::generateVersion(10,0,0,0) && ver < NIFStream::generateVersion(10,2,0,0); const bool hasRecordSeparators = ver >= NIFStream::generateVersion(10,0,0,0) && ver < NIFStream::generateVersion(10,2,0,0);
for (unsigned int i = 0; i < recNum; i++) for (std::size_t i = 0; i < recNum; i++)
{ {
Record *r = nullptr; Record *r = nullptr;
@ -308,11 +308,11 @@ void NIFFile::parse(Files::IStreamPtr stream)
r->read(&nif); r->read(&nif);
} }
unsigned int rootNum = nif.getUInt(); const std::size_t rootNum = nif.getUInt();
roots.resize(rootNum); roots.resize(rootNum);
//Determine which records are roots //Determine which records are roots
for (unsigned int i = 0; i < rootNum; i++) for (std::size_t i = 0; i < rootNum; i++)
{ {
int idx = nif.getInt(); int idx = nif.getInt();
if (idx >= 0 && idx < int(records.size())) if (idx >= 0 && idx < int(records.size()))

View file

@ -25,22 +25,22 @@ class NIFFile;
/* /*
readLittleEndianBufferOfType: This template should only be used with arithmetic types readLittleEndianBufferOfType: This template should only be used with arithmetic types
*/ */
template <uint32_t numInstances, typename T> inline void readLittleEndianBufferOfType(Files::IStreamPtr &pIStream, T* dest) template <std::size_t numInstances, typename T> inline void readLittleEndianBufferOfType(Files::IStreamPtr &pIStream, T* dest)
{ {
pIStream->read((char*)dest, numInstances * sizeof(T)); pIStream->read((char*)dest, numInstances * sizeof(T));
if constexpr (Misc::IS_BIG_ENDIAN) if constexpr (Misc::IS_BIG_ENDIAN)
for (uint32_t i = 0; i < numInstances; i++) for (std::size_t i = 0; i < numInstances; i++)
Misc::swapEndiannessInplace(dest[i]); Misc::swapEndiannessInplace(dest[i]);
} }
/* /*
readLittleEndianDynamicBufferOfType: This template should only be used with arithmetic types readLittleEndianDynamicBufferOfType: This template should only be used with arithmetic types
*/ */
template <typename T> inline void readLittleEndianDynamicBufferOfType(Files::IStreamPtr &pIStream, T* dest, uint32_t numInstances) template <typename T> inline void readLittleEndianDynamicBufferOfType(Files::IStreamPtr &pIStream, T* dest, std::size_t numInstances)
{ {
pIStream->read((char*)dest, numInstances * sizeof(T)); pIStream->read((char*)dest, numInstances * sizeof(T));
if constexpr (Misc::IS_BIG_ENDIAN) if constexpr (Misc::IS_BIG_ENDIAN)
for (uint32_t i = 0; i < numInstances; i++) for (std::size_t i = 0; i < numInstances; i++)
Misc::swapEndiannessInplace(dest[i]); Misc::swapEndiannessInplace(dest[i]);
} }
template<typename type> type inline readLittleEndianType(Files::IStreamPtr &pIStream) template<typename type> type inline readLittleEndianType(Files::IStreamPtr &pIStream)