mirror of
https://github.com/tbamud/tbamud.git
synced 2026-02-18 09:31:45 +01:00
Resolve Wrestrict warnings on GCC 8.1.1 (#51)
* Fix several misleading indentation warnings on GCC 8.1.1 * Fix reliance on undefined strcpy/sprintf behavior (-Wrestrict warnings) The standard states that strcpy results in undefined behavior when the source and destination buffers overlap. I resolved this with a combination of memmove and strlen. Note that the resulting code is slightly less efficient. Similarly, sprintf's behavior is undefined when copying takes place between objects that overlap. I replaced most of these with a simple strcat, though one required a temp buffer. * Fix format in improved-edit.c to match surrounding code
This commit is contained in:
@@ -358,7 +358,9 @@ void parse_edit_action(int command, char *string, struct descriptor_data *d)
|
||||
s++;
|
||||
temp = *s;
|
||||
*s = '\0';
|
||||
sprintf(buf, "%s%4d: ", buf, (i - 1));
|
||||
char buf3[8];
|
||||
sprintf(buf3, "%4d: ", (i - 1));
|
||||
strcat(buf, buf3);
|
||||
strcat(buf, t);
|
||||
*s = temp;
|
||||
t = s;
|
||||
|
||||
Reference in New Issue
Block a user