From 8e94fbf3051ce31e4740cea12bcd794d4c29454d Mon Sep 17 00:00:00 2001
From: Adam Gundy <arg@cyberscience.com>
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';
-- 
GitLab