diff --git a/DqnUnitTest.cpp b/DqnUnitTest.cpp index fef8457..cc187c5 100644 --- a/DqnUnitTest.cpp +++ b/DqnUnitTest.cpp @@ -1648,7 +1648,7 @@ void DqnFile_Test() { const char *const FILE_TO_OPEN = ".clang-format"; u32 expectedSize = 0; -#if defined(DQN_UNIX_IMPLEMENTATION) +#if defined(DQN__IS_UNIX) { struct stat fileStat = {0}; DQN_ASSERT(stat(FILE_TO_OPEN, &fileStat) == 0); @@ -1665,7 +1665,7 @@ void DqnFile_Test() DQN_ASSERT(size > 0); } -#elif defined(DQN_WIN32_IMPLEMENTATION) +#else { HANDLE handle = CreateFile(FILE_TO_OPEN, GENERIC_READ, 0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); diff --git a/dqn.h b/dqn.h index 32d775f..3b00903 100644 --- a/dqn.h +++ b/dqn.h @@ -910,17 +910,17 @@ template T *DqnArray::Insert(isize index, T const *v, isize numIt return nullptr; } - T *start = data + index; - T const *end = data + count; - count = newCount; + T *src = data + index; + T *dest = src + numItems; + count = newCount; - if (start < end) - memmove(start + numItems, start, numItems * sizeof(T)); + if (src < dest) + memmove(dest, src, ((data + count) - src) * sizeof(T)); for (isize i = 0; i < numItems; i++) - start[i] = v[i]; + src[i] = v[i]; - return start; + return src; } template void DqnArray::EraseStable(isize index) @@ -1905,7 +1905,8 @@ DqnFixedString__VSprintf(DqnFixedString *me, char const *fmt, va_list argLi { char *bufStart = me->str + bufOffset; i32 const remainingSpace = static_cast((me->str + MAX) - bufStart); - int result = Dqn_vsnprintf(bufStart, remainingSpace, fmt, argList); + int result = Dqn_vsnprintf(bufStart, remainingSpace, fmt, argList); + me->len = result; return result; } @@ -2001,11 +2002,11 @@ struct DqnHashTable template bool DqnHashTable::Init(i64 const numTableEntries, DqnMemAPI *const api) { - isize arrayOfPtrsSize = (isize)(sizeof(*this->entries) * numTableEntries); + usize arrayOfPtrsSize = sizeof(*this->entries) * numTableEntries; auto *arrayOfPtrs = (u8 *)api->Alloc((isize)arrayOfPtrsSize); if (!arrayOfPtrs) return false; - isize usedEntriesSize = (isize)(sizeof(*this->usedEntries) * numTableEntries); + usize usedEntriesSize = sizeof(*this->usedEntries) * numTableEntries; auto *usedEntriesPtr = (u8 *)api->Alloc(usedEntriesSize); if (!usedEntriesPtr) { @@ -2297,7 +2298,7 @@ void DqnHashTable::Free() // Free usedEntries list { - isize sizeToFree = (isize)(sizeof(*this->usedEntries) * this->numEntries); + usize sizeToFree = sizeof(*this->usedEntries) * this->numEntries; this->memAPI->Free(this->usedEntries, sizeToFree); } @@ -2316,7 +2317,7 @@ void DqnHashTable::Free() // Free the array of ptrs { - isize sizeToFree = (isize)(ENTRY_SIZE * this->numEntries); + usize sizeToFree = ENTRY_SIZE * this->numEntries; this->memAPI->Free(this->entries, sizeToFree); } @@ -2364,10 +2365,10 @@ bool DqnHashTable::ChangeNumEntries(i64 newNumEntries) if (newNumEntries == this->numEntries) return true; Entry **newEntries = {}; - isize newEntriesSize = (isize)(sizeof(*this->entries) * newNumEntries); + usize newEntriesSize = sizeof(*this->entries) * newNumEntries; i64 *newUsedEntries = {}; - isize newUsedEntriesSize = (isize)(sizeof(*this->usedEntries) * newNumEntries); + usize newUsedEntriesSize = sizeof(*this->usedEntries) * newNumEntries; i64 newUsedEntriesIndex = 0; // NOTE: If you change allocation order, be sure to change the free order. @@ -2421,13 +2422,13 @@ bool DqnHashTable::ChangeNumEntries(i64 newNumEntries) // Free the old entry list { - usize freeSize = (isize)(sizeof(*this->entries) * this->numEntries); + usize freeSize = sizeof(*this->entries) * this->numEntries; this->memAPI->Free(this->entries, freeSize); } // Free the old used entry list { - usize freeSize = (isize)(sizeof(*this->usedEntries) * this->numEntries); + usize freeSize = sizeof(*this->usedEntries) * this->numEntries; this->memAPI->Free(this->usedEntries, freeSize); }