[PATCH v3 1/3] test/parser: Make parser_scandir() ignore files with path len less than dir

Javier Martinez Canillas javierm at redhat.com
Tue Jun 12 20:18:32 AEST 2018


Both the test files and directories added into the test harness are stored
into the same file list. So the parser_scandir() stub compares the absolute
file path of the files and the directory to scan, to know if a file belongs
to the directory.

Files whose absolute file path length isn't bigger than the directory to
scan should just be ignored, since it means they can't be from that dir.

Signed-off-by: Javier Martinez Canillas <javierm at redhat.com>
---

 test/parser/utils.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/test/parser/utils.c b/test/parser/utils.c
index 394efb3b209..c6d1a170a9b 100644
--- a/test/parser/utils.c
+++ b/test/parser/utils.c
@@ -325,6 +325,9 @@ int parser_scandir(struct discover_context *ctx, const char *dirname,
 		if (f->dev != ctx->device)
 			continue;
 
+		if (strlen(f->name) <= strlen(dirname))
+			continue;
+
 		filename = strrchr(f->name, '/');
 		if (!filename)
 			continue;
-- 
2.17.1



More information about the Petitboot mailing list