Bug 4995929 "Indeterminate JProgressBar prevents normal application exit"

I was hoping this morning to be able to remove a work-around for Sun's Java bug 4995929, which was fixed in 1.5.0 — all my programs require Java 5 anyway, so why leave in a hack for 1.4.2 users?

The answer, it turns out, is because Apple's aqua LAF is still broken.

Rather than subclass BasicProgressBarUI, which is where Sun added their fix, they copy & pasted BasicProgressBarUI into AquaProgressBarUI (judging by common field names). They may well have been forced into this by the number of private fields, methods and even inner classes in BasicProgressBarUI. And presumably Apple were lagging so far behind with their implementation that by the time they came to write AquaProgressBarUI it was too late.

I've raised Apple bug 4235221 "Sun bug 4995929 (fixed in 1.5.0) not fixed for aqua LAF". I can't give you a link, because Apple are particularly bone-headed in that regard. Judging by the progress that's been made on the other Apple-specific Java bugs I've submitted to Apple, namely "no progress whatsoever", this one won't be fixed before at least 2008.

I wonder whose job it is at Apple to break out diff(1) each time there's a new Sun release and look for changes in Sun's LAF code and work out what fixes need porting to the aqua LAF?

I still haven't raised an Apple bug for the way that java.awt.Robot's createScreenCapture can crash the VM, because I think the correct fix would be for checkValidRect to do a more thorough job. The Linux JVM may not crash in similar circumstances, but its behavior is still questionable. And a potential security hole. I'm still hoping against hope that "internal review ID 488856" will turn into an actual bug number, but it's been over a month now, and that's usually a sign that it's just been ignored.

That's the one thing I dislike about Sun's bug reporting process: there's no way to get an arbitrator in if you and the reviewer disagree. I still can't believe no-one will accept as a bug the fact that JSplitPane uses the wrong mouse cursor, and is forced to do so by the fact that Cursor doesn't offer the right one for either a left-right or top-bottom split pane.

Just my luck to keep getting blind reviewers.

Speaking of bugs, I hadn't seen the problem referred to in "Oh Chess.app, you damnable little bastard" until the day after I read that post, when I found that it's pretty repeatable on my 2001 PowerBook if I just do a slideshow from the Finder of "enough" images. I've yet to see it on my dual G5, but that has significantly meatier graphics hardware.

I see the text-editing problems all the time, but mainly on the dual G5 because that's where I run Mail. (10.4's Mail isn't trustworthy enough for me to run it on two machines concurrently like I used to with 10.3's version.)

Luckily for me, all my important text editing is done in Java applications.