Skip to content
Snippets Groups Projects
Commit 61c9cadf authored by rswindell's avatar rswindell
Browse files

read_attr_cfg() will no longer error out if fewer than MIN_COLORS are defined

in the file (uses default attribute of high intensity white). Allows upgrade
from v2.x without overwriting attr.cfg.
parent 804262dc
Branches
Tags
No related merge requests found
...@@ -429,6 +429,12 @@ BOOL read_attr_cfg(scfg_t* cfg, char* error) ...@@ -429,6 +429,12 @@ BOOL read_attr_cfg(scfg_t* cfg, char* error)
return(FALSE); return(FALSE);
} }
FREE_AND_NULL(cfg->color); FREE_AND_NULL(cfg->color);
if((cfg->color=malloc(MIN_COLORS))==NULL) {
sprintf(error,"Error allocating memory (%u bytes) for colors"
,MIN_COLORS);
return(FALSE);
}
memset(cfg->color,LIGHTGRAY|HIGH,MIN_COLORS);
for(cfg->total_colors=0;!feof(instream) && !ferror(instream);cfg->total_colors++) { for(cfg->total_colors=0;!feof(instream) && !ferror(instream);cfg->total_colors++) {
if(readline(&offset,str,4,instream)==NULL) if(readline(&offset,str,4,instream)==NULL)
break; break;
...@@ -437,11 +443,13 @@ BOOL read_attr_cfg(scfg_t* cfg, char* error) ...@@ -437,11 +443,13 @@ BOOL read_attr_cfg(scfg_t* cfg, char* error)
cfg->color=p; cfg->color=p;
cfg->color[cfg->total_colors]=attrstr(str); cfg->color[cfg->total_colors]=attrstr(str);
} }
#if 0 /* Need to support v2.x attr.cfg with fewer colors */
if(cfg->total_colors<MIN_COLORS) { if(cfg->total_colors<MIN_COLORS) {
sprintf(error,"Less than MIN_COLORS (%lu<%u) defined in %s" sprintf(error,"Less than MIN_COLORS (%lu<%u) defined in %s"
,cfg->total_colors,MIN_COLORS,fname); ,cfg->total_colors,MIN_COLORS,fname);
return(FALSE); return(FALSE);
} }
#endif
fclose(instream); fclose(instream);
return(TRUE); return(TRUE);
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment