joe/joe-3.1-terminate_buffer.patch
2009-10-26 15:55:32 +00:00

14 lines
520 B
Diff

Index: path.c
===================================================================
--- path.c.orig 2008-11-02 21:33:23.000000000 +0100
+++ path.c 2009-10-20 12:04:34.844305049 +0200
@@ -200,6 +200,8 @@ unsigned char *mktmp(unsigned char *wher
where = (unsigned char *)getenv("TEMP");
if (!where)
where = USTR _PATH_TMP;
+ if (strlen(where) > PATH_MAX+NAME_MAX)
+ where[PATH_MAX+NAME_MAX+1] = '\0';
namesize = zlen(where) + 16;
name = vsmk(namesize); /* [G.Ghibo'] we need to use vsmk() and not malloc() as