copy params in direct tail call

and remove invalid override in PipelineClient
This commit is contained in:
Vaci Koblizek 2020-12-03 12:11:15 +00:00
parent 53eeed97e2
commit e3eabe6476

View file

@ -1622,10 +1622,12 @@ final class RpcState<VatId> {
}
public VoidPromiseAndPipeline callNoIntercept(long interfaceId, short methodId, CallContextHook ctx) {
// Implement call() by copying params and results messages.
var params = ctx.getParams();
var request = newCallNoIntercept(interfaceId, methodId);
ctx.allowCancellation();
request.getParams().setAs(AnyPointer.factory, params);
ctx.releaseParams();
ctx.allowCancellation();
return ctx.directTailCall(request.getHook());
}
@ -2007,11 +2009,6 @@ final class RpcState<VatId> {
this.ops = ops.clone();
}
@Override
public VoidPromiseAndPipeline call(long interfaceId, short methodId, CallContextHook context) {
return null;
}
@Override
public CompletableFuture<ClientHook> whenMoreResolved() {
return null;