2008/8/27 Nikolay Sivov bunglehead@gmail.com:
Markus Hitter wrote:
if (!attr || !attr->ObjectName) return STATUS_INVALID_PARAMETER;
Shouldn't this be splitted? It isn't safe to rely on evaluation order. Or is it a default compiler setting for us?
This is well defined in C. !attr will be evaluated first, and if it evaluates to true, the rest of the condition won't be evaluated. This is also known as short-circuit evaluation.