SALバグのようです。コード:コード解析で_In_opt_パラメータの注釈が理解できませんか?
PAAFILEFILTER_PROTECTED_FILE curFile = NULL;
try
{
status = GetProtectedFile(FileIdInfo, instanceContext, &curFile);
if(!NT_SUCCESS(status))
{
TraceError("Can't GetProtectedFile with status: %!STATUS!\n", status);
leave;
}
...
finally
{
if(NT_SUCCESS(status))
{
LogMessage(AAFILEFILTER_FILE_UNPROTECTED, NULL, NULL, NULL, 0, (PUCHAR)FileIdInfo, sizeof(AAFILE_ID_INFORMATION));
}
else
{
TraceProtectedFile(curFile);
}
}
とコード考察を行TraceProtectedFile(curFile)
でくれC6102 - Using variable from failed function call
を与えます。しかし、プロトタイプ
_In_opt_ PAAFILEFILTER_PROTECTED_FILE protectedFile
_In_opt_ CAは、このような単純なものを扱うことができない場合undestandしません... "_In_opt_ is the same as _In_, except that the input parameter is allowed to be NULL and, therefore, the function should check for this."
を意味するが、それは
はあなたに同意します...それは、よりクリーンです。しかし、これはまだCAのバグです:) C6102は_In_opt_パラメーターIMHOのために決して上げてはいけません。 –