diff --git a/src/blitter/ntapi_blt_block.c b/src/blitter/ntapi_blt_block.c
index 879eb1b..372672c 100644
--- a/src/blitter/ntapi_blt_block.c
+++ b/src/blitter/ntapi_blt_block.c
@@ -97,7 +97,7 @@ int32_t __fastcall __ntapi_blt_obtain(
 
 	if (blitter->info.blocks_avail == 0)
 		return NT_STATUS_ALLOCATE_BUCKET;
-	else if ((bit = *blkid % sizeof(size_t)) == 0)
+	else if ((bit = *blkid % (8*sizeof(size_t))) == 0)
 		return __ntapi_blt_acquire(blitter,blkid);
 
 	for (n=0,mask=(uintptr_t)-1; n<bit; n++)