Java Solaris Communities Sun Store Join SDN My Profile Why Join?
 
Bug Database
Bug Detail
Quick Lists
Top 25 Bugs
Top 25 RFE's
Recently Closed Bugs
Printable Page Printable Page


Bug Database
Bug ID: 6586752
Votes 0
Synopsis Window decorations do not appear
Category java:classes_awt
Reported Against
Release Fixed 7(b21), 6-open(b07) (Bug ID:2159256)
State 10-Fix Delivered, bug
Priority: 2-High
Related Bugs
Submit Date 30-JUL-2007
Description
FULL PRODUCT VERSION :
openjdk version "1.7.0-internal"
OpenJDK Runtime Environment (build 1.7.0-internal-fkung_23_jul_2007_16_10-b00)
OpenJDK 64-Bit Server VM (build 1.7.0-internal-fkung_23_jul_2007_16_10-b00, mixed mode)

ADDITIONAL OS VERSION INFORMATION :
Linux toycar.toronto. customer .com 2.6.22.1-27.fc7 #1 SMP Tue Jul 17 17:19:58 EDT 2007 x86_64 x86_64 x86_64 GNU/Linux

A DESCRIPTION OF THE PROBLEM :
Graphical applications appear without window decorations.  No title bar, close box, or border.  The window cannot be moved or resized.

STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Start any AWT/Swing application that creates a window.

EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
The window to appear with proper decorations.
ACTUAL -
No decorations appeared.

REPRODUCIBILITY :
This bug can be reproduced always.

Release Regression From : 6
The above release value was the last known release where this 
bug was not reproducible. Since then there has been a regression.
Posted Date : 2007-07-30 11:43:19.0
Work Around
N/A
Evaluation
Not reproducible with JDK7.0-b16 on linux-amd64 with GNOME 2.8. Need more information about the environment where this bug can be reproduced.

The sample application used to reproduce this issue is as follows:

import java.awt.*;

public class frame {
    public static void main(String[] args) {
        Frame f = new Frame("My Frame");
        f.setBounds(50, 50, 200, 100);
        f.setVisible(true);
    }
}
Posted Date : 2007-07-31 10:02:29.0

After a long discussion, it has occured the problem is with some incompatibility between openmotif and lesstif. Their 32bit code is very close to each other, while in 64bits some structures (like PropMwmHints) has different sizes, which causes so strange problems.
Posted Date : 2007-08-03 08:01:59.0

It is possible to not include MwmUtils.h header altogether. Motif will be phased out in jdk7 and is not supported in openjdk anyway; XAWT-related code depends on presumed structure fields size  elsewhere. Actually if one does create a native application setting for instance these hints via XChangeProperty, resulting hints will be different for Motif/Openmotif and Lesstif sets of headers.
I propose explicit declaration of the structure in the only place it is used in XAWT.
Posted Date : 2007-08-08 07:32:24.0
Comments
  
  Include a link with my name & email   

Submitted On 01-SEP-2007
In reply to:

"It is possible to not include MwmUtils.h header altogether. Motif will be phased out in jdk7 and is not supported in openjdk anyway; XAWT-related code depends on presumed structure fields size  elsewhere. Actually if one does create a native application setting for instance these hints via XChangeProperty, resulting hints will be different for Motif/Openmotif and Lesstif sets of headers.
I propose explicit declaration of the structure in the only place it is used in XAWT."

Actually PropMwmHints get used in 2 places:
openjdk/j2se/src/solaris/native/sun/awt/splashscreen/splashscreen_sys.c
openjdk/j2se/src/solaris/classes/sun/awt/X11/generator/WrapperGenerator.java

In splashscreen_sys.c the struct already is defined explicitly, and thus MwmUtil.h isn't needed and the lesstif <-> motif differences in it aren't a problem.

And yes, the other user is java code, well actually C-code generated by that java file, thats also why a grep won't find the use, it took me quite some time to track this one down.

I have a patch for openjdk/j2se/src/solaris/classes/sun/awt/X11/generator/WrapperGenerator.java

Which modifies the java code so that the generated C-code explicitly declarates PropMwmHints, in the same way this is already done in:
openjdk/j2se/src/solaris/native/sun/awt/splashscreen/splashscreen_sys.c

Since I cannot find a way to attach files in this bug tracker (is it me?), here is a link to the patch:
http://people.atrpms.net/~hdegoede/openjdk-lesstif-64.patch

I've verified that this patches fixes the reported issue with the latest icedtea build against lesstif on x86_64.


Submitted On 01-SEP-2007
mpowerplayer
p.s.

You have my permission to use this patch under any License of your choosing.


Submitted On 01-SEP-2007
Ugh, buggy bugtracker, I'm not mpowerplayer, I'm Hans de Goede <j.w.r.degoede@hhs.nl> and I logged in as such ??



PLEASE NOTE: JDK6 is formerly known as Project Mustang