\r
statelist = malloc((sizeof *statelist) << 21); //how large should be? \r
if(!statelist || !odd || !even)\r
- return 0;\r
+ {\r
+ free(statelist);\r
+ free(odd);\r
+ free(even);\r
+ return 0;\r
+ }\r
\r
s = statelist;\r
for(o = odd; *o != -1; ++o)\r