On Fri, 2010-02-12 at 15:24 +0100, Adam Pi?tyszek wrote: > In the above chunk you are freeing the form_buf, but the next if can > go back to the piece of code (tagged with "redirect:"), which reuses > the form_buf and even might try to free it again. I propose to move > move these "free(form_buf); form_buf = NULL;" lines after the goto > statement. You didn't do that -- you put it in two places instead. Why? You've also done the C99 thing of putting variable declarations in the middle of functions in a couple of places. I suspect we won't get away with that on some systems, so I'll change that. -- dwmw2