From 0b27c0c9a08ac4fd23a8753f2a3ba8672cd94497 Mon Sep 17 00:00:00 2001 From: Evan Gates Date: Wed, 5 Oct 2016 15:37:34 -0700 Subject: [PATCH] find: estrdup before basename "The basename() function may modify the string pointed to by path..." Thanks POSIX Laslo: Changed the style a bit --- find.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/find.c b/find.c index 5f75735..fb6f21e 100644 --- a/find.c +++ b/find.c @@ -229,7 +229,14 @@ static struct { static int pri_name(struct arg *arg) { - return !fnmatch((char *)arg->extra.p, basename(arg->path), 0); + int ret; + char *path; + + path = estrdup(arg->path); + ret = !fnmatch((char *)arg->extra.p, basename(path), 0); + free(path); + + return ret; } static int