 
                            ...
| Code Block | ||
|---|---|---|
| 
 | ||
| 
...
size_t size = strlen(input_str);
if (size == SIZE_MAX) { /* test for limit of size_t */
  /* Handle Error */
}
str = malloc(size+1);
strcpy(str, input_str);
...
 | 
| Wiki Markup | 
|---|
| Note that in accordance with rule \[[MEM35-C|MEM35-C. Ensure that size arguments to memory allocation functions are correct]] the argument supplied to {{malloc()}} is checked to ensure a numeric overflow does not occur. | 
Compliant Solution
| Wiki Markup | 
|---|
| To correct this error, ensure the pointer returned by {{malloc()}} is not NULL. In addition to this rule, this should be done in accordance with rule \[[MEM32-C|MEM32-C. Detect and handle critical memory allocation errors]\]. | 
...