Mail Archives: djgpp/1996/01/21/07:49:46
I just upgraded from beta3 to beta4 (good work, everyone! I like it...),
and after spending a couple of hours locking all my interrupt handlers,
I have everything working except my mouse code. This installs a callback
routine with the int33 mouse driver, using _go32_dpmi_allocate_real_mode_ \
callback_retf(); I am convinced that I have locked all the memory I am
touching, and yet my system hangs every time I move the mouse. I have a
suspicion that the problem is in the wrapper allocation code, which
seems to be locking the wrong bits of memory...
from gormcb.c:
#define MALLOC_STACK() \
do { \
if (!stack_length) { \
stack_length = _go32_rmcb_stack_size; \
stack = (char *)malloc(stack_length); \
if (stack == 0) { \
free(wrapper); \
return 0x8015; \
} \
if( _go32_dpmi_lock_data( wrapper, \
stack_length) ) return 0x8015; \
Surely this should be the stack it is locking, and not the wrapper?
Shawn Hargreaves If God is omnipotent, can he make a
http://www.york.ac.uk/~slh100/ rock so heavy that he cannot lift it?
- Raw text -