mirror of
https://github.com/github/codeql.git
synced 2025-12-18 01:33:15 +01:00
40 lines
526 B
C#
40 lines
526 B
C#
using System;
|
|
|
|
class Foo
|
|
{
|
|
Object o = new Object(), o2 = new Object();
|
|
|
|
void f(Object o2)
|
|
{
|
|
}
|
|
|
|
void test()
|
|
{
|
|
lock (o)
|
|
{
|
|
o = new Foo(); // BAD
|
|
}
|
|
|
|
lock (o)
|
|
{
|
|
f(o = null); // BAD
|
|
}
|
|
|
|
lock (o2)
|
|
{
|
|
o = new Foo(); // GOOD
|
|
}
|
|
|
|
lock (o2)
|
|
{
|
|
GetNewObject(out o2); // BAD
|
|
}
|
|
}
|
|
|
|
static void GetNewObject(out object o)
|
|
{
|
|
o = new Object();
|
|
}
|
|
}
|
|
|