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:
committed by
Carlos R. Mafra
parent
7b317a5fba
commit
d2d5297a1e
@@ -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;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|||||||
@@ -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;
|
||||||
|
|||||||
@@ -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);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user