> valgrind is your friend :) Not the best one :). Valgrind output is below.
Also I noticed that maybe ENABLE_COOKIES code is the problem because when I compile with --disable-cookies memory leak seems to disappear. And warnings "WARNING: No method machine for event." are just informational or means something not good? Mindaugas ==25725== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 14 from 3) ==25725== malloc/free: in use at exit: 552076 bytes in 6957 blocks. ==25725== malloc/free: 86189 allocs, 79232 frees, 9400491 bytes allocated. ==25725== For counts of detected errors, rerun with: -v ==25725== searching for pointers to 6957 not-freed blocks. ==25725== checked 7673196 bytes. ==25725== ==25725== 30208 bytes in 53 blocks are possibly lost in loss record 21 of 22 ==25725== at 0x40027C66: malloc (vg_replace_malloc.c:160) ==25725== by 0x80B9E02: gw_check_realloc (gwmem-check.c:543) ==25725== by 0x80C777F: octstr_grow (octstr.c:190) ==25725== by 0x80CA65C: octstr_insert_data (octstr.c:1333) ==25725== ==25725== ==25725== 515833 bytes in 6804 blocks are possibly lost in loss record 22 of 22 ==25725== at 0x40027C66: malloc (vg_replace_malloc.c:160) ==25725== by 0x80B9C47: gw_check_malloc (gwmem-check.c:496) ==25725== by 0x80D2020: mutex_create_real (thread.c:82) ==25725== by 0x80BC67C: proxy_init (http.c:219) ==25725== ==25725== LEAK SUMMARY: ==25725== definitely lost: 0 bytes in 0 blocks. ==25725== possibly lost: 546041 bytes in 6857 blocks. ==25725== still reachable: 3835 bytes in 89 blocks. ==25725== suppressed: 2200 bytes in 11 blocks.
