From 34e23a4ba5b48fab8acf2a0274b3b1e22d013073 Mon Sep 17 00:00:00 2001 From: n-a-c-h <> Date: Fri, 7 Oct 2005 04:02:06 +0000 Subject: [PATCH] Removed dangerous checking of enviroment variable for user's home path. --- zsnes/src/linux/zfilew.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/zsnes/src/linux/zfilew.c b/zsnes/src/linux/zfilew.c index 993ac7ea..33a58e98 100644 --- a/zsnes/src/linux/zfilew.c +++ b/zsnes/src/linux/zfilew.c @@ -36,6 +36,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. #include #include #include +#include #else #include #include @@ -466,16 +467,16 @@ char zcfgdir[1024]; void obtaindir() { - char *homedir = 0; + struct passwd *userinfo; DIR *tmp; - if ((homedir = (char *)getenv("HOME")) == 0) + if ((userinfo = getpwuid(getuid()))) { - getcwd(zcfgdir, ZCFG_DIR_LEN); + strcpy(zcfgdir, userinfo->pw_dir); } else { - strcpy(zcfgdir, homedir); + getcwd(zcfgdir, ZCFG_DIR_LEN); } strcat(zcfgdir, ZCFG_DIR); tmp = opendir(zcfgdir);