Seite 1 von 1

ggf. ein Bug? --> ReAllocateMemory ()

Verfasst: 13.09.2014 18:20
von SBond
Hi Leute,

immer wenn ich ReAllocateMemory() aufrufe, crasht mein Programm. Ich habe daher mal das Beispiel in der PB-Hilfe getestet und da ist das selbe Problem.

Code: Alles auswählen

*MemoryID = AllocateMemory(1000)
PokeS(*MemoryID, "Speichere diesen String")
; hier kann noch mehr mit dem Speicherbereich gemacht werden...
;
*NewMemoryID = ReAllocateMemory(*MemoryID, 2000) ; wir brauchen mehr Speicher
If *NewMemoryID
	; arbeitet jetzt mit *NewMemoryID mit einer Größe von 2000 Byte
	Debug "Der alte Inhalt ist noch vorhanden:"
	Debug PeekS(*NewMemoryID)
	;
	FreeMemory(*NewMemoryID) 
Else
	; die Größenänderung schlug fehl, wir arbeiten weiter mit *MemoryID (Größe 1000)
	;
	FreeMemory(*MemoryID)
EndIf
Ausgabe:
[18:26:32] [ERROR] Zeile: 5
[18:26:32] [ERROR] Trying to free or to reallocate a non-allocated memory block

Kann jemand den Fehler bestätigen?

folgendes geht aber problemlos:

Code: Alles auswählen

*MemoryID = AllocateMemory(1000)
[...]
*NewMemoryID = ReAllocateMemory(#Null , 2000)
FreeMemory(*MemoryID )

Gruß,
SBond
-------------
[PureBasic 5.30 x64]

Re: ggf. ein Bug? --> ReAllocateMemory ()

Verfasst: 13.09.2014 18:28
von SBond
...warum finde ich die Lösung immer wenn ich hier was Poste? :freak:

http://www.purebasic.fr/english/viewtop ... =4&t=60067
bei mir war Purifier eingeschaltet.

:oops:

Re: ggf. ein Bug? --> ReAllocateMemory ()

Verfasst: 13.09.2014 18:41
von ts-soft
Dann solltest Du updaten, in der 5.31 beta 1 ist der Fehler nicht mehr vorhanden!

Re: ggf. ein Bug? --> ReAllocateMemory ()

Verfasst: 13.09.2014 19:09
von SBond
ja, habe ich gerade gemacht :)

jetzt ist wieder alles gut :mrgreen: