[LTP] [PATCH v2] tst_tmpdir: Do not SegFault when .needs_tmpdir was not set

Cyril Hrubis chrubis@suse.cz
Wed Jul 24 11:22:38 CEST 2024


Print TBROK message about the missing .needs_tmpdir flag instead.

Signed-off-by: Cyril Hrubis <chrubis@suse.cz>
---
v2: Fix warning about undefined tst_brk() this is an old library
    file hence we need tst_brkm().

 lib/tst_tmpdir.c | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/lib/tst_tmpdir.c b/lib/tst_tmpdir.c
index 1fb1bd698..7986f1bc0 100644
--- a/lib/tst_tmpdir.c
+++ b/lib/tst_tmpdir.c
@@ -358,6 +358,9 @@ char *tst_tmpdir_path(void)
 {
 	static char *tmpdir;
 
+	if (!TESTDIR)
+		tst_brkm(TBROK, NULL, ".needs_tmpdir must be set!");
+
 	if (tmpdir)
 		return tmpdir;
 
@@ -368,11 +371,16 @@ char *tst_tmpdir_path(void)
 
 char *tst_tmpdir_mkpath(const char *fmt, ...)
 {
-	size_t testdir_len = strlen(TESTDIR);
-	size_t path_len = testdir_len;
+	size_t testdir_len, path_len;
 	va_list va, vac;
 	char *ret;
 
+	if (!TESTDIR)
+		tst_brkm(TBROK, NULL, ".needs_tmpdir must be set!");
+
+	testdir_len = strlen(TESTDIR);
+	path_len = testdir_len;
+
 	va_start(va, fmt);
 	va_copy(vac, va);
 	path_len += vsnprintf(NULL, 0, fmt, va) + 2;
-- 
2.44.2



More information about the ltp mailing list