C28109

warning C28109: Variable cannot be held at the time function is called

The program is holding a resource that should not be held when it is calling this function. Typically, it indicates that the resource was unintentionally acquired twice. The Code Analysis tool reports this warning when resources are acquired and released in the same function.

Example

The following code example generates this warning:

ExAcquireResourceLite(resource, true);
...
ExAcquireResourceLite(resource, true);

The following code example avoids this warning:

ExAcquireResourceLite(resource, true);