Changeset 22090


Ignore:
Timestamp:
Mar 18, 2015, 4:59:40 PM (11 years ago)
Author:
rousseau
Message:

Fixed broken 'xx2lx.exe'

When using VAC, the resident and swap heaps were initialized using VAC
specific '_exeentry' functionality. This does not exist on GCC resulting
in uninitialized heaps causing 'xx2lx.exe' to crash.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/swt/src/win32k/ldr/xx2lxmain.cpp

    r10394 r22090  
    8383    PCSZ   psz;
    8484    int    argi;
     85
     86#ifdef __GNUC__
     87    /*
     88     * Initialize heaps when using GCC.
     89     * When building with GCC, there exists no VAC '_exeentry' stuff.
     90     * So the function '_rmem_init()' in 'misc/malloc.c', which would
     91     * initialize the resident and swap heaps, is never called under GCC.
     92     */
     93    rc = heapInit(CB_RES_INIT, CB_RES_MAX, CB_SWP_INIT, CB_SWP_MAX);
     94    if (rc != NO_ERROR) {
     95        printf("Fatal error: Failed to initialize memory heaps. rc=%d\n", rc);
     96        return rc;
     97    }
     98#endif
    8599
    86100    /* special edition for Dave Evans */
Note: See TracChangeset for help on using the changeset viewer.