AWT crasher patch to be back-ported by all distros

Jiri Vanek jvanek at redhat.com
Thu Dec 6 03:22:44 PST 2012


On 12/04/2012 03:21 PM, Andrew Haley wrote:
> This bug affects LibreOffice, crashes it on all known OpenJDKs, and is
> committed upstream.  It's worth patching IcedTea and all OpenJDK-
> derived packages until the next JDK7 update, which may be some time.
>
> Andrew.
>
>
> # HG changeset patch
> # User aph
> # Date 1354629728 0
> # Node ID ea20c9388d90fd9fda085c59ceae25ea9d686ec6
> # Parent  4aad3e6f68d2463f4fee63c93153394be6489c00
> 8004344: Fix a crash in ToolkitErrorHandler() in XlibWrapper.c
> Summary: Code does not check for JNU_GetEnv returning NULL.
> Reviewed-by: anthony
>
> diff -r 4aad3e6f68d2 -r ea20c9388d90 src/solaris/native/sun/xawt/XlibWrapper.c
> --- a/src/solaris/native/sun/xawt/XlibWrapper.c	Tue Dec 04 17:17:45 2012 +0400
> +++ b/src/solaris/native/sun/xawt/XlibWrapper.c	Tue Dec 04 14:02:08 2012 +0000
> @@ -1260,13 +1260,15 @@
>
>   JavaVM* jvm = NULL;
>   static int ToolkitErrorHandler(Display * dpy, XErrorEvent * event) {
> +    JNIEnv * env;
>       if (jvm != NULL) {
> -        JNIEnv * env = (JNIEnv *)JNU_GetEnv(jvm, JNI_VERSION_1_2);
> -        return JNU_CallStaticMethodByName(env, NULL, "sun/awt/X11/XToolkit", "globalErrorHandler", "(JJ)I",
> -                                          ptr_to_jlong(dpy), ptr_to_jlong(event)).i;
> -    } else {
> -        return 0;
> +        env = (JNIEnv *)JNU_GetEnv(jvm, JNI_VERSION_1_2);
> +        if (env) {
> +            return JNU_CallStaticMethodByName(env, NULL, "sun/awt/X11/XToolkit", "globalErrorHandler", "(JJ)I",
> +                                              ptr_to_jlong(dpy), ptr_to_jlong(event)).i;
> +        }
>       }
> +    return 0;
>   }
>
>   /*
>

Running build with it. If pavel will test I will forward to f17 and f18
http://koji.fedoraproject.org/koji/taskinfo?taskID=4762807

J




More information about the distro-pkg-dev mailing list