[GEM Development] [Fwd: Re: Bugs (or things that could be fixed)

John Elliott jce at seasip.demon.co.uk
Sat Aug 20 14:58:45 PDT 2005


: As soon as I'm done compiling allegro :) (I have to reboot every time
: I test it).

  Thanks for your crash dump. I believe I know what the problem is, and I
think it may affect Ben's desktop as well.

  Here's what happens: When a drive is detected, the desktop calls ini_str()
to get the default label, then scan_str() to add that label to the list of 
desktop strings. But (and here's the tricky part) the string passed to 
ini_str() must be terminated with @, not zero. The equivalent strings in 
ViewMAX/2's VIEWMAX.RSC are indeed @-terminated, but in Ben's desktop and
mine they aren't. So it copies bytes until the next @ it finds, and
depending on what's in memory this may or may not overflow the buffer space 
allowed for desktop strings.

  I've updated DESKDBG.ZIP on my site. If you can get that to work, I'll
take out the debugging bits again and update the main release. 

  Ben: As a matter of interest, where did your drive detection code come
from? Did you write it from scratch, disassemble one of the existing 
ViewMAXes, or adapt it from the ViewMAX/3 source tree?

-- 
------------- http://www.seasip.demon.co.uk/index.html --------------------
John Elliott           |BLOODNOK: "But why have you got such a long face?"
                       |SEAGOON: "Heavy dentures, Sir!"    - The Goon Show 
:-------------------------------------------------------------------------)


More information about the gem-dev mailing list