[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gcl-devel] EXTRA_BUFSIZE
From: |
Mike Thomas |
Subject: |
[Gcl-devel] EXTRA_BUFSIZE |
Date: |
Mon, 15 Nov 2004 22:39:41 +1000 |
User-agent: |
Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.4) Gecko/20030624 Netscape/7.1 (ax) |
Hi Camm.
I finally fixed my home computer by putting in an AMD Athlon 64 3000+
and all extra bits needed to go from a PIII to that CPU. Needless to
say, GCL doesn't build under Windows.
The heart of the problem is that signalsPendingPtr is overwritten, going
from 0xc00000 to 0xc30000 at line 139 in main.c where setbuf is called:
--------------------------------------------------------------
(gdb) r
Starting program: c:\cvs\head\gcl/unixport/saved_pre_gcl.exe
Breakpoint 2, init_shared_memory () at mingwin.c:864
864 if ( ! shared_memory_initialised ) {
(gdb) c
Continuing.
Breakpoint 1, init_signals_pendingPtr () at mingwin.c:834
834 if (sharedMemory.address) {
(gdb) c
Continuing.
Breakpoint 4, main (argc=1, argv=0x3f2d00, envp=0x3f3048) at main.c:133
133 RECREATE_HEAP
(gdb) p signalsPendingPtr
$13 = (unsigned int *) 0xc00000
(gdb) n
139 setbuf(stdin, stdin_buf);
(gdb) p signalsPendingPtr
$14 = (unsigned int *) 0xc30000
(gdb)
--------------------------------------------------------------
While looking into this I wondered why the stdin/out buffers are set to
a size of BUFSIZ + EXTRA_BUFSIZE rather than BUFSIZ. Any ideas?
Cheers
Mike Thomas
- [Gcl-devel] EXTRA_BUFSIZE,
Mike Thomas <=