#include #include #include "memman.c" #include "strlite.c" TSTR_LIST ls_origin=NULL; TSTR_LIST ls_new=NULL; static void load_error_msg(int err,char *filename) { switch (err) { case -1: puts ("Source or target file not found");break; case -2: puts ("Unexcepted EOF");break; case -3: puts ("Internal error in strlite.c");break; default: printf("Error in string table at line %d.\n",err); } printf("File:%s\n",filename); exit(1); } void load_lists(char *filename1,char *filename2) { int err; err=load_string_list(&ls_new,filename1); if (err) load_error_msg(err,filename1); err=load_string_list(&ls_origin,filename2); if (err) load_error_msg(err,filename2); } char *create_backup(char *filename) { char *c,*d; c=getmem(strlen(filename)+5);strcpy(c,filename); d=strrchr(c,'.');if (d==NULL) d=strchr(c,0); strcpy(d,".bak"); remove(c); rename(filename,c); return c; } void spoj_stringtable() { int i; int cnt=str_count(ls_new); for(i=0;i