RFR: 8185862: AWT Assertion Failure in ::GetDIBits(hBMDC, hBM, 0, 1, 0, gpBitmapInfo, 0) 'awt_Win32GraphicsDevice.cpp', at line 185 [v9]

Alexey Ivanov aivanov at openjdk.org
Thu Mar 7 16:48:02 UTC 2024


On Thu, 7 Mar 2024 16:39:03 GMT, Alexey Ivanov <aivanov at openjdk.org> wrote:

>> Christoph Langer 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 14 additional commits since the last revision:
>> 
>>  - declare variable hasDisplays final
>>  - Merge branch 'master' into JDK-8185862
>>  - load awt.dll before display check
>>  - Change implementation of headless determination on Windows
>>  - Merge branch 'master' into JDK-8185862
>>  - Reflect display detection in java.awt.GraphicsEnvironment::isHeadless()
>>  - Merge branch 'master' into JDK-8185862
>>  - Get rid of global variables and restore old handling wrt calling ::GetDIBits
>>  - Merge branch 'master' into JDK-8185862
>>  - Little cleanup
>>  - ... and 4 more: https://git.openjdk.org/jdk/compare/dcf260b9...002fba2d
>
> src/java.desktop/windows/native/libawt/windows/awt_Win32GraphicsDevice.cpp line 182:
> 
>> 180:     gpBitmapInfo->bmiHeader.biBitCount = 0;
>> 181:     HDC hBMDC = this->GetDC();
>> 182:     VERIFY(hBMDC != NULL);
> 
> You may want to leave `VERIFY(hBMDC != NULL)`… just in case.

If you don't add the assertions for `hBMDC` and `hBM`, you should revert all the changes to `awt_Win32GraphicsDevice.cpp`.

At the moment, two lines are removed from `initScreens`.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/17614#discussion_r1516495998


More information about the client-libs-dev mailing list