[
https://issues.apache.org/jira/browse/TS-1120?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=13216805#comment-13216805
]
Alan M. Carroll commented on TS-1120:
-
Examples:
@code
foo bar; // value.
ink_zero(bar); // zero bar.
foo *bar; // pointer.
ink_zero(bar); // WRONG - makes the pointer @a bar zero.
ink_zero(*bar); // zero what bar points at.
foo bar[ZOMG]; // Array of structs.
ink_zero(bar); // Zero all structs in array.
foo *bar[ZOMG]; // array of pointers.
ink_zero(bar); // zero all pointers in the array.
@endcode
Use ink_zero / ats_zero instead of calling memset when zeroing a variable or
member.
Key: TS-1120
URL: https://issues.apache.org/jira/browse/TS-1120
Project: Traffic Server
Issue Type: Improvement
Components: Cleanup
Affects Versions: 3.1.2
Reporter: Alan M. Carroll
Priority: Minor
Labels: cleanup, memory, safety
Fix For: sometime
We have an inline template, ink_zero(foo) which does memset(foo, 0,
sizeof(foo)). Because this is easy to mess up with a typo, the inline
template should be used for safety and clarity. Also, the template should be
renamed ats_zero to be consistent.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira