The program name is used to set the name
of the file were the contents of data statements are written. The filename is extracted from the path and the suffix (if present) is replaced by .d.
This commit is contained in:
parent
0aa95f6015
commit
fbf86e8a78
@ -13,8 +13,25 @@ FILE *datfile;
|
||||
|
||||
initialize()
|
||||
{
|
||||
register char *cindex, *cptr ;
|
||||
|
||||
sprintf(tmpfname,"%s/abc%d",TMP_DIR,getpid());
|
||||
strcpy(datfname,program);
|
||||
/* Find the basename */
|
||||
/* Strip leading directories */
|
||||
cindex= (char *)0 ;
|
||||
for ( cptr=program ; *cptr ; cptr++ ) if ( *cptr=='/' ) cindex=cptr ;
|
||||
if ( !cindex ) cindex= program ;
|
||||
else {
|
||||
cindex++ ;
|
||||
if ( !*cindex ) {
|
||||
warning("Null program name, assuming \"basic\"") ;
|
||||
cindex= "basic" ;
|
||||
}
|
||||
}
|
||||
cptr=datfname ;
|
||||
while ( *cptr++ = *cindex++ ) ;
|
||||
/* Strip trailing suffix */
|
||||
if ( cptr>datfname+3 && cptr[-3]=='.' ) cptr[-3]=0 ;
|
||||
strcat(datfname,".d");
|
||||
yyin= fopen(inpfile,"r");
|
||||
emfile= fopen(outfile,"w");
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user