- if (argc!=3 || argv[1][0]=='-' || strncmp(argv[2],"-o",2))
- { fputs("usage: minimise <input> -o<output\n",stderr); exit(8); }
+ if (argc==3) {
+ input_file= argv[1];
+ if (strncmp(argv[2],"-o",2)) badusage(); best_file= argv[2]+2;
+ final_file= 0;
+ } else if (argc==4) {
+ input_file= argv[1];
+ if (strncmp(argv[2],"-i",2)) badusage(); best_file= argv[2]+2;
+ if (strncmp(argv[3],"-o",2)) badusage(); final_file= argv[3]+2;
+ } else {
+ badusage();
+ }
+ if (argv[1][0]=='-') badusage();
+
+ if (asprintf(&best_file_tmp,"%s.new",best_file) <= 0) diee("asprintf");
+ if (final_file)
+ if (asprintf(&final_file_tmp,"%s.new",final_file) <= 0) diee("asprintf");