[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


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

Breakpoint 1, init_signals_pendingPtr () at mingwin.c:834
834      if (sharedMemory.address) {
(gdb) c

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

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?


Mike Thomas

reply via email to

[Prev in Thread] Current Thread [Next in Thread]