Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Side by Side Diff: jni/JniFilter.cpp

Issue 4761138508070912: Issue 1848 - Clean up local reference handling (Closed)
Patch Set: Formatting, explicit, unrelated change Created Feb. 3, 2015, 1:51 p.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * This file is part of Adblock Plus <https://adblockplus.org/>, 2 * This file is part of Adblock Plus <https://adblockplus.org/>,
3 * Copyright (C) 2006-2015 Eyeo GmbH 3 * Copyright (C) 2006-2015 Eyeo GmbH
4 * 4 *
5 * Adblock Plus is free software: you can redistribute it and/or modify 5 * Adblock Plus is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 3 as 6 * it under the terms of the GNU General Public License version 3 as
7 * published by the Free Software Foundation. 7 * published by the Free Software Foundation.
8 * 8 *
9 * Adblock Plus is distributed in the hope that it will be useful, 9 * Adblock Plus is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
59 enumName = "ELEMHIDE_EXCEPTION"; 59 enumName = "ELEMHIDE_EXCEPTION";
60 break; 60 break;
61 case AdblockPlus::Filter::TYPE_EXCEPTION: 61 case AdblockPlus::Filter::TYPE_EXCEPTION:
62 enumName = "EXCEPTION"; 62 enumName = "EXCEPTION";
63 break; 63 break;
64 default: 64 default:
65 enumName = "INVALID"; 65 enumName = "INVALID";
66 break; 66 break;
67 } 67 }
68 68
69 jclass enumClass = env->FindClass(PKG("Filter$Type")); 69 JniLocalReference<jclass> enumClass(env, env->FindClass(PKG("Filter$Type")));
70 jfieldID enumField = env->GetStaticFieldID(enumClass, enumName, TYP("Filter$Ty pe")); 70 jfieldID enumField = env->GetStaticFieldID(*enumClass, enumName,
71 return env->GetStaticObjectField(enumClass, enumField); 71 TYP("Filter$Type"));
72 return env->GetStaticObjectField(*enumClass, enumField);
72 } 73 }
73 74
74 static jboolean JNICALL JniIsListed(JNIEnv* env, jclass clazz, jlong ptr) 75 static jboolean JNICALL JniIsListed(JNIEnv* env, jclass clazz, jlong ptr)
75 { 76 {
76 try 77 try
77 { 78 {
78 return GetFilterPtr(ptr)->IsListed() ? JNI_TRUE : JNI_FALSE; 79 return GetFilterPtr(ptr)->IsListed() ? JNI_TRUE : JNI_FALSE;
79 } 80 }
80 CATCH_THROW_AND_RETURN(env, JNI_FALSE) 81 CATCH_THROW_AND_RETURN(env, JNI_FALSE)
81 } 82 }
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
117 { (char*)"isListed", (char*)"(J)Z", (void*)JniIsListed }, 118 { (char*)"isListed", (char*)"(J)Z", (void*)JniIsListed },
118 { (char*)"addToList", (char*)"(J)V", (void*)JniAddToList }, 119 { (char*)"addToList", (char*)"(J)V", (void*)JniAddToList },
119 { (char*)"removeFromList", (char*)"(J)V", (void*)JniRemoveFromList }, 120 { (char*)"removeFromList", (char*)"(J)V", (void*)JniRemoveFromList },
120 { (char*)"operatorEquals", (char*)"(JJ)Z", (void*)JniOperatorEquals } 121 { (char*)"operatorEquals", (char*)"(JJ)Z", (void*)JniOperatorEquals }
121 }; 122 };
122 123
123 extern "C" JNIEXPORT void JNICALL Java_org_adblockplus_libadblockplus_Filter_reg isterNatives(JNIEnv *env, jclass clazz) 124 extern "C" JNIEXPORT void JNICALL Java_org_adblockplus_libadblockplus_Filter_reg isterNatives(JNIEnv *env, jclass clazz)
124 { 125 {
125 env->RegisterNatives(clazz, methods, sizeof(methods) / sizeof(methods[0])); 126 env->RegisterNatives(clazz, methods, sizeof(methods) / sizeof(methods[0]));
126 } 127 }
OLDNEW

Powered by Google App Engine
This is Rietveld