R: Bug: Fullscreen/Resize


2004-02-08 01:13 #1
So, doch 'mal vorbildlich einen neuen Thread beginnen... 😉

Ich denke, wir hatten damals schon darüber gesprochen (die alten Versionen inkl. Gravytris_Light haben das Problem ebenfalls), dass das Ändern der Fenstergröße gewisse Risiken mit sich bringt. Bei mir endet das früher oder später immer hier:

GravytrisDbg.gif

Man beachte den Inhalt von ESI, eindeutig eher Text (0x5F534947="^SIG" oder "GIS^", je nachdem. Das sieht für mich nach einem Buffer-Overflow aus. Ob das aber in der aufrufenden oder aufgerufenen Routine passiert, kann ich natürlich nicht sagen.

Das passiert hier auf allen Systemen, manchmal aber erst nach einigen Versuchen. Interessant finde ich den Effekt bei dem PIV mit der Radeon, da wird beim Doppelklick auf die Titelzeile der Cursor zu einem grünlichen, aber voll funktionsfähigen Quadrat. Verwendet man die Fullscreen-Option im Menü, wird dieses ebenfalls grün.

Falls Deine Assembler-Lesefähigkeit etwas eingerostet ist, noch ein Tipp: Da ist eine Schleife, welche ein Array einer 28 Bytes grossen Struktur abgearbeitet wird. Der Anfangszeiger wird in EAX, der End-Pointer in EDI übergeben (könnte ein for_each sein). Für jedes Element dessen DWORD an Offset 24 kleiner als 16 ist, wird die Routine an 4118D3h mit dem DWORD an Offset 4 als Parameter aufgerufen (Wenn Du in die MAP-Datei schaust, weisst Du sofort, was das ist).

Sollte das Problem bei Dir nicht auftauchen, binde doch einmal mein AutoDbg (Tofahrn-Tools (http://www.tofahrn.de/tools/)) mit ein (und beachte die Infos im Readme!). Dann kann ich Dir ganz genau sagen, wo es crasht.

waiting www.tom-productions.de - www.tofahrn-foto.de - www.tofahrn.de

2004-02-08 19:59 #2
herc
grmpfh. ist dieser bug immer noch vorhanden.
da hab ich also noch ne schöne suche vor mir.
ich werds erstmal mit ner gründlichen source code inspektion versuchen, vielleicht einfach nur ein flüchtigkeitsfehler oder ein problem mit

void glbegin()        { glPushAttrib(GL_ALL_ATTRIB_BITS); }
void glend()        { glPopAttrib(); }
2004-02-08 20:00 #3
R=Restore (Wiederherstellung)
Durch einen präzisen Angriff auf ezBoard sind sämtliche Beiträge der Foren verloren gegangen. Durch Restore-Prozesse seitens ezBoards konnte leider nur ein winziger Teil aller Beiträge gerettet werden. Das Robot-Forum hatte es auch schwer getroffen. Durch Google-Caches und Web.Archive.org konnten viele Beiträge wieder gefunden werden. Diese hier gehören dazu. Die Diskussion kann weitergeführt werden.