Edmund Bacon <ebacon(at)onesystem(dot)com> writes:
> According to the backtrace, it appears to be dieing in malloc.
That's consistent with the idea that the multiple free is the source of
trouble --- multiple free() could corrupt malloc's private data
structures to the point of causing a crash in a later malloc call.
The least painful way of locating the problem would be to relink ecpg
with a debugging malloc package, which could tell you exactly where the
bad free() call is. You'd probably want to rebuild with --enable-debug
too.
regards, tom lane