On Thu, 4 May 2023 09:17:05 GMT, Adam Sotona wrote:
>> libjli/java.c's SelectVersion method receives argc and argv but ignores argc
>> in some circumstances an instead checks if *argv == 0 in its while loop,
>> which results in a segmentation fault if the provided array is not NULL
>>
On Thu, 4 May 2023 09:17:05 GMT, Adam Sotona wrote:
>> libjli/java.c's SelectVersion method receives argc and argv but ignores argc
>> in some circumstances an instead checks if *argv == 0 in its while loop,
>> which results in a segmentation fault if the provided array is not NULL
>>
On Thu, 4 May 2023 07:19:39 GMT, Adam Sotona wrote:
>> src/java.base/share/native/libjli/java.c line 1212:
>>
>>> 1210: *pret = 0;
>>> 1211:
>>> 1212: while (argc > 0 && *(arg = *argv) == '-') {
>>
>> AFAICS this loop terminates at line 1388 and nowhere in the loop body does
>> argc
> libjli/java.c's SelectVersion method receives argc and argv but ignores argc
> in some circumstances an instead checks if *argv == 0 in its while loop,
> which results in a segmentation fault if the provided array is not NULL
> terminated.
>
> This patch counts down argc in the while loops