theseion / libgit2-pharo-bindings

libgit2 bindings for Pharo
http://theseion.github.io/libgit2-pharo-bindings
7 stars 29 forks source link

Structs allocated from the image can't be freed with the provided functions #24

Closed theseion closed 9 years ago

theseion commented 9 years ago

See LGitIndex>>updateAll and #addAll and #removeAll. Need to free the address of the struct and not use the provided free function of the struct. Otherwise we'll see error messages on stdout.

Problem: this only frees the struct but does not tear down internals.

theseion commented 9 years ago

The problem is that memory is being managed by NativeBoost with mmap and munmap. The C standard clearly states that free may only be used for pointers allocated with malloc, realloc or calloc. So for all memory allocated from the image, it is mandatory to use the NativeBoost free function.

I need to revise the finalization scheme structs.

tinchodias commented 9 years ago

Done?! Wow (a la mierda! :-) ) El 16/7/2015 15:36, "Max Leske" notifications@github.com escribió:

Closed #24 https://github.com/theseion/LibGit/issues/24 via 3a36acb https://github.com/theseion/LibGit/commit/3a36acb596d8fe5311b5b8a5e65356fc86259ef0 .

— Reply to this email directly or view it on GitHub https://github.com/theseion/LibGit/issues/24#event-357519181.

theseion commented 9 years ago

On 16.07.2015, at 21:37, Martín Dias notifications@github.com wrote:

Done?! Wow (a la mierda! :-) ) El 16/7/2015 15:36, "Max Leske" notifications@github.com escribió:

A la mierda!! 😁

Closed #24 https://github.com/theseion/LibGit/issues/24 via 3a36acb https://github.com/theseion/LibGit/commit/3a36acb596d8fe5311b5b8a5e65356fc86259ef0 .

— Reply to this email directly or view it on GitHub https://github.com/theseion/LibGit/issues/24#event-357519181.

— Reply to this email directly or view it on GitHub.