[fpc-pascal] How to free memory allocated by C++ library
henry.vermaak at gmail.com
Thu Jun 2 10:35:35 CEST 2011
On 01/06/11 21:27, Malcolm Poole wrote:
> Working from the instructions in CinFreepascal.pdf (
> ftp://ftp.freepascal.org/pub/fpc/docs-pdf/CinFreePascal.pdf ) I have
> written an interface library to the C++ library libtesseract (
> http://code.google.com/p/tesseract-ocr ).
> Everything appears to work well but I am unsure about how to free memory
> which has been reserved by a libtesseract function and returned as a
> result. The original documentation states that "The calling function
> must delete  after use", but the application crashes with an Access
> Violation if I try to free the memory with Dispose or Freemem. I can
> confirm that the array of Integer pointed to by the result of
> tesseract_AllWordConfidences contains valid data.
If you add cmem to the start of your uses list, all the memory
operations are routed through the c memory manager. You should then be
able to use Free safely for pointers that were allocated by your library.
I'm planning some ocr work in the near future, so let us know if this works!
More information about the fpc-pascal