On Mon, 4 Mar 2024 21:19:26 GMT, Elif Aslan <[email protected]> wrote:
> This change is intended to address the segmentation fault issue that occurs
> when jspawnhelper is called without arguments, and it includes an updated
> test to verify the behavior in such cases.
>
> Existing tests passes since it does not check behavior without args.
> After test update the test fails without
>
> if (argc != 2) {
> shutItDown();
> }
>
> code block
>
>> Test results: failed: 1
>> Report written to
>> /home/ec2-user/moe/ws/openjdk/jdk/build/linux-x86_64-server-fastdebug/test-results/jtreg_test_jdk_java_lang_ProcessBuilder_JspawnhelperProtocol_java/html/report.html
>> Results written to
>> /home/ec2-user/moe/ws/openjdk/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_java_lang_ProcessBuilder_JspawnhelperProtocol_java
>> Error: Some tests failed or other problems occurred.
>> Finished running test
>> 'jtreg:test/jdk/java/lang/ProcessBuilder/JspawnhelperProtocol.java'
>> Test report is stored in
>> build/linux-x86_64-server-fastdebug/test-results/jtreg_test_jdk_java_lang_ProcessBuilder_JspawnhelperProtocol_java
>>
>> ==============================
>> Test summary
>> ==============================
>> TEST TOTAL PASS FAIL ERROR
>>
>> jtreg:test/jdk/java/lang/ProcessBuilder/JspawnhelperProtocol.java
>> >> 1 0 1 0
>> >> <<
>> ==============================
>> TEST FAILURE
>
>
>
> after added the code block back
>
> if (argc != 2) {
> shutItDown();
> }
>
>
> updated test passes
>
>
> lang/ProcessBuilder/JspawnhelperProtocol.d:/home/ec2-user/moe/ws/openjdk/jdk/test/jdk/java/lang/ProcessBuilder:/home/ec2-user/moe/ws/openjdk/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_java_lang_ProcessBuilder_JspawnhelperProtocol_java/classes/0/test/lib
> \\
> -Xmx768m \\
> -XX:MaxRAMPercentage=1.04167 \\
> -Dtest.boot.jdk=/home/ec2-user/moe/soft/jdk/jdk-21 \\
>
> -Djava.io.tmpdir=/home/ec2-user/moe/ws/openjdk/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_java_lang_ProcessBuilder_JspawnhelperProtocol_java/tmp
> \\
> -ea \\
> -esa \\
>
> -Djava.library.path=/home/ec2-user/moe/ws/openjdk/jdk/build/linux-x86_64-server-fastdebug/images/test/jdk/jtreg/native
> \\
> com.sun.javatest.regtest.agent.MainWrapper
> /home/ec2-user/moe/ws/openjdk/jdk/build/linux-x86_64-server-fastdebug/test-support/jtreg_test_jdk_java_lang_ProcessBuilder_JspawnhelperProtocol_java/java/lang/ProcessBuilder/JspawnhelperPr...
The change in jspawnhelper looks good.
I think it would be simpler to have a separate
`jdk/java/lang/ProcessBuilder/JspawnhelperMisuse.java` test that simply invokes
the `jspawnhelper` and verifies the proper message is printed. It would be more
straightforward than trying to fit the _protocol_ test? Plus, we can test 0, 1,
3, 4 args, not only 0 args in that test, and we can also test 2 args with bad
format.
-------------
PR Review: https://git.openjdk.org/jdk/pull/18112#pullrequestreview-1916529453