Commit c4037c24 authored by Committed by Vladimír Čunát
lib/utils: fixed memory corruption in kr_pkt_recycle and kr_pkt_clear_payload
Previous implementation forgot to clear the compression table, which is an internal structure to packet. So when a recycled packet was reused, it compared owners of newly inserted records with dangling pointers left in the compression table. This is less of a problem in query processing, as each packet uses a memory pool, so the pointed names were never deallocated, but it would write out wrong compression pointers because the compression table kept pointing into packet that was now cleared and reused for something else. It is more of a problem with packets created without a memory pool, as the compression table kept references to memory that was already freed.
Showing with 27 additions and 18 deletions