From 8e94fbf3051ce31e4740cea12bcd794d4c29454d Mon Sep 17 00:00:00 2001 From: Adam Gundy Date: Sun, 30 Mar 2003 01:35:07 +0000 Subject: [PATCH] Don't read uninitialized data when a '$' is found. --- files/profile.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/files/profile.c b/files/profile.c index 7005076c1a0..e13a7c7ad9b 100644 --- a/files/profile.c +++ b/files/profile.c @@ -120,7 +120,8 @@ static void PROFILE_CopyEntry( LPWSTR buffer, LPCWSTR value, int len, return; } - for (p = value; (*p && (len > 1)); *buffer++ = *p++, len-- ) + p = value; + while (*p && (len > 1)) { if ((*p == '$') && (p[1] == '{')) { @@ -140,6 +141,11 @@ static void PROFILE_CopyEntry( LPWSTR buffer, LPCWSTR value, int len, } p = p2 + 1; } + else + { + *buffer++ = *p++; + len--; + } } if (quote && (len > 1)) buffer--; *buffer = '\0';