all: minor cleanups

This commit is contained in:
Markus F.X.J. Oberhumer
2023-05-14 09:36:10 +02:00
parent b3e4efbabe
commit 40653e40a4
7 changed files with 39 additions and 21 deletions
+4 -1
View File
@@ -25,6 +25,9 @@
<markus@oberhumer.com> <ezerotven+github@gmail.com>
*/
// A MemBuffer allocates memory on the heap, and automatically
// gets destructed when leaving scope or on exceptions.
#include "../conf.h"
#include "membuffer.h"
@@ -256,7 +259,7 @@ void MemBuffer::dealloc() noexcept {
//
**************************************************************************/
TEST_CASE("MemBuffer") {
TEST_CASE("MemBuffer core") {
MemBuffer mb;
CHECK_THROWS(mb.checkState());
CHECK_THROWS(mb.alloc(0x30000000 + 1));
+2 -4
View File
@@ -119,17 +119,15 @@ inline typename MemBufferBase<T>::pointer raw_index_bytes(const MemBufferBase<T>
return mbb.raw_bytes(mem_size(sizeof(element_type), index, size_in_bytes)) + index;
}
#if 1
// some more global overloads using a checked raw_bytes() call
#define XSPAN_REQUIRES_CONVERTIBLE_ANY_DIRECTION(A, B, RType) \
typename std::enable_if<std::is_same<A, B>::value, RType>::type
#define XSPAN_FWD_C_IS_MEMBUFFER 1
#define C MemBufferBase
#define XSPAN_FWD_C_IS_MEMBUFFER 1
#include "xspan_fwd.h"
#undef C
#undef XSPAN_FWD_C_IS_MEMBUFFER
#undef C
#undef XSPAN_REQUIRES_CONVERTIBLE_ANY_DIRECTION
#endif
/*************************************************************************
//
+2 -2
View File
@@ -76,10 +76,10 @@ void xspan_check_range(const void *p, const void *base, ptrdiff_t size_in_bytes)
if very_unlikely (base == nullptr)
xspan_fail_range_nullbase();
ptrdiff_t off = (const charptr) p - (const charptr) base;
if very_unlikely (off < 0 || off > size_in_bytes)
if very_unlikely (off < 0 || off > size_in_bytes || size_in_bytes > UPX_RSIZE_MAX)
xspan_fail_range_range();
xspan_stats.check_range_counter += 1;
// fprintf(stderr, "xspan_check_range done\n");
NO_fprintf(stderr, "xspan_check_range done\n");
}
XSPAN_NAMESPACE_END