<AWT Dev> [JDK-8171000]Robot.createScreenCapture() crashes in wayland mode
krishna.addepalli at oracle.com
Sun Feb 4 04:13:42 UTC 2018
I'm aware of the C99 thing, so I looked around in the file before making those changes. For example, within the same function that I modified, I found variable declarations inside the for loop:
for (reg = (image_region_type *) first_in_list( regions); reg;
reg = (image_region_type *) next_in_list( regions))
struct my_XRegion *vis_reg;
And also, in couple of other places within the same file, the some variables were declared within if blocks. That's when I moved the variable declarations to the point of use.
From: Sergey Bylokhov
Sent: Saturday, February 3, 2018 1:27 PM
To: Krishna Addepalli <krishna.addepalli at oracle.com>; awt-dev at openjdk.java.net
Subject: Re: <AWT Dev> [JDK-8171000]Robot.createScreenCapture() crashes in wayland mode
The change of local types declarations looks reasonable, but I am not sure that C99 will be supported by all compilers which will be used to build jdk where this fix will be used.
I suggest to simplify the fix and add only one null check to it.
On 01/02/2018 04:06, Krishna Addepalli wrote:
> Hi All,
> Please review a fix for JDK-8171000:
> Webrev: http://cr.openjdk.java.net/~kaddepalli/8171000/webrev00/
> The crash happens since XGetImage can return NULL in case of Wayland,
> which doesnot permit reading screen pixels outside the owning window.
> Added a null check to prevent the same, and also refactored and
> removed unnecessary code to make the function simpler.
Best regards, Sergey.
More information about the awt-dev