serenity/AK
Andrew Kaster 73adbb319c AK: Don't read past the end in BitmapView::count_in_range()
The current code is factored such that reads to the entirety of the last
byte should be dropped. This was relying on the fact that last would be
one past the end in that case. Instead of actually reading that byte
when it's completely out of bounds of the bitmask, just skip reads that
would be invalid. Add more tests to make sure that the behavior is
correct for byte aligned reads of byte aligned bitmaps.
2021-05-16 21:58:14 +01:00
..
AllOf.h
AnyOf.h
Array.h
Assertions.h
Atomic.h
Badge.h
Base64.cpp
Base64.h
BinaryHeap.h
BinarySearch.h
BitCast.h
Bitmap.h
BitmapView.h AK: Don't read past the end in BitmapView::count_in_range() 2021-05-16 21:58:14 +01:00
BitStream.h
Buffered.h
ByteBuffer.h AK: Don't call memcpy with null argument in ByteBuffer::copy() 2021-05-16 21:58:14 +01:00
ByteReader.h LibCrypto+LibTLS: Avoid unaligned reads and writes 2021-05-14 08:39:29 +01:00
Checked.h
CheckedFormatString.h
CircularDeque.h
CircularDuplexStream.h
CircularQueue.h
CMakeLists.txt
Complex.h
Concepts.h AK+Kernel+LibELF: Remove the need for IteratorDecision::Continue 2021-05-16 10:36:52 +01:00
Debug.h.in AK+Meta: Add a debug option for Solitaire 2021-05-16 16:37:51 +02:00
Demangle.h
DistinctNumeric.h
DoublyLinkedList.h
Endian.h
EnumBits.h
ExtraMathConstants.h
FileStream.h
Find.h
FlyString.cpp AK: Try to avoid String allocation in FlyString(StringView) 2021-05-15 11:01:05 +02:00
FlyString.h
Format.cpp Kernel/Graphics + SystemServer: Support text mode properly 2021-05-16 19:58:33 +02:00
Format.h Kernel/Graphics + SystemServer: Support text mode properly 2021-05-16 19:58:33 +02:00
Forward.h AK: Turn ByteBuffer into a value type 2021-05-16 17:49:42 +02:00
Function.h
GenericLexer.cpp
GenericLexer.h
HashFunctions.h
HashMap.h AK: Add a non-const overload to HapMap::get() 2021-05-08 18:10:56 +02:00
HashTable.h AK+LibC: Implement malloc_good_size() and use it for Vector/HashTable 2021-05-15 16:30:14 +02:00
Hex.cpp
Hex.h
IDAllocator.h
InlineLinkedList.h AK+Kernel+LibELF: Remove the need for IteratorDecision::Continue 2021-05-16 10:36:52 +01:00
IntrusiveList.h
IntrusiveRedBlackTree.h
IPv4Address.h
IterationDecision.h
Iterator.h
JsonArray.h
JsonArraySerializer.h
JsonObject.h
JsonObjectSerializer.h
JsonParser.cpp AK: Use move semantics to avoid copying in JSON parser 2021-05-14 11:54:43 +02:00
JsonParser.h
JsonPath.cpp
JsonPath.h
JsonValue.cpp
JsonValue.h
kmalloc.h AK+LibC: Implement malloc_good_size() and use it for Vector/HashTable 2021-05-15 16:30:14 +02:00
kstdio.h
LEB128.h
LexicalPath.cpp AK: Add LexicalPath::append and LexicalPath::join 2021-05-12 22:38:20 +02:00
LexicalPath.h AK: Add LexicalPath::append and LexicalPath::join 2021-05-12 22:38:20 +02:00
MACAddress.h
MappedFile.cpp
MappedFile.h
MemMem.h
Memory.h
MemoryStream.h Kernel+LibC: Make get_dir_entries syscall retriable 2021-05-12 12:50:23 +02:00
NeverDestroyed.h
Noncopyable.h
NonnullOwnPtr.h AK: Add ConstPeekType to Traits 2021-05-08 18:10:56 +02:00
NonnullOwnPtrVector.h
NonnullPtrVector.h
NonnullRefPtr.h AK: Add missing GenericTraits<NonnullRefPtr> 2021-05-08 18:10:56 +02:00
NonnullRefPtrVector.h
NumberFormat.h
NumericLimits.h AK: Add epsilon() to NumericLimits for float, double, long double 2021-05-08 10:13:22 +02:00
Optional.h AK: Add constructors to Optional that accept non const qualified inputs 2021-05-08 18:10:56 +02:00
OSError.h
OwnPtr.h AK: Introduce adopt_own_if_nonnull(..) to aid in Kernel OOM hardening 2021-05-13 08:29:01 +02:00
Platform.h AK: Fix redefinition of macro inside AK/Platform.h 2021-05-14 22:24:02 +02:00
PrintfImplementation.h
Ptr32.h
Queue.h
QuickSort.h
Random.cpp AK: Introduce get_random_uniform() 2021-05-14 22:24:02 +02:00
Random.h AK: Introduce get_random_uniform() 2021-05-14 22:24:02 +02:00
RedBlackTree.h
RefCounted.h
RefPtr.h AK: Introduce adopt_ref_if_nonnull(..) to aid in Kernel OOM hardening 2021-05-13 08:29:01 +02:00
Result.h AK: Let Result<T, E> know its Value and Error types 2021-05-08 22:14:39 +02:00
ScopedValueRollback.h
ScopeGuard.h
ScopeLogger.h AK+LibCpp: Remove DEBUG_SPAM in favour of per-application defines 2021-05-08 22:14:39 +02:00
SIMD.h
Singleton.h
SinglyLinkedList.h
SinglyLinkedListWithCount.h
SourceGenerator.h
SourceLocation.h
Span.h AK: Add missing 'const' in Span 2021-05-10 10:32:39 +02:00
StackInfo.cpp
StackInfo.h
StdLibExtraDetails.h
StdLibExtras.h
Stream.h
String.cpp
String.h AK+Userland: Remove nullability feature for the ByteBuffer type 2021-05-16 17:49:42 +02:00
StringBuilder.cpp AK: Turn ByteBuffer into a value type 2021-05-16 17:49:42 +02:00
StringBuilder.h AK: Turn ByteBuffer into a value type 2021-05-16 17:49:42 +02:00
StringHash.h AK: Make StringView::hash() constexpr 2021-05-14 15:24:32 +02:00
StringImpl.cpp AK: Remove unused STRINGIMPL_DEBUG instrumentation 2021-05-14 17:17:32 +02:00
StringImpl.h AK: Make StringView::hash() constexpr 2021-05-14 15:24:32 +02:00
StringUtils.cpp
StringUtils.h
StringView.cpp AK: Make StringView::hash() constexpr 2021-05-14 15:24:32 +02:00
StringView.h AK: Make StringView::hash() constexpr 2021-05-14 15:24:32 +02:00
TemporaryChange.h
Time.cpp
Time.h
Traits.h AK: Add ConstPeekType to Traits 2021-05-08 18:10:56 +02:00
Trie.h
Tuple.h AK: Add a Tuple implementation 2021-05-11 14:09:17 +01:00
TypeCasts.h
TypedTransfer.h
TypeList.h
Types.h
URL.cpp
URL.h
URLParser.cpp
URLParser.h
Userspace.h
Utf8View.cpp
Utf8View.h
Utf32View.h
UUID.cpp AK+Userland: Fix some compiler warnings and make variables const-ref 2021-05-16 17:49:42 +02:00
UUID.h
Variant.h AK: Fix Variant's copy constructor trying to delegate to the wrong base 2021-05-13 19:44:32 +01:00
Vector.h AK+Userland: Remove nullability feature for the ByteBuffer type 2021-05-16 17:49:42 +02:00
Weakable.h
WeakPtr.h