Seite 1 von 1

XbpColorDialog() / PDR 7117

Verfasst: Do, 30. Mai 2019 4:57
von AUGE_OHR
hi,

es gibt ja die undokumentierte CLASS XbpColorDialog() *** in "XppUI2.lib"
nun hat meine Xbase++ App 2 neue PDR Einträge gefunden
7129 XbpBitmap:loadFile() may yield error "invalid numeric value"
7117 XbpColorDialog:display() causes Garbage Collector stall
es gibt ein Workaround ... aber mir ist nicht klar wie ich das verwenden soll ?
Use the following class as an intermediate work-around:

Code: Alles auswählen

CLASS MyXbpColorDialog FROM XbpColorDialog
 PROTECTED:
   INLINE METHOD FreeOSStruct( c )
     LOCAL nRet
     LOCAL bOld

     nRet := SUPER:FreeOSStruct( c )
     bOld := ErrorBlock( {|e| Break(e)} )
     BEGIN SEQUENCE
        SUPER:FreeOSStruct( c )
     END SEQUENCE
     ErrorBlock( bOld )
   RETURN nRet
ENDCLASS
die Frage ist "wann" soll ich FreeOSStruct() aufrufen :?:

---
*** viewtopic.php?f=16&t=4594

Re: XbpColorDialog() / PDR 7117

Verfasst: Do, 30. Mai 2019 8:53
von Tom
Überhaupt nicht. Das sieht nach Überladen aus.

Re: XbpColorDialog() / PDR 7117

Verfasst: Do, 30. Mai 2019 10:21
von AUGE_OHR
Tom hat geschrieben: Do, 30. Mai 2019 8:53 Überhaupt nicht. Das sieht nach Überladen aus.
JA ... klar #-o

Frage : hat das jemand hier aus dem Forum gemeldet :?:

wenn ja wüsste ich gerne wie der Test-Code aussah der an Alaska ging.

Re: XbpColorDialog() / PDR 7117

Verfasst: Di, 04. Jun 2019 14:47
von hschmidt
Hallo Jimmy,

den Fehler hatte ich an Alaska gemeldet.
Seit der Umstellung auf Xbase++ 2.0 kam es bei Kunden zu sporadischen Programmabbrüchen.
Nach ziemlicher Sucherei bin ich dann mit Hilfe des Memwatch-Utilities (und des Alaska-Supports) auf den XbpColorDialog gekommen.
Wenn dieser einmal aufgerufen wurde, hat der Garbage-Collector offensichtlich nicht mehr richtig aufgeräumt und die Anzahl der Speicherhandles stieg immer weiter an bis das Programm dann mit einem EH1006-Fehler in der Xppfatal.log ausstieg.

Alaska hat mir dann den von Dir zitierten Workaround zur Verfügung gestellt und seitdem ist Ruhe.

Viele Grüße

Hans

Re: XbpColorDialog() / PDR 7117

Verfasst: Mi, 05. Jun 2019 22:11
von AUGE_OHR
hschmidt hat geschrieben: Di, 04. Jun 2019 14:47 den Fehler hatte ich an Alaska gemeldet.
Danke für die Rückmeldung.

könntest du bitte einen Teil deine Code posten ... wüsste gerne ob eine Event-Schleife vor dem o:Destroy() bei dir kommt.

Re: XbpColorDialog() / PDR 7117

Verfasst: Do, 06. Jun 2019 11:24
von hschmidt
Hallo Jimmy,

da das Ganze doch recht speziell ist, habe ich Dir das per PM geschickt.

Hans