[msconfig]
authorChristoph von Wittich <christoph_vw@reactos.org>
Sun, 19 Jan 2014 08:20:45 +0000 (08:20 +0000)
committerChristoph von Wittich <christoph_vw@reactos.org>
Sun, 19 Jan 2014 08:20:45 +0000 (08:20 +0000)
strsafe++

svn path=/trunk/; revision=61682

reactos/base/applications/msconfig/freeldrpage.c
reactos/base/applications/msconfig/precomp.h
reactos/base/applications/msconfig/systempage.c

index d1ed529..41f4e11 100644 (file)
@@ -33,15 +33,27 @@ LoadBootIni(WCHAR *szDrive, HWND hDlg)
     FILE * file;
     UINT length;
     LRESULT pos;
+    HRESULT hr;
 
-    wcscpy(szBuffer, szDrive);
-    wcscat(szBuffer, L"freeldr.ini");
+    hr = StringCbCopyW(szBuffer, sizeof(szBuffer), szDrive);
+    if (FAILED(hr))
+        return FALSE;
+
+    hr = StringCbCatW(szBuffer, sizeof(szBuffer), L"freeldr.ini");
+    if (FAILED(hr))
+        return FALSE;
 
     file = _wfopen(szBuffer, L"rt");
     if (!file)
     {
-        wcscpy(szBuffer, szDrive);
-        wcscat(szBuffer, L"boot.ini");
+        hr = StringCbCopyW(szBuffer, sizeof(szBuffer), szDrive);
+        if (FAILED(hr))
+            return FALSE;
+
+        hr = StringCbCatW(szBuffer, sizeof(szBuffer), L"boot.ini");
+        if (FAILED(hr))
+            return FALSE;
+            
         file = _wfopen(szBuffer, L"rt");
         if (!file)
             return FALSE;
@@ -137,7 +149,7 @@ FreeLdrPageWndProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
                 if (pos != LB_ERR)
                 {
                     LPARAM res = SendMessage((HWND)lParam, LB_GETITEMDATA, pos, 0);
-                    if (!res) //line is not a default one
+                    if (!res) /* line is not a default one */
                         SendMessage((HWND)lParam, LB_SETCURSEL, Settings.szDefaultPos, 0);
                     else
                         Settings.szDefaultPos = pos;
index 70af3be..5aea3aa 100644 (file)
@@ -11,6 +11,7 @@
 #include <tchar.h>
 #include <stdio.h>
 #include <shlobj.h>
+#include <strsafe.h>
 
 #include "msconfig.h"
 #include "resource.h"
index aad0b8c..bde2f5f 100644 (file)
@@ -23,9 +23,15 @@ LoadSystemIni(WCHAR * szPath, HWND hDlg)
     FILE* file;
     UINT length;
     TVINSERTSTRUCT insert;
+    HRESULT hr;
 
-    wcscpy(szBuffer, szPath);
-    wcscat(szBuffer, L"\\system.ini");
+    hr = StringCbCopyW(szBuffer, sizeof(szBuffer), szPath);
+    if (FAILED(hr))
+        return FALSE;
+
+    hr = StringCbCatW(szBuffer, sizeof(szBuffer), L"\\system.ini");
+    if (FAILED(hr))
+        return FALSE;
 
     file = _wfopen(szBuffer, L"rt");
     if (!file)