github / github/codeql

Java: unreasonable flow

未關閉
#10,828 13 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
Java question
主要語言
CodeQL
星號
10.1k
分支
2.1k
平均合併
2 天 15 小時
30 天內合併 PR
141

描述

**PostUpdateNode** or **ThisAcess** may flow to the wrong **ClassInstanceExpr** of the class.

Which may lead to wrong result and slow down the analyze.

How can i fix it?

for example **this.data** will flow to **new RealSource(data);**

```
package WrongPath;

public class RealSource {
private String data;

public RealSource(String data) {
this.data = data;
}

public String getData() {
return data;
}
}

```

```
package WrongPath;

import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;

public class FakeSource {
public FakeSource() {
String data = "";
RealSource realSource = new RealSource(data);
try {
URL url = new URL(realSource.getData());
URLConnection urlConnection = url.openConnection();
urlConnection.connect();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```

貢獻指南

開啟貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。