RFR 9: 8081567 : java/lang/ProcessHandle/InfoTest.java failed Cannot run program "whoami"
Roger Riggs
Roger.Riggs at Oracle.com
Wed Jun 3 22:13:58 UTC 2015
Hi Ivan,
Thanks for the cleanup suggestions.
Roger
On 6/3/2015 5:58 PM, Ivan Gerasimov wrote:
> Thanks!
>
> ------------------
> test/java/lang/ProcessHandle/InfoTest.java
> ------------------
> Looks good
>
>
> ------------------
> src/java.base/windows/native/libjava/ProcessHandleImpl_win.c
> ------------------
> The changes look good to me!
> I guess it does have more sense to use StringSID if the length of user
> name of domain exceeds 256 chars.
>
>>
>> Corrections updated in place:
>> http://cr.openjdk.java.net/~rriggs/webrev-whoami-8081567/
>>
>>> To be extra-safe we could check GetLastError() for ERROR_NONE_MAPPED
>>> and in such rare cases allocate the buffers dynamically.
>> I don't see that NONE_MAPPED is associated with the output buffers.
>>
>
> Yes, my mistake. That's output value of domainLen and nameLen that
> have to be analyzed to detect 'buffer is too small' condition.
> But I think, what you have is fine.
>
>
> A couple of minor nits.
> I would be just a little bit happier, if it were
> 397 WCHAR domain[255 + 1 + 255 + 1]; // large enough to concat
> with '/' and name
> 398 WCHAR name[255 *+ 1*];
> 399 DWORD domainLen = *sizeof(domain) - sizeof(name)*;
>
> Otherwise, we would never use the last char of 'domain' :-)
>
> You may want to remove the extra space in the signature of
> procToUser(_ ), in both the forward declaration and definition.
>
> Sincerely yours,
> Ivan
>
More information about the core-libs-dev
mailing list