Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

8242559: Clean the "libawt_xawt" library from code for headless mode #101

Closed
wants to merge 2 commits into from

Conversation

mrserb
Copy link
Member

@mrserb mrserb commented Sep 9, 2020

This bug extracted from JDK-8240290[1]

The libawt_xawt.so library is used by the headful toolkit, but it still
has some code related to the headless mode, which could be deleted.

In the fix, the HEADLESS related code was removed, to prove that we did
not build this library in HEADLESS mode, I added "#error This " to all
library files(but some of them already has it)

[1] https://bugs.openjdk.java.net/browse/JDK-8240290

The old review request:
https://mail.openjdk.java.net/pipermail/awt-dev/2020-April/015881.html


Progress

  • Change must not contain extraneous whitespace
  • Commit message must refer to an issue
  • Change must be properly reviewed

Testing

Linux x32 Linux x64 Windows x64 macOS x64
Build ✔️ (1/1 passed) ✔️ (5/5 passed) ✔️ (2/2 passed) ✔️ (2/2 passed)
Test (tier1) ✔️ (9/9 passed) ❌ (1/9 failed) ✔️ (9/9 passed)

Failed test task

Issue

  • JDK-8242559: Clean the "libawt_xawt" library from code for headless mode

Reviewers

Download

$ git fetch https://git.openjdk.java.net/jdk pull/101/head:pull/101
$ git checkout pull/101

@bridgekeeper
Copy link

bridgekeeper bot commented Sep 9, 2020

👋 Welcome back serb! A progress list of the required criteria for merging this PR into master will be added to the body of your pull request. There are additional pull request commands available for use with this pull request.

@openjdk openjdk bot added the rfr Pull request is ready for review label Sep 9, 2020
@openjdk
Copy link

openjdk bot commented Sep 9, 2020

@mrserb The following label will be automatically applied to this pull request: awt.

When this pull request is ready to be reviewed, an RFR email will be sent to the corresponding mailing list. If you would like to change these labels, use the /label (add|remove) "label" command.

@openjdk openjdk bot added the awt client-libs-dev@openjdk.org label Sep 9, 2020
@mlbridge
Copy link

mlbridge bot commented Sep 9, 2020

Webrevs

Copy link
Contributor

@prrace prrace left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Clearly these are there to prevent mistakes. So they add value at a tiny build time cost.
I don't see the point of removing them.

@mrserb
Copy link
Member Author

mrserb commented Sep 13, 2020

Clearly these are there to prevent mistakes. So they add value at a tiny build time cost.
I don't see the point of removing them.

That's the point of the fix, instead of implementing two versions of each method in these files just prevent compilation of the file in the headless mode. As far as understand both solutions are equivalent, but an assertion at the start of the file a much cleaner.

@magicus
Copy link
Member

magicus commented Sep 30, 2020

I agree with Sergey. This is much cleaner. All steps towards cleaning up the spaghetti code regarding headless/not headless are important, even if they are small. It's like solving the thousand paper cuts issue; you have to address every individual cut, not matter how miniscule.

@openjdk
Copy link

openjdk bot commented Oct 21, 2020

@mrserb This change now passes all automated pre-integration checks.

ℹ️ This project also has non-automated pre-integration requirements. Please see the file CONTRIBUTING.md for details.

After integration, the commit message for the final commit will be:

8242559: Clean the "libawt_xawt" library from code for headless mode

Reviewed-by: kizune

You can use pull request commands such as /summary, /contributor and /issue to adjust it as needed.

At the time when this comment was updated there had been 5 new commits pushed to the master branch:

  • 7d3d4da: 8240709: Enable javax/swing/UI/UnninstallUIMemoryLeaks/UnninstallUIMemoryLeaks.java on all L&F
  • 5d26229: 8255174: Vector API unit tests for missed public api code coverage
  • b9186be: 6606767: resexhausted00[34] fail assert(!thread->owns_locks(), "must release all locks when leaving VM")
  • 1191a63: 8199697: FIPS 186-4 RSA Key Generation
  • 60d3fa2: 8255022: Documentation missing for Vector API zero methods

Please see this link for an up-to-date comparison between the source branch of this pull request and the master branch.
As there are no conflicts, your changes will automatically be rebased on top of these commits when integrating. If you prefer to avoid this automatic rebasing, please check the documentation for the /integrate command for further details.

➡️ To integrate this PR with the above commit message to the master branch, type /integrate in a new comment.

@openjdk openjdk bot added the ready Pull request is ready to be integrated label Oct 21, 2020
@mrserb
Copy link
Member Author

mrserb commented Oct 23, 2020

/integrate

@openjdk openjdk bot closed this Oct 23, 2020
@openjdk openjdk bot added integrated Pull request has been integrated and removed ready Pull request is ready to be integrated rfr Pull request is ready for review labels Oct 23, 2020
@openjdk
Copy link

openjdk bot commented Oct 23, 2020

@mrserb Since your change was applied there have been 17 commits pushed to the master branch:

  • ff5f226: 8255086: Update the root locale display names
  • 8afdcae: 8255031: Update java/util/prefs/AddNodeChangeListener.java to report more failure info
  • 0aa3c92: 8255262: Remove use of legacy custom @SPEC tag
  • a0b687b: 8254854: [cgroups v1] Metric limits not properly detected on some join controller combinations
  • f279ddf: 8248411: [aarch64] Insufficient error handling when CodeBuffer is exhausted
  • 4634dbe: 8223312: Utilize handshakes instead of is_thread_fully_suspended
  • cc50c8d: 8255196: Remove unused G1FullGCCompactionPoint::merge()
  • ae72b52: 8255047: Add HotSpot UseDebuggerErgo flags
  • 211bb62: 8255124: KeepAliveStreamCleaner may crash with java.lang.IllegalMonitorStateException: current thread is not owner
  • 299e115: 8198395: Test javax/swing/plaf/metal/MetalLookAndFeel/Test8039750.java fails in mach5
  • ... and 7 more: https://git.openjdk.java.net/jdk/compare/9ade94b727b54bfff248ef9fdd29d6386aba190c...master

Your commit was automatically rebased without conflicts.

Pushed as commit d8d9197.

💡 You may see a message that your pull request was closed with unmerged commits. This can be safely ignored.

@mrserb mrserb deleted the JDK-8242559 branch April 12, 2021 21:59
robehn pushed a commit to robehn/jdk that referenced this pull request Aug 15, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
awt client-libs-dev@openjdk.org integrated Pull request has been integrated
4 participants