...
| Code Block | ||
|---|---|---|
| ||
char msg[100];
/* ... */
void report_error(const char *error_msg) {
char msg[80];
/* ... */
/* Assume error_msg isn't too long */
strcpy(msg, error_msg);
return;
}
int main(void) {
/* ... */
/* Ensure error_msg isn't too long */
if (strlen( error_msg) >= sizeof( msg)) {
error_msg[sizeof(msg) - 1] = '\0';
}
report_error( error_msg); /* oops! */
/* ... */
}
|
...
| Code Block | ||
|---|---|---|
| ||
char system_msg[100];
/* ... */
void report_error(const char *error_msg) {
char default_msg[80];
/* ... */
/* Assume error_msg isn't too long */
strcpy(system_msg, error_msg);
return;
}
int main(void) {
/* ... */
/* Ensure error_msg isn't too long */
if (strlen( error_msg) >= sizeof( system_msg)) {
error_msg[sizeof(msg) - 1] = '\0';
}
report_error( error_msg); /* good */
/* ... */
}
|
...