@@ -217,20 +217,18 @@ static gchar *jaw_hyperlink_get_uri(AtkHyperlink *atk_hyperlink, gint i) {
217217 }
218218
219219 JAW_GET_HYPERLINK (atk_hyperlink ,
220- NULL ); // create global JNI reference `jobject jhyperlink`
220+ NULL ); // create local JNI reference `jobject jhyperlink`
221221
222222 if ((* jniEnv )-> PushLocalFrame (jniEnv , JAW_DEFAULT_LOCAL_FRAME_SIZE ) < 0 ) {
223- (* jniEnv )-> DeleteGlobalRef (
224- jniEnv ,
225- jhyperlink ); // deleting ref that was created in JAW_GET_HYPERLINK
223+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
226224 g_warning ("%s: Failed to create a new local reference frame" ,
227225 G_STRFUNC );
228226 return NULL ;
229227 }
230228
231229 if (!jaw_hyperlink_init_jni_cache (jniEnv )) {
232230 g_warning ("%s: Failed to initialize JNI cache" , G_STRFUNC );
233- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
231+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
234232 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
235233 return NULL ;
236234 }
@@ -239,7 +237,7 @@ static gchar *jaw_hyperlink_get_uri(AtkHyperlink *atk_hyperlink, gint i) {
239237 jniEnv , jhyperlink , cachedHyperlinkGetUriMethod , (jint )i );
240238 if ((* jniEnv )-> ExceptionCheck (jniEnv ) || jstr == NULL ) {
241239 jaw_jni_clear_exception (jniEnv );
242- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
240+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
243241 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
244242 return NULL ;
245243 }
@@ -258,7 +256,7 @@ static gchar *jaw_hyperlink_get_uri(AtkHyperlink *atk_hyperlink, gint i) {
258256 jaw_hyperlink -> uri = (gchar * )(* jniEnv )-> GetStringUTFChars (
259257 jniEnv , jaw_hyperlink -> jstrUri , NULL );
260258
261- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
259+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
262260 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
263261
264262 return jaw_hyperlink -> uri ;
@@ -286,17 +284,15 @@ static AtkObject *jaw_hyperlink_get_object(AtkHyperlink *atk_hyperlink,
286284 JAW_GET_HYPERLINK (atk_hyperlink , NULL );
287285
288286 if ((* jniEnv )-> PushLocalFrame (jniEnv , JAW_DEFAULT_LOCAL_FRAME_SIZE ) < 0 ) {
289- (* jniEnv )-> DeleteGlobalRef (
290- jniEnv ,
291- jhyperlink ); // deleting ref that was created in JAW_GET_HYPERLINK
287+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
292288 g_warning ("%s: Failed to create a new local reference frame" ,
293289 G_STRFUNC );
294290 return NULL ;
295291 }
296292
297293 if (!jaw_hyperlink_init_jni_cache (jniEnv )) {
298294 g_warning ("%s: Failed to initialize JNI cache" , G_STRFUNC );
299- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
295+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
300296 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
301297 return NULL ;
302298 }
@@ -305,7 +301,7 @@ static AtkObject *jaw_hyperlink_get_object(AtkHyperlink *atk_hyperlink,
305301 jniEnv , jhyperlink , cachedHyperlinkGetObjectMethod , (jint )i );
306302 if ((* jniEnv )-> ExceptionCheck (jniEnv ) || ac == NULL ) {
307303 jaw_jni_clear_exception (jniEnv );
308- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
304+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
309305 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
310306 return NULL ;
311307 }
@@ -318,7 +314,7 @@ static AtkObject *jaw_hyperlink_get_object(AtkHyperlink *atk_hyperlink,
318314 // The returned data is owned by the instance (transfer none annotation), so
319315 // we don't ref the obj before returning it
320316
321- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
317+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
322318 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
323319
324320 return obj ;
@@ -345,17 +341,15 @@ static gint jaw_hyperlink_get_end_index(AtkHyperlink *atk_hyperlink) {
345341 JAW_GET_HYPERLINK (atk_hyperlink , 0 );
346342
347343 if ((* jniEnv )-> PushLocalFrame (jniEnv , JAW_DEFAULT_LOCAL_FRAME_SIZE ) < 0 ) {
348- (* jniEnv )-> DeleteGlobalRef (
349- jniEnv ,
350- jhyperlink ); // deleting ref that was created in JAW_GET_HYPERLINK
344+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
351345 g_warning ("%s: Failed to create a new local reference frame" ,
352346 G_STRFUNC );
353347 return 0 ;
354348 }
355349
356350 if (!jaw_hyperlink_init_jni_cache (jniEnv )) {
357351 g_warning ("%s: Failed to initialize JNI cache" , G_STRFUNC );
358- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
352+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
359353 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
360354 return 0 ;
361355 }
@@ -364,12 +358,12 @@ static gint jaw_hyperlink_get_end_index(AtkHyperlink *atk_hyperlink) {
364358 cachedHyperlinkGetEndIndexMethod );
365359 if ((* jniEnv )-> ExceptionCheck (jniEnv )) {
366360 jaw_jni_clear_exception (jniEnv );
367- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
361+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
368362 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
369363 return 0 ;
370364 }
371365
372- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
366+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
373367 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
374368
375369 return jindex ;
@@ -396,17 +390,15 @@ static gint jaw_hyperlink_get_start_index(AtkHyperlink *atk_hyperlink) {
396390 JAW_GET_HYPERLINK (atk_hyperlink , 0 );
397391
398392 if ((* jniEnv )-> PushLocalFrame (jniEnv , JAW_DEFAULT_LOCAL_FRAME_SIZE ) < 0 ) {
399- (* jniEnv )-> DeleteGlobalRef (
400- jniEnv ,
401- jhyperlink ); // deleting ref that was created in JAW_GET_HYPERLINK
393+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
402394 g_warning ("%s: Failed to create a new local reference frame" ,
403395 G_STRFUNC );
404396 return 0 ;
405397 }
406398
407399 if (!jaw_hyperlink_init_jni_cache (jniEnv )) {
408400 g_warning ("%s: Failed to initialize JNI cache" , G_STRFUNC );
409- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
401+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
410402 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
411403 return 0 ;
412404 }
@@ -415,12 +407,12 @@ static gint jaw_hyperlink_get_start_index(AtkHyperlink *atk_hyperlink) {
415407 cachedHyperlinkGetStartIndexMethod );
416408 if ((* jniEnv )-> ExceptionCheck (jniEnv )) {
417409 jaw_jni_clear_exception (jniEnv );
418- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
410+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
419411 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
420412 return 0 ;
421413 }
422414
423- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
415+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
424416 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
425417
426418 return jindex ;
@@ -447,17 +439,15 @@ static gboolean jaw_hyperlink_is_valid(AtkHyperlink *atk_hyperlink) {
447439 JAW_GET_HYPERLINK (atk_hyperlink , FALSE);
448440
449441 if ((* jniEnv )-> PushLocalFrame (jniEnv , JAW_DEFAULT_LOCAL_FRAME_SIZE ) < 0 ) {
450- (* jniEnv )-> DeleteGlobalRef (
451- jniEnv ,
452- jhyperlink ); // deleting ref that was created in JAW_GET_HYPERLINK
442+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
453443 g_warning ("%s: Failed to create a new local reference frame" ,
454444 G_STRFUNC );
455445 return FALSE;
456446 }
457447
458448 if (!jaw_hyperlink_init_jni_cache (jniEnv )) {
459449 g_warning ("%s: Failed to initialize JNI cache" , G_STRFUNC );
460- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
450+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
461451 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
462452 return FALSE;
463453 }
@@ -466,12 +456,12 @@ static gboolean jaw_hyperlink_is_valid(AtkHyperlink *atk_hyperlink) {
466456 jniEnv , jhyperlink , cachedHyperlinkIsValidMethod );
467457 if ((* jniEnv )-> ExceptionCheck (jniEnv )) {
468458 jaw_jni_clear_exception (jniEnv );
469- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
459+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
470460 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
471461 return FALSE;
472462 }
473463
474- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
464+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
475465 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
476466
477467 return jvalid ;
@@ -497,17 +487,15 @@ static gint jaw_hyperlink_get_n_anchors(AtkHyperlink *atk_hyperlink) {
497487 JAW_GET_HYPERLINK (atk_hyperlink , 0 );
498488
499489 if ((* jniEnv )-> PushLocalFrame (jniEnv , JAW_DEFAULT_LOCAL_FRAME_SIZE ) < 0 ) {
500- (* jniEnv )-> DeleteGlobalRef (
501- jniEnv ,
502- jhyperlink ); // deleting ref that was created in JAW_GET_HYPERLINK
490+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
503491 g_warning ("%s: Failed to create a new local reference frame" ,
504492 G_STRFUNC );
505493 return 0 ;
506494 }
507495
508496 if (!jaw_hyperlink_init_jni_cache (jniEnv )) {
509497 g_warning ("%s: Failed to initialize JNI cache" , G_STRFUNC );
510- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
498+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
511499 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
512500 return 0 ;
513501 }
@@ -516,12 +504,12 @@ static gint jaw_hyperlink_get_n_anchors(AtkHyperlink *atk_hyperlink) {
516504 cachedHyperlinkGetNAnchorsMethod );
517505 if ((* jniEnv )-> ExceptionCheck (jniEnv )) {
518506 jaw_jni_clear_exception (jniEnv );
519- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
507+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
520508 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
521509 return 0 ;
522510 }
523511
524- (* jniEnv )-> DeleteGlobalRef (jniEnv , jhyperlink );
512+ (* jniEnv )-> DeleteLocalRef (jniEnv , jhyperlink );
525513 (* jniEnv )-> PopLocalFrame (jniEnv , NULL );
526514
527515 return janchors ;
0 commit comments