EN JP CN

CS.NRE.CHECK.MUST

CS.NRE.CHECK.MUST

null について適切にチェックされたオブジェクト参照値は、明示的に、またはそれを null についてチェックせずに逆参照する可能性がある関数を呼び出すことによって、逆参照されます。

脆弱性とリスク

null オブジェクト参照の逆参照は、一部のオペレーティングシステムでのアプリケーションのクラッシュや実行時例外のスローを引き起こす実行時の重大な問題です。

例 1

1                  public class A {
2                      public void foo() {
3                          A a = new A();
4                          if (a == null)
5                              a.foo();
6                      }
7                  }

変数 'a' では、Klocwork は 5 行目で指摘レポート (CS.NRE.CHECK.MUST) を生成します。変数 'a' は 4 行目で null 値と比較されるため、5 行目で逆参照されるときに、null であることが想定される可能性があります。