Jacek Caban : jscript: Fixed handling block_cnt in jsheap_alloc.
Alexandre Julliard
julliard at winehq.org
Wed Feb 25 09:22:37 CST 2009
Module: wine
Branch: master
Commit: 18ee50e5d2bd0f55061215e80559f1f50152bf16
URL: http://source.winehq.org/git/wine.git/?a=commit;h=18ee50e5d2bd0f55061215e80559f1f50152bf16
Author: Jacek Caban <jacek at codeweavers.com>
Date: Wed Feb 25 01:28:49 2009 +0100
jscript: Fixed handling block_cnt in jsheap_alloc.
---
dlls/jscript/jsutils.c | 16 ++++++++--------
1 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/dlls/jscript/jsutils.c b/dlls/jscript/jsutils.c
index defddd4..5f24b7c 100644
--- a/dlls/jscript/jsutils.c
+++ b/dlls/jscript/jsutils.c
@@ -83,25 +83,25 @@ void *jsheap_alloc(jsheap_t *heap, DWORD size)
heap->block_cnt = 1;
}
- if(heap->offset + size < block_size(heap->last_block)) {
+ if(heap->offset + size <= block_size(heap->last_block)) {
tmp = ((BYTE*)heap->blocks[heap->last_block])+heap->offset;
heap->offset += size;
return tmp;
}
- if(size < block_size(heap->last_block+1)) {
+ if(size <= block_size(heap->last_block+1)) {
if(heap->last_block+1 == heap->block_cnt) {
tmp = heap_realloc(heap->blocks, (heap->block_cnt+1)*sizeof(void*));
if(!tmp)
return NULL;
- heap->blocks = tmp;
- }
- tmp = heap_alloc(block_size(heap->block_cnt+1));
- if(!tmp)
- return NULL;
+ heap->blocks = tmp;
+ heap->blocks[heap->block_cnt] = heap_alloc(block_size(heap->block_cnt));
+ if(!heap->blocks[heap->block_cnt])
+ return NULL;
- heap->blocks[heap->block_cnt++] = tmp;
+ heap->block_cnt++;
+ }
heap->last_block++;
heap->offset = size;
More information about the wine-cvs
mailing list