Changeset 478 for OCO/trunk/drv16/malloc.c
- Timestamp:
- Apr 9, 2010, 11:08:21 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
OCO/trunk/drv16/malloc.c
r468 r478 322 322 uRequest = (uSize + 3) & -4; // Force DWORD alignment. 323 323 324 if (pmbFree->uSize >= uRequest) 325 npvReturn = npvAllocateBlock( pmbFree, uRequest, NULL ); 326 else { 327 pmbPrev = pmbFree; 328 for ( pmb=pmbFree->pmbNext; pmb; pmbPrev=pmb, pmb=pmb->pmbNext) 329 if (pmb->uSize >= uRequest) { 330 npvReturn = npvAllocateBlock( pmb, uRequest, pmbPrev ); 331 break; 332 } 333 } 334 335 if (npvReturn) 336 { 337 SignatureCheck( (PMEMBLOCK) (((PUCHAR) npvReturn) - HDR_SIZE), (PSZ) "malloc() exit, allocated block" ); 338 } 339 else 340 { 324 if (pmbFree->uSize >= uRequest) 325 { 326 npvReturn = npvAllocateBlock(pmbFree, uRequest, NULL); 327 } 328 else 329 { 330 pmbPrev = pmbFree; 331 for (pmb=pmbFree->pmbNext; pmb; pmbPrev=pmb, pmb=pmb->pmbNext) 332 { 333 if (pmb->uSize >= uRequest) 334 { 335 npvReturn = npvAllocateBlock(pmb, uRequest, pmbPrev); 336 break; 337 } 338 } 339 } 340 341 if (npvReturn) 342 { 343 SignatureCheck( (PMEMBLOCK) (((PUCHAR) npvReturn) - HDR_SIZE), (PSZ) "malloc() exit, allocated block" ); 344 } 345 else 346 { 341 347 // Out of Memory !!! 342 348 int3(); 343 }344 345 HeapCheck((PSZ) "malloc() exit" );346 return npvReturn;349 } 350 351 HeapCheck((PSZ) "malloc() exit" ); 352 return npvReturn; 347 353 } 348 354
Note:
See TracChangeset
for help on using the changeset viewer.