[PATCH 01/14] perf tools: Make rm_rf to remove single file

From: Jiri Olsa
Date: Sun Feb 03 2019 - 10:30:30 EST


Let rm_rf remove file if it's provided by path.

Link: http://lkml.kernel.org/n/tip-whhp3ej5795l9dc86xfyyp74@xxxxxxxxxxxxxx
Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
---
tools/perf/util/util.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/tools/perf/util/util.c b/tools/perf/util/util.c
index 320b0fef249a..58b8d6a8bfbc 100644
--- a/tools/perf/util/util.c
+++ b/tools/perf/util/util.c
@@ -125,8 +125,14 @@ int rm_rf(const char *path)
char namebuf[PATH_MAX];

dir = opendir(path);
- if (dir == NULL)
- return 0;
+ if (dir == NULL) {
+ /*
+ * The path does not exist or is not directory,
+ * so there's no harm to try remove it. This way
+ * rm_rf will work over single file.
+ */
+ return unlink(path);
+ }

while ((d = readdir(dir)) != NULL && !ret) {
struct stat statbuf;
--
2.17.2