>>642の簡単な例なら最初のmallocのあと
pt_aho->p1 = NULL;
pt_aho->fd2 = -1;
pt_aho->fp3 = NULL;
と初期化しておくだけでどう後始末すれば判定できる