Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
AIDE
Ich glaube nicht dass es die ab3support.library ist. Ich schaue es mir mal an.
Zitieren
Ich habe dir das schon einmal vor über einen halben Jahr hier geschrieben http://www.amiblitz.de/community/viewtop...port#p1234.
Zitieren
Ich habe es heute noch einmal getestet.

Dieser Code verbrät 512 Kilobyte Speicher der nicht mehr freigegeben wird:
Code:
optimize 5
Syntax 6

XINCLUDE "ab3support.include.ab3"

If (AB3Support_OpenLib{2}) ; (!) put your min version here if needed!
  ; (!) place your built-in demo here
  NPrint "AB3Support.library is open!"
  *pft.prefixtree = pftlib_Create{524288,0}
  NPrint "Allocated pft:",Hex$(*pft)

  pftlib_Free{*pft}
Else
  NPrint "Unable to open lib!"
EndIf
End

Auszug aus dem Shell mitschnitt:
Code:
Sonntag 09-Aug-15  13:49:09
DH10: > avail flush
Type  Available    In-Use   Maximum   Largest
chip     950536     81656   1032192    935232
fast   66180048  17181744  83361792  65246080
total  67130584  17263400  84393984  65246080

DH10:> mavail flush
Type  Available    In-Use   Maximum   Largest
chip     950536     81656   1032192    935232
fast   66180048  17181744  83361792  65246080
total  67130584  17263400  84393984  65246080

DH10:> dh00:ab3supporttest
AB3Support.library is open!
Allocated pft:08FDB52C
Allocated pft:08FDB52C

DH10:> avail flush
Type  Available    In-Use   Maximum   Largest
chip     950536     81656   1032192    935232
fast   65634112  17727680  83361792  64717352
total  66584648  17809336  84393984  64717352

DH10:> avail flush
Type  Available    In-Use   Maximum   Largest
chip     950536     81656   1032192    935232
fast   65634112  17727680  83361792  64717352
total  66584648  17809336  84393984  64717352

Dieser Code verbrät nur 120 Byte:
Code:
optimize 5
Syntax 6

XINCLUDE "prefixtree.include.ab3"


  *pft.prefixtree = pft_Create{524288}
  NPrint "Allocated pft:",Hex$(*pft)

  pft_Free{*pft}
  NPrint "Allocated pft:",Hex$(*pft)
End
Zitieren
Dann wird der pft nicht freigegeben. Danke für die Analyse.
Zitieren
Pass bitte den Code der die Library an das wenn sie aus dem Speicher entfernt wird bei Opencount 0 jeden von ihr allocierten Speicher freigibt.

Das hätte den Vorteil wenn mal pft_free vergessen wird das der Speicher bei Programmende doch freigegeben wird.
Zitieren
Ich habe mit Schrecken festgestellt, dass ich den Library Code nicht mehr habe, zumindest nicht auf meinem Rechner in den USA (wo ich momentan wohne). Ich glaube der Code lungert noch auf einer Platte in Deutschland rum, da komme ich aber vorerst nicht vorbei.
Ich babe natürlich noch den Code für pft, fft, zlib etc., aber nicht den Library Code. Evtl. schreibe ich den dann einfach neu. Ich könnte das evtl. dann gleich für WinUAE dll mit machen, das war ja die Idee. (teure Algorithmen in C implementieren, damit man sie native compilieren kann z.B. als Windows .dll und auf der Amiga Seite per Library einbinden kann).

Ich habe die Amiblitz Stubbs gechecked, und dort keinen Fehler gefunden. Muss also im Pft C-Code direkt sein. Vermutlich ist der Bug schon lange gefixed, weil der Code intensiv benutzt wird. Ich kann momentan den Code leider nicht ins SVN stellen aus Copyright Gründen. Das wird sich vermutlich in ca. 2 Jahren ändern.
Zitieren
DA kann ich dir nicht helfen, ist deine Entscheidung.

Ich habe die Library disassemblert aber da ist schwer durchzublicken geschweige den zu fixen.
Zitieren
Ich habe alle Sourcen bis auf den Libary code. Den habe ich aber wieder hergestellt im Groben.
Muss nur noch die Funktionen reinbasteln. API might look a bit different, but it has been used internally only anyway.
Zitieren
sorry, ich kanns mir nicht verkneifen Confusedhock:

Project allways dead ? oder wie oder was Big Grin

Komm gut rein ins Jahr 2016 !
Zitieren
Nein, ich abreite dran. Es gibt bald ein AIDE update was besser configurierbar ist, auch für Datei Typen die nicht von mir vorgesehen sind, z.B. kann man für NTUI GUI-XMLs einen eigenen Typ anlegen und dann debuggen mit deinem Creator, und trotzdem allgemein XML typ haben der was anderes macht. Oder AREXX hinzufügen ohne dass AIDE AREXX "kennt".
Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste