On Thu, 11 Jan 2024 16:52:40 GMT, Matthias Baesken <[email protected]> wrote:

>> When running with fastdebug binaries we run intermittent into the issue 
>> below in
>> jtreg test 
>> java/awt/image/MultiResolutionImage/MultiResolutionImageObserverTest.java .
>> Seems we miss checking of successful HBITMAP creation before calling 
>> GetDIBits.
>> 
>>   HDC hBMDC = this->GetDC();
>>   HBITMAP hBM = ::CreateCompatibleBitmap(hBMDC, 1, 1);
>>   VERIFY(::GetDIBits(hBMDC, hBM, 0, 1, NULL, gpBitmapInfo, DIB_RGB_COLORS));
>> 
>> in awt_Win32GraphicsDevice.cpp . Thats why the releast of hBMDC / hBM fails 
>> as well at the end of the function causing the seond and third warning.
>> 
>> 
>> Sat Nov 18 17:29:23 CET 2023
>> 
>> *********************
>> AWT Assertion Failure
>> *********************
>> ::GetDIBits(hBMDC, hBM, 0, 1, 0, gpBitmapInfo, 0)
>> File 
>> 'e:\openjdk\openjdk-21u-windows_x86_64-dbg\jdk\src\java.desktop\windows\native\libawt\windows\awt_Win32GraphicsDevice.cpp',
>>  at line 184
>> GetLastError() is 57 : The parameter is incorrect.
>> 
>> Do you want to break into the debugger?
>> *********************
>> *********************
>> AWT Assertion Failure
>> *********************
>> ::DeleteObject(hBM)
>> File 
>> 'e:\openjdk\openjdk-21u-windows_x86_64-dbg\jdk\src\java.desktop\windows\native\libawt\windows\awt_Win32GraphicsDevice.cpp',
>>  at line 297
>> GetLastError() is 57 : The parameter is incorrect.
>> 
>> So it seems, we should have some additional checks/tracing.
>
> Matthias Baesken has updated the pull request incrementally with one 
> additional commit since the last revision:
> 
>   do not call CreateCompatibleBitmap if hBMDC is NULL, do not call GetDIBits 
> if hBM is NULL

I agree, maybe in that kind of headless environment it could make sense to not 
initialize screens. I'll play with it and hopefully come back with something on 
[JDK-8185862](https://bugs.openjdk.org/browse/JDK-8185862). At least it seems 
we have such an environment in our configuration, so I can test there. Let's 
close this PR.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/17197#issuecomment-1909421356

Reply via email to