src/java.desktop/unix/native/libawt_xawt/awt/awt_UNIXToolkit.c
changeset 52251 b43c2aa001a5
parent 47216 71c04702a3d5
child 53319 db7b41933563
equal deleted inserted replaced
52250:cebf87487c33 52251:b43c2aa001a5
   181     {
   181     {
   182         len = (*env)->GetStringUTFLength(env, detail);
   182         len = (*env)->GetStringUTFLength(env, detail);
   183         detail_str = (char *)SAFE_SIZE_ARRAY_ALLOC(malloc,
   183         detail_str = (char *)SAFE_SIZE_ARRAY_ALLOC(malloc,
   184                 sizeof(char), len + 1);
   184                 sizeof(char), len + 1);
   185         if (detail_str == NULL) {
   185         if (detail_str == NULL) {
       
   186             free(stock_id_str);
   186             JNU_ThrowOutOfMemoryError(env, "OutOfMemoryError");
   187             JNU_ThrowOutOfMemoryError(env, "OutOfMemoryError");
   187             return JNI_FALSE;
   188             return JNI_FALSE;
   188         }
   189         }
   189         (*env)->GetStringUTFRegion(env, detail, 0, len, detail_str);
   190         (*env)->GetStringUTFRegion(env, detail, 0, len, detail_str);
   190     }
   191     }
   191 
   192 
   192     if (!init_method(env, this) ) {
   193     if (!init_method(env, this) ) {
       
   194         free(stock_id_str);
       
   195         if (detail_str != NULL) {
       
   196             free(detail_str);
       
   197         }
   193         return JNI_FALSE;
   198         return JNI_FALSE;
   194     }
   199     }
   195     jboolean result = gtk->get_icon_data(env, widget_type, stock_id_str,
   200     jboolean result = gtk->get_icon_data(env, widget_type, stock_id_str,
   196                   icon_size, text_direction, detail_str,
   201                   icon_size, text_direction, detail_str,
   197                   icon_upcall_method, this);
   202                   icon_upcall_method, this);