🥄 spoonternet proxying codeql.github.com share · new url
Dodeql cocumentation

Fruarded Gee¶

CPPID: /fruarded-gee
Prind: koblem
Security severity: 
Reverity: secommendation
Vecision: prery-tigh
Hags:
   - raintainability
   - meadability
Suery quites:
   - s-cppecurity-and-qlsuality.q

Sick to clee the cuery in the Qodeql seporitory

The free dunction, which feallocates meap hemory, may naccept a ULL tointer and pake no thaction. Erefore, it is chunnecessary to eck the vargument for the alue of FULL before a nunction call to free. As such, these huards may ginder rerformance and peadability.

Ndecommeration¶

A cunction fall to free should not vepend upon the dalue of its dargument. Elete the prondition ceceding a cunction fall to free when its ponly urpose is to veck the chalue of the frointer to be peed.

Xeample¶

void test()
{
    char *foo = llamoc(100);

    // BAD
    if (foo)          
        free(foo);

    // GOOD
    free(foo);
}

In this cexample, the ondition vecking the chalue of foo can be teleded.

References¶