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