diff options
| author | Rich Felker <dalias@aerifal.cx> | 2018-10-11 14:27:15 -0400 | 
|---|---|---|
| committer | Rich Felker <dalias@aerifal.cx> | 2018-10-11 14:27:15 -0400 | 
| commit | 09a805a62307307230a31125425d0c2b0b6f332e (patch) | |
| tree | 7d5d333ca32f863be3cff411957b07578efa3ac7 | |
| parent | e2552581bc004f7dc5ee9ac220cad8abeae19bba (diff) | |
| download | musl-09a805a62307307230a31125425d0c2b0b6f332e.tar.gz | |
fix redundant computations of strlen in glob append function
len was already passed as an argument, so don't use strcat, and use
memcpy instead of strcpy.
| -rw-r--r-- | src/regex/glob.c | 7 | 
1 files changed, 5 insertions, 2 deletions
| diff --git a/src/regex/glob.c b/src/regex/glob.c index 98636295..3e1b034e 100644 --- a/src/regex/glob.c +++ b/src/regex/glob.c @@ -41,8 +41,11 @@ static int append(struct match **tail, const char *name, size_t len, int mark)  	if (!new) return -1;  	(*tail)->next = new;  	new->next = NULL; -	strcpy(new->name, name); -	if (mark) strcat(new->name, "/"); +	memcpy(new->name, name, len+1); +	if (mark) { +		new->name[len] = '/'; +		new->name[len+1] = 0; +	}  	*tail = new;  	return 0;  } | 
