memory leak reduction, there still is a smaller one in readfile.c somewhere, sigh...