Skip to content
Snippets Groups Projects
Commit 3abf44f1 authored by Martin Fuchs's avatar Martin Fuchs Committed by Alexandre Julliard
Browse files

Optimization: null terminate string buffers instead of filling them

completely with 0.
parent d98c36c1
No related branches found
No related tags found
No related merge requests found
...@@ -418,10 +418,11 @@ UINT SHELL_FindExecutable(LPCWSTR lpPath, LPCWSTR lpFile, LPCWSTR lpOperation, ...@@ -418,10 +418,11 @@ UINT SHELL_FindExecutable(LPCWSTR lpPath, LPCWSTR lpFile, LPCWSTR lpOperation,
WCHAR wBuffer[256]; /* Used to GetProfileString */ WCHAR wBuffer[256]; /* Used to GetProfileString */
UINT retval = 31; /* default - 'No association was found' */ UINT retval = 31; /* default - 'No association was found' */
WCHAR *tok; /* token pointer */ WCHAR *tok; /* token pointer */
WCHAR xlpFile[256] = {0}; /* result of SearchPath */ WCHAR xlpFile[256]; /* result of SearchPath */
TRACE("%s\n", (lpFile != NULL) ? debugstr_w(lpFile) : "-"); TRACE("%s\n", (lpFile != NULL) ? debugstr_w(lpFile) : "-");
xlpFile[0] = '\0';
lpResult[0] = '\0'; /* Start off with an empty return string */ lpResult[0] = '\0'; /* Start off with an empty return string */
if (key) *key = '\0'; if (key) *key = '\0';
...@@ -708,19 +709,23 @@ static UINT execute_from_key(LPWSTR key, LPCWSTR lpFile, void *env, LPCWSTR szCo ...@@ -708,19 +709,23 @@ static UINT execute_from_key(LPWSTR key, LPCWSTR lpFile, void *env, LPCWSTR szCo
SHELL_ExecuteW32 execfunc, SHELL_ExecuteW32 execfunc,
LPSHELLEXECUTEINFOW psei, LPSHELLEXECUTEINFOW psei_out) LPSHELLEXECUTEINFOW psei, LPSHELLEXECUTEINFOW psei_out)
{ {
WCHAR cmd[1024] = {0}; WCHAR cmd[1024];
LONG cmdlen = sizeof(cmd); LONG cmdlen = sizeof(cmd);
UINT retval = 31; UINT retval = 31;
cmd[0] = '\0';
/* Get the application for the registry */ /* Get the application for the registry */
if (RegQueryValueW(HKEY_CLASSES_ROOT, key, cmd, &cmdlen) == ERROR_SUCCESS) if (RegQueryValueW(HKEY_CLASSES_ROOT, key, cmd, &cmdlen) == ERROR_SUCCESS)
{ {
static const WCHAR wCommand[] = {'c','o','m','m','a','n','d',0}; static const WCHAR wCommand[] = {'c','o','m','m','a','n','d',0};
static const WCHAR wDdeexec[] = {'d','d','e','e','x','e','c',0}; static const WCHAR wDdeexec[] = {'d','d','e','e','x','e','c',0};
LPWSTR tmp; LPWSTR tmp;
WCHAR param[256] = {0}; WCHAR param[256];
LONG paramlen = sizeof(param); LONG paramlen = sizeof(param);
param[0] = '\0';
/* Get the parameters needed by the application /* Get the parameters needed by the application
from the associated ddeexec key */ from the associated ddeexec key */
tmp = strstrW(key, wCommand); tmp = strstrW(key, wCommand);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment