Implemented HEAP_WINE_CODE16SEG SEGPTR heaps with 16-bit code segments.

This commit is contained in:
Ulrich Weigand 1998-10-11 19:12:16 +00:00 committed by Alexandre Julliard
parent 85a7ff4090
commit bf5f693ff9
2 changed files with 4 additions and 2 deletions

View File

@ -24,6 +24,7 @@
#define HEAP_CREATE_ENABLE_TRACING 0x00020000 #define HEAP_CREATE_ENABLE_TRACING 0x00020000
#define HEAP_WINE_SEGPTR 0x01000000 /* Not a Win32 flag */ #define HEAP_WINE_SEGPTR 0x01000000 /* Not a Win32 flag */
#define HEAP_WINE_CODESEG 0x02000000 /* Not a Win32 flag */ #define HEAP_WINE_CODESEG 0x02000000 /* Not a Win32 flag */
#define HEAP_WINE_CODE16SEG 0x04000000 /* Not a Win32 flag */
/* Processor feature flags. */ /* Processor feature flags. */
#define PF_FLOATING_POINT_PRECISION_ERRATA 0 #define PF_FLOATING_POINT_PRECISION_ERRATA 0

View File

@ -453,8 +453,9 @@ static BOOL32 HEAP_InitSubHeap( HEAP *heap, LPVOID address, DWORD flags,
if (flags & HEAP_WINE_SEGPTR) if (flags & HEAP_WINE_SEGPTR)
{ {
selector = SELECTOR_AllocBlock( address, totalSize, selector = SELECTOR_AllocBlock( address, totalSize,
(flags & HEAP_WINE_CODESEG) ? SEGMENT_CODE : SEGMENT_DATA, (flags & (HEAP_WINE_CODESEG|HEAP_WINE_CODE16SEG))
(flags & HEAP_WINE_CODESEG) != 0, FALSE ); ? SEGMENT_CODE : SEGMENT_DATA,
(flags & HEAP_WINE_CODESEG) != 0, FALSE );
if (!selector) if (!selector)
{ {
WARN(heap, "Could not allocate selector\n" ); WARN(heap, "Could not allocate selector\n" );