On 05/15/2018 12:03 AM, Jonathan wrote:
```
xcb_generic_event_t*    event;
event = xcb_wait_for_event (connection);
free (event);
```

The problem is the `free` function.  It is not provided by the library but is part of the C standard library (in stdlib.h).

D has the C functions in core.stdc. So:

    import core.stdc.stdlib: free;

[...]
I tried using the `core.memory.GC.free` function from the D standard library and it compiled and ran but that does not necessarily mean there are not memory leaks (it also ran with the line entirely removed).

core.memory.GC.free is a different function. It works on GC-managed pointers. Don't call it on pointers that come from C libraries.

Reply via email to