Author: tkreuzer
Date: Tue Dec 8 03:18:42 2009
New Revision: 44465
URL:
http://svn.reactos.org/svn/reactos?rev=44465&view=rev
Log:
Cleanup test code, improve comments.
Modified:
trunk/reactos/lib/rtl/bitmap.c
Modified: trunk/reactos/lib/rtl/bitmap.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/bitmap.c?rev=44465…
==============================================================================
--- trunk/reactos/lib/rtl/bitmap.c [iso-8859-1] (original)
+++ trunk/reactos/lib/rtl/bitmap.c [iso-8859-1] Tue Dec 8 03:18:42 2009
@@ -83,11 +83,12 @@
/* Calculate length up to where we read */
Length = (Buffer - BitMapHeader->Buffer) * 32 - StartingIndex;
Length += BitPos - 32;
-
+
+ /* Make sure we don't go past the last bit */
if (Length > BitMapHeader->SizeOfBitMap - StartingIndex)
Length = BitMapHeader->SizeOfBitMap - StartingIndex;
- /* The result is guaranteed to be < BitMapHeader->SizeOfBitMap */
+ /* Return the result */
return Length;
}
@@ -132,10 +133,11 @@
Length = (Buffer - BitMapHeader->Buffer) * 32 - StartingIndex;
Length += BitPos - 32;
+ /* Make sure we don't go past the last bit */
if (Length > BitMapHeader->SizeOfBitMap - StartingIndex)
Length = BitMapHeader->SizeOfBitMap - StartingIndex;
- /* The result is guaranteed to be < BitMapHeader->SizeOfBitMap */
+ /* Return the result */
return Length;
}
@@ -436,12 +438,10 @@
/* Loop until something is found or the end is reached */
while (CurrentBit + NumberToFind < BitMapHeader->SizeOfBitMap)
{
- ULONG test;
/* Search for the next clear run, by skipping a set run */
- test = RtlpGetLengthOfRunSet(BitMapHeader,
+ CurrentBit += RtlpGetLengthOfRunSet(BitMapHeader,
CurrentBit,
MAXULONG);
- CurrentBit += test;
/* Get length of the clear bit run */
CurrentLength = RtlpGetLengthOfRunClear(BitMapHeader,