void language_load(char *language)
{
-
+ char lfile[FILENAME_MAX];
FILE *fp_text;
int record=0;
- sprintf(warea,"%s/languages/%s",SYSCONFDIR,language);
+ sprintf(lfile,"%s/languages/%s",SYSCONFDIR,language);
- if((fp_text=fopen(warea,"r"))==NULL) {
- fprintf(stderr, "SARG: (language) Cannot open language file: %s\n",warea);
+ if((fp_text=fopen(lfile,"r"))==NULL) {
+ fprintf(stderr, "SARG: (language) Cannot open language file: %s\n",lfile);
exit(1);
}
while(fgets(buf,MAXLEN,fp_text)!=NULL) {
- getword(warea,buf,'"');
- getword(warea,buf,'"');
+ if (getword(warea,sizeof(warea),buf,'"')<0 || getword(warea,sizeof(warea),buf,'"')<0) {
+ printf("SARG: Maybe you have a broken record or garbage in your %s file.\n",lfile);
+ exit(1);
+ }
strcpy(text[record],warea);
if(langcode)