in modules/privilizer/weaver/src/main/java/org/apache/commons/weaver/privilizer/BlueprintingVisitor.java [583:613]
private void onFinally() {
// loop over fields and return any non-null element to being inaccessible:
push(0);
storeLocal(fieldCounter);
final Label test = mark();
final Label increment = new Label();
final Label endFinally = new Label();
loadLocal(fieldCounter);
push(fieldAccesses.size());
ifCmp(Type.INT_TYPE, GeneratorAdapter.GE, endFinally);
loadLocal(bitSet);
loadLocal(fieldCounter);
invokeVirtual(bitSetType, Method.getMethod("boolean get(int)"));
// if true, increment:
ifZCmp(NE, increment);
loadLocal(localFieldArray);
loadLocal(fieldCounter);
arrayLoad(fieldArrayType.getElementType());
push(false);
invokeVirtual(fieldArrayType.getElementType(), Method.getMethod("void setAccessible(boolean)"));
mark(increment);
iinc(fieldCounter, 1);
goTo(test);
mark(endFinally);
}