1
0
mirror of https://github.com/gryf/wmaker.git synced 2025-12-19 12:28:22 +01:00

Coverity: fix potential buffer overflow

This commit is contained in:
David Maciejak
2023-02-28 21:24:31 +08:00
committed by Carlos R. Mafra
parent 7b317a5fba
commit d2d5297a1e
4 changed files with 4 additions and 4 deletions

View File

@@ -615,7 +615,7 @@ static void menu_parser_condition_ifmacro(WMenuParser parser, Bool check_exists)
((!check_exists) && (macro != NULL)); ((!check_exists) && (macro != NULL));
} }
strcpy(parser->cond.stack[0].name, cmd_name); strncpy(parser->cond.stack[0].name, cmd_name, sizeof(parser->cond.stack[0].name) - 1);
parser->cond.stack[0].line = parser->line_number; parser->cond.stack[0].line = parser->line_number;
} }

View File

@@ -693,7 +693,7 @@ static void w_create_macro(WMenuParser parser, const char *name, WParserMacroFun
WParserMacro *macro; WParserMacro *macro;
macro = wmalloc(sizeof(*macro)); macro = wmalloc(sizeof(*macro));
strcpy(macro->name, name); strncpy(macro->name, name, sizeof(macro->name) - 1);
macro->function = handler; macro->function = handler;
macro->arg_count = -1; macro->arg_count = -1;
macro->next = parser->macros; macro->next = parser->macros;

View File

@@ -203,7 +203,7 @@ static WMPropList *makeWindowState(WWindow * wwin, WApplication * wapp)
command = GetCommandForWindow(win); command = GetCommandForWindow(win);
if (!command) { if (!command) {
if (wapp->app_icon && wapp->app_icon->command) { if (wapp->app_icon && wapp->app_icon->command) {
command = wmalloc(strlen(wapp->app_icon->command)); command = wmalloc(strlen(wapp->app_icon->command) + 1);
strcpy(command, wapp->app_icon->command); strcpy(command, wapp->app_icon->command);
} else } else
return NULL; return NULL;

View File

@@ -997,7 +997,7 @@ static void updateWorkspaceNames(WScreen *scr)
len = 0; len = 0;
for (i = 0; i < scr->workspace_count; i++) { for (i = 0; i < scr->workspace_count; i++) {
curr_size = strlen(scr->workspaces[i]->name); curr_size = strlen(scr->workspaces[i]->name);
strcpy(pos, scr->workspaces[i]->name); strncpy(pos, scr->workspaces[i]->name, sizeof(pos) - 1);
pos += (curr_size + 1); pos += (curr_size + 1);
len += (curr_size + 1); len += (curr_size + 1);
} }