RFR: 8343802: Prevent NULL usage backsliding [v6]
Nizar Benalla
nbenalla at openjdk.org
Mon Feb 10 15:24:13 UTC 2025
> Please review this patch to add a test that checks the hotspot sources and test files for usages of NULL.
> It scans files in those directories, filtering out certain files as well as all `.c`, `.java`, `.class`, `.jar` and `.zip` files in test sources.
>
> Before adding line 86 and excluding `os_windows.cpp`, the test failed with:
>
>
> Error: 'NULL' found in /w/jdk/src/hotspot/os/windows/os_windows.cpp at line 4436:
> HMODULE hModule = NULL;
> Error: 'NULL' found in /w/jdk/src/hotspot/os/windows/os_windows.cpp at line 4437:
> GetModuleHandleEx(GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT, NULL, &hModule);
> java.lang.RuntimeException: Found usage of 'NULL' in source files. See errors above.
> at TestNoNULL.main(TestNoNULL.java:73)
> at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
> at java.base/java.lang.reflect.Method.invoke(Method.java:565)
> at com.sun.javatest.regtest.agent.MainActionHelper$AgentVMRunnable.run(MainActionHelper.java:333)
> at java.base/java.lang.Thread.run(Thread.java:1447)
Nizar Benalla has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains eight additional commits since the last revision:
- pass an empty set the method rather than a boolean
better exception handling/message when encountering a binary file
- Merge remote-tracking branch 'upstream/master' into NULL-Checking-in-hotspot
- filter out `.zip` files
- Merge remote-tracking branch 'upstream/master' into NULL-Checking-in-hotspot
- trivial change, if .java files are filtered out then so should .class files
- revert to the original regex and remove the exclusion of os_windows.cpp
- update based on feedback
- Add a test to prevent NULL backsliding
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/23466/files
- new: https://git.openjdk.org/jdk/pull/23466/files/99577488..2112c863
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=23466&range=05
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=23466&range=04-05
Stats: 1899 lines in 99 files changed: 872 ins; 628 del; 399 mod
Patch: https://git.openjdk.org/jdk/pull/23466.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/23466/head:pull/23466
PR: https://git.openjdk.org/jdk/pull/23466
More information about the hotspot-dev
mailing list