Bug: https://bugs.openjdk.java.net/browse/JDK-8210776
Webrev: http://cr.openjdk.java.net/~prr/8210776/

These changes are prompted by a mandate to use 'current' versions of imported sources. In this case we have been importing mostly header files from X11 and under other bugs (listed  in the JBS for this bug) they have been removed leaving just 5 files that are all from 'xwd' (X Window Dump) utility, which is now distributed standalone,
as the X.org sources have been split up.

These remaining files are all used exclusively by the java.awt.Robot API implementation for X11.

Things to note:

Since we don't seem to have updated these files in a long, long time, the change
in some of these files is relatively large.

The license file is renamed to reflect it is just for xwd. The build still picks this
up since it will copy any file it finds.

A statically declared function QueryColorMap was actually moved into a
separate file called robot_common.c so it could be used by some data transfer
implementation.

It turns out that such other usage was removed a very long time ago.
Somewhere around JDK 1.5, and certainly before JDK 1.6.
Not even the referenced file exists but the usage was removed even before then.
So I was able to delete robot_common.[ch]

There were a number of JDK modifications in multiVis.c, most of which appear
to be related to preventing memory leaks. Freeing resources did not matter to
'xwd' because it just captures a window and exits.
I have restored these and added a "JDK modifications" to each of them
to remove any doubt that they are needed for subsequent updates.

I also reported them 'up stream' - maybe they'll get taken there so we don't have
to do that again.

As well as building I ran all our automated tests on Ubuntu which makes a lot of
use of the Robot API. So I am reasonably confident this all works as before.
We do still have failures due to unstable tests, but the ones I saw I was able to
reproduce without these changes.

And there's no new regression test since we have that coverage and this
is just implementation.

-phil.







Reply via email to