[c] STATUS_ACCESS_VIOLATION

B

ByeBye 46085

Hi,

um einen Blurfilter für BMP-Dateien zu programmieren habe ich einen globalen char-Pointer welcher auf die Speicheradresse der pixel-daten verweisst. Beim laden der Datei wird genügend Speicher mit malloc reserviert.
Während des Filterns habe ich einen temporäres lokales Array welches auf die gleiche art und weise erstellt wird. Nach beendenden des FIlterns werden dann einfach die Adressen der Pointer vertauscht. Und der Speicherplatz des Temporären wird wieder freigegeben. Alles funktioniert wurderbar. Wird darauf die filterfunktion nochmals aufgerufen. Bekomme ich jedoch den STATUS_ACCESS_VIOLATION Fehler.

Versuche den Fehler zu beheben und deren Resultat:
1. Speicher nicht freigeben: kein Fehler mehr, Programm braucht aber immer mehr Speicher.
2. Temporäres Array auch global deklarieren. Gleiches Problem.

Den Sourcecode kopiere ich nicht in den Post, da schon über 200 Zeilen.

Weiss jemand wie ich den Fehler umgehen kann?

Gruss
Markus
 
Hi,

das Problem hat sich erledigt. Habe in einem Loop über den Rand des Arrays hinausgeschrieben. Als ich diesen Fehler behoben lief alles bestens.

Gruss Markus
 
Zurück