Then, you'd rather mark it as false-positive in Coverity interface rather than adding redundant and useless check.
Or, if Coverity supports it, annotate code. The issue here is Coverity, not the code. On Fri, 2012-09-28 at 11:34 +0200, Hermès BÉLUSCA - MAÏTO wrote: > Hi ! > > It's an attempt to say to Coverity that the NotifyChange variable will NEVER > be NULL after the allocation (as explained in the comment), because of the > fact that the code uses POOL_RAISE_IF_ALLOCATION_FAILURE. Indeed, Coverity > expected a "check against NULL and fail if it is" before the usage of the > NotifyChange variable and therefore warned about its usage without checking > against NULL, because it's dereferenced just after the allocation call. > Coverity couldn't know what the usage of the POOL_RAISE_IF_ALLOCATION_FAILURE > is for. In conclusion, the aim of the assert is to remove the Coverity > warning without adding code-behaviour modification. > > Hermès. > > > -----Message d'origine----- > De : [email protected] [mailto:[email protected]] De la > part de Pierre Schweitzer > Envoyé : vendredi 28 septembre 2012 09:57 > À : [email protected] > Objet : Re: [ros-dev] [ros-diffs] [hbelusca] 57400: [NTOSKRNL] Coverity code > defects fixes : - Cache: CID 701441 - Config: CIDs 716570, 716669, 716760 - > Dbgk: Kdbg: CIDs 716571, 515128/9, 500432 - Ex: CIDs 500156/7, 515122, > 716200/... > > What's the purpose of such ASSERT? > > > Modified: trunk/reactos/ntoskrnl/fsrtl/notify.c > > URL: > http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/fsrtl/notify.c?rev=57400&r1=57399&r2=57400&view=diff > > > ============================================================================== > > --- trunk/reactos/ntoskrnl/fsrtl/notify.c [iso-8859-1] (original) > > +++ trunk/reactos/ntoskrnl/fsrtl/notify.c [iso-8859-1] Thu Sep 27 > 17:16:31 2012 > > @@ -586,6 +586,13 @@ > > /* Allocate new notification */ > > NotifyChange = ExAllocatePoolWithTag(PagedPool | > POOL_RAISE_IF_ALLOCATION_FAILURE, > > sizeof(NOTIFY_CHANGE), 'FSrN'); > > + > > + /* > > + * If NotifyChange == NULL then an > > + * exception was already raised. > > + */ > > + ASSERT(NotifyChange != NULL); > > + > > RtlZeroMemory(NotifyChange, sizeof(NOTIFY_CHANGE)); > > > > /* Set basic information */ > > > -- Pierre Schweitzer <[email protected]> System Administrator ReactOS Foundation
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ Ros-dev mailing list [email protected] http://www.reactos.org/mailman/listinfo/ros-dev
