[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