--- psiconv/trunk/program/extra/rewrite.c 2000/12/25 22:25:33 79 +++ psiconv/trunk/program/extra/rewrite.c 2003/12/13 23:26:37 180 @@ -19,7 +19,9 @@ #include #include +#include +#include #include int main(int argc, char *argv[]) @@ -27,16 +29,24 @@ FILE *fp; psiconv_buffer buf; psiconv_file psionfile; + psiconv_config config; + + /* psiconv_verbosity = PSICONV_VERB_DEBUG; */ if (argc < 3) { fprintf(stderr,"Not enough arguments\n"); + fprintf(stderr,"Syntax: INFILE OUTFILE\n"); exit(1); } + + config = psiconv_config_default(); + psiconv_config_read(NULL,&config); + if (!(fp = fopen(argv[1],"r"))) { perror("Can't open file"); exit(1); } - if (!(buf=psiconv_buffer_new(0))) { + if (!(buf=psiconv_buffer_new())) { perror("Can't allocate buf"); exit(1); } @@ -45,16 +55,18 @@ exit(1); } fclose(fp); - if ((psiconv_parse(buf,&psionfile))) { + if ((psiconv_parse(config,buf,&psionfile))) { fprintf(stderr,"Parse error\n"); exit(1); } + psiconv_buffer_free(buf); buf = NULL; - if (psiconv_write(&buf,psionfile)) { - fprintf(stderr,"Parse error\n"); + if (psiconv_write(config,&buf,psionfile)) { + fprintf(stderr,"Generate error\n"); exit(1); } + psiconv_free_file(psionfile); if (!(fp = fopen(argv[2],"w"))) { perror("Can't open file"); exit(1); @@ -63,5 +75,7 @@ perror("Can't fwrite file"); exit(1); } + fclose(fp); + psiconv_buffer_free(buf); exit(0); }