Fix bad-free in ensure_vector_match: aCleanup(a) → aCleanup(*a)
When the second vector argument fails to parse, the cleanup of the first vector was called with the double-pointer 'a' instead of '*a'. When the first vector was parsed from JSON text (cleanup = sqlite3_free), this called sqlite3_free on a stack address, causing a crash. Found by the vec-mismatch fuzz target. Shout out to @renatgalimov in #257 for finding the original bug! Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
A
Alex Garcia committed
4ce1ef3c6fda2a5c1986ef9505a15ad9cbd6b761
Parent: 0dd0765