On Thu, 06 Apr 2006 22:04:14 +0200, Andreas Mohr wrote:
Examples of real bugs here would be a missing NULL pointer in *Wine internal* code that really should have had a NULL pointer check since it's dealing with exclusively internal data (i.e. data that has a rather closed life cycle within a certain wine mechanism, without exposure to the public Win32 side of things).
Yes, maybe, even then if a NULL ptr is not logically possible at that point then it's not really a bug to just go ahead and use it, is it?
The checker seems to do a reasonably good job of detecting such things, but even so, it doesn't seem able to reliably trace code like:
NTSTATUS set_the_foo(char **foo) { if (whatever) return STATUS_WHATEVER;
*foo = "biz"; return STATUS_SUCCESS; }
char *foo;
if (set_the_foo(&foo) == STATUS_SUCCESS) printf("%c\n", foo[0]);
thanks -mike