void *malloc( size_t size ) { int pages; int n; void *retval; pages = 1 + ( ( size - 1 ) / PAGESIZE ); n = findspot( pages ); retval = ( void * ) ( _arena_data + ( n * PAGESIZE ) ); //printf("malloc: for %d bytes -> %08X\n", size, retval); return retval; }
static void insert( UI_WINDOW *wptr, int priority ) /*************************************************/ { UI_WINDOW **spot; UI_WINDOW *prev; spot = findspot( priority, &prev ); wptr->next = *spot; if( *spot == NULL ) { UIData->area_tail = wptr; } else { (*spot)->prev = wptr; } wptr->prev = prev; *spot = wptr; }