directly define StackConsumer in frida

This commit is contained in:
Jean-Marie Mineau 2025-04-02 14:26:14 +02:00
parent a0cb49fd77
commit 28f5ac772c
Signed by: histausse
GPG key ID: B66AEEDA9B645AD2
5 changed files with 54 additions and 84 deletions

View file

@ -1,29 +0,0 @@
package theseus.android;
import java.util.function.Consumer;
import java.lang.StackWalker.StackFrame;
import java.util.ArrayList;
import java.util.function.Function;
import java.util.stream.Stream;
class StackConsumer implements Consumer<StackFrame> {
public ArrayList<StackFrame> stack;
public StackConsumer() {
this.stack = new ArrayList<StackFrame>();
}
@Override
public void accept(StackFrame frame) {
stack.add(frame);
}
public StackFrame[] getStack() {
return this.stack.toArray(new StackFrame[] {});
}
public Function<? super Stream<StackWalker.StackFrame>, StackFrame[]> walkNFrame(int n) {
return s -> { s.limit(n).forEach(this); return this.getStack(); };
}
}