src/java.desktop/unix/native/libawt_xawt/awt/swing_GTKEngine.c
changeset 54875 bcfedddcf4ce
parent 47216 71c04702a3d5
equal deleted inserted replaced
54874:631c31a5bf40 54875:bcfedddcf4ce
     1 /*
     1 /*
     2  * Copyright (c) 2005, 2016, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 2005, 2019, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.  Oracle designates this
     7  * published by the Free Software Foundation.  Oracle designates this
    22  * or visit www.oracle.com if you need additional information or have any
    22  * or visit www.oracle.com if you need additional information or have any
    23  * questions.
    23  * questions.
    24  */
    24  */
    25 
    25 
    26 #include <stdlib.h>
    26 #include <stdlib.h>
       
    27 #include <string.h>
    27 #include "gtk_interface.h"
    28 #include "gtk_interface.h"
    28 #include "com_sun_java_swing_plaf_gtk_GTKEngine.h"
    29 #include "com_sun_java_swing_plaf_gtk_GTKEngine.h"
    29 
    30 
    30 /* Static buffer for conversion from java.lang.String to UTF-8 */
    31 /* Static buffer for conversion from java.lang.String to UTF-8 */
    31 static char conversionBuffer[CONV_BUFFER_SIZE];
    32 static char conversionBuffer[(CONV_BUFFER_SIZE - 1) * 3 + 1];
    32 
    33 
    33 const char *getStrFor(JNIEnv *env, jstring val)
    34 const char *getStrFor(JNIEnv *env, jstring val)
    34 {
    35 {
    35     int length = (*env)->GetStringLength(env, val);
    36     int length = (*env)->GetStringLength(env, val);
    36     if (length > CONV_BUFFER_SIZE-1)
    37     if (length > CONV_BUFFER_SIZE-1)
    37     {
    38     {
    38         length = CONV_BUFFER_SIZE-1;
    39         length = CONV_BUFFER_SIZE-1;
    39     }
    40     }
    40 
    41 
       
    42     memset(conversionBuffer, 0, sizeof(conversionBuffer));
    41     (*env)->GetStringUTFRegion(env, val, 0, length, conversionBuffer);
    43     (*env)->GetStringUTFRegion(env, val, 0, length, conversionBuffer);
    42     return conversionBuffer;
    44     return conversionBuffer;
    43 }
    45 }
    44 
    46 
    45 /*
    47 /*