Skip to main content

phoneME advanced with GTK support

1 reply [Last post]
sharmarajesh
Offline
Joined: 2007-07-04
Points: 0

Hi All,
I am working on the porting of GTK 2.10 on phoneMe advanced mr2.when i try to run the DemoFrame after making some changes in native code as well as in java code.I got the following error

GCachedIDs.GdkFontMetrics_dataFID=-1073746504
GCachedIDs.GdkFontMetrics_dataFID=-1073746504
GdkFontMertics.c SetIntField (env, this, GCachedIDs1.FontMetrics_dataFID, (jint)fid)
Assertion failed at line 900 in ../../src/share/javavm/runtime/jni_impl.c: jfb != NULL
JNI Frame java.awt.GdkFontMetrics.pLoadFont(Ljava/lang/String;I)I(Native Method)
Java Frame java.awt.GdkFontMetrics.(Ljava/awt/Font;Ljava/lang/String;IZZ)V(GdkFontMetrics.java:259)
Java Frame java.awt.GdkFontMetrics.getFontMetrics(Ljava/awt/Font;Z)Ljava/awt/GdkFontMetrics;(GdkFontMetrics.java:238)
Java Frame java.awt.GdkGraphics.setFont(Ljava/awt/Font;Z)V(GdkGraphics.java:315)
Java Frame java.awt.GdkGraphics.setFont(Ljava/awt/Font;)V(GdkGraphics.java:322)
Java Frame java.awt.GdkGraphics.(Ljava/awt/GdkOffscreenImage;)V(GdkGraphics.java:250)
Java Frame java.awt.GdkOffscreenImage.getGraphics()Ljava/awt/Graphics;(GdkOffscreenImage.java:87)
Java Frame java.awt.GdkOffscreenImage.(Ljava/awt/Component;IILjava/awt/GdkGraphicsConfiguration;)V(GdkOffscreenImage.java:76)
Java Frame java.awt.GdkGraphicsConfiguration.createCompatibleImage(II)Ljava/awt/image/BufferedImage;(GdkGraphicsConfiguration.java:36)
Java Frame basis.demos.ImageDemo.()V(ImageDemo.java:55)
Java Frame basis.demos.GraphicsDemo.()V(GraphicsDemo.java:39)
Transition Frame basis.demos.GraphicsDemo.()V(Transition Method)
Java Frame java.lang.reflect.Constructor.newInstance([Ljava/lang/Object;)Ljava/lang/Object;(Constructor.java:285)
Java Frame java.lang.Class.newInstance()Ljava/lang/Object;(Class.java:286)
Java Frame basis.Builder.build(Ljava/awt/Container;)V(Builder.java:71)
Java Frame basis.DemoFrame.(Ljava/util/ArrayList;Ljava/awt/Dimension;)V(DemoFrame.java:128)
Java Frame basis.DemoFrame.main([Ljava/lang/String;)V(DemoFrame.java:56)
Transition Frame basis.DemoFrame.main([Ljava/lang/String;)V(Transition Method)
Java Frame java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;(Method.java:321)
Java Frame sun.misc.CVM.runMain()V(CVM.java:514)
Transition Frame sun.misc.CVM.runMain()V(Transition Method)
Free List Frame (JNI Local Frame)
(!) [ 5810: 0.000] --> Caught signal 11, no siginfo available <--

!observer.imageUpdate(img, info, x, y, w, h)

!observer.imageUpdate(img, info, x, y, w, h) if (uninterested == null)

if (uninterested!= null)

enum.hasMoreElements()

(!) Direct/Thread: Canceling 'Screen Update' (5818)!
Aborted
bash-2.05b#

After Investigating the error i found a simple JNI program of SetIntField is working perfectly but when i tried to set value of a member of CachedIDs which is declared in "awt.h" that assertion failed is happen.

Thanks in advance for the help

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Hinkmond Wong

Hi Sharmarajesh,

It's not a problem with phonME Advanced code. It's a problem with your
java.awt.GdkFontMetrics code. You should not port GTK 2.10 to be on top
of pMEA Personal Basis Profile. It won't work. Instead, you should be
porting the other way around. Personal Basis Profile needs to run as a
Java stack on top of a native toolkit, such as Qt, Microwindows, GTK,
etc. You need to port the PBP AWT peer layer on top of a native
toolkit, like GTK to run.

Hinkmond

phonemeadvanced@mobileandembedded.org wrote:
> Hi All,
> I am working on the porting of GTK 2.10 on phoneMe advanced mr2.when i try to run the DemoFrame after making some changes in native code as well as in java code.I got the following error
>
> GCachedIDs.GdkFontMetrics_dataFID=-1073746504
> GCachedIDs.GdkFontMetrics_dataFID=-1073746504
> GdkFontMertics.c SetIntField (env, this, GCachedIDs1.FontMetrics_dataFID, (jint)fid)
> Assertion failed at line 900 in ../../src/share/javavm/runtime/jni_impl.c: jfb != NULL
> JNI Frame java.awt.GdkFontMetrics.pLoadFont(Ljava/lang/String;I)I(Native Method)
> Java Frame java.awt.GdkFontMetrics.(Ljava/awt/Font;Ljava/lang/String;IZZ)V(GdkFontMetrics.java:259)
> Java Frame java.awt.GdkFontMetrics.getFontMetrics(Ljava/awt/Font;Z)Ljava/awt/GdkFontMetrics;(GdkFontMetrics.java:238)
> Java Frame java.awt.GdkGraphics.setFont(Ljava/awt/Font;Z)V(GdkGraphics.java:315)
> Java Frame java.awt.GdkGraphics.setFont(Ljava/awt/Font;)V(GdkGraphics.java:322)
> Java Frame java.awt.GdkGraphics.(Ljava/awt/GdkOffscreenImage;)V(GdkGraphics.java:250)
> Java Frame java.awt.GdkOffscreenImage.getGraphics()Ljava/awt/Graphics;(GdkOffscreenImage.java:87)
> Java Frame java.awt.GdkOffscreenImage.(Ljava/awt/Component;IILjava/awt/GdkGraphicsConfiguration;)V(GdkOffscreenImage.java:76)
> Java Frame java.awt.GdkGraphicsConfiguration.createCompatibleImage(II)Ljava/awt/image/BufferedImage;(GdkGraphicsConfiguration.java:36)
> Java Frame basis.demos.ImageDemo.()V(ImageDemo.java:55)
> Java Frame basis.demos.GraphicsDemo.()V(GraphicsDemo.java:39)
> Transition Frame basis.demos.GraphicsDemo.()V(Transition Method)
> Java Frame java.lang.reflect.Constructor.newInstance([Ljava/lang/Object;)Ljava/lang/Object;(Constructor.java:285)
> Java Frame java.lang.Class.newInstance()Ljava/lang/Object;(Class.java:286)
> Java Frame basis.Builder.build(Ljava/awt/Container;)V(Builder.java:71)
> Java Frame basis.DemoFrame.(Ljava/util/ArrayList;Ljava/awt/Dimension;)V(DemoFrame.java:128)
> Java Frame basis.DemoFrame.main([Ljava/lang/String;)V(DemoFrame.java:56)
> Transition Frame basis.DemoFrame.main([Ljava/lang/String;)V(Transition Method)
> Java Frame java.lang.reflect.Method.invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;(Method.java:321)
> Java Frame sun.misc.CVM.runMain()V(CVM.java:514)
> Transition Frame sun.misc.CVM.runMain()V(Transition Method)
> Free List Frame (JNI Local Frame)
> (!) [ 5810: 0.000] --> Caught signal 11, no siginfo available <--
>
> !observer.imageUpdate(img, info, x, y, w, h)
>
>
> !observer.imageUpdate(img, info, x, y, w, h) if (uninterested == null)
>
>
> if (uninterested!= null)
>
>
> enum.hasMoreElements()
>
> (!) Direct/Thread: Canceling 'Screen Update' (5818)!
> Aborted
> bash-2.05b#
>
>
> After Investigating the error i found a simple JNI program of SetIntField is working perfectly but when i tried to set value of a member of CachedIDs which is declared in "awt.h" that assertion failed is happen

---------------------------------------------------------------------
To unsubscribe, e-mail: advanced-unsubscribe@phoneme.dev.java.net
For additional commands, e-mail: advanced-help@phoneme.dev.java.net