if (isPending && timeout != 0) {
pendingTimeout += pendingTimeout + timeout;
} else {
pendingTimeout = timeout;
}
<BUG>isNew = false;
message.getExchange().getInMessage().getInterceptorChain().suspend();
continuation.setTimeout(pendingTimeout);</BUG>
if (!isPending) {
continuation.suspend();

if (isPending && timeout != 0) {
pendingTimeout += pendingTimeout + timeout;
} else {
pendingTimeout = timeout;
}
isNew = false;
if (PhaseInterceptorChain.getCurrentMessage() == null) {
message.getExchange().put(Message.SUSPENDED_INVOCATION, true);
} else {
message.getExchange().getInMessage().getInterceptorChain().suspend();
}
continuation.setTimeout(pendingTimeout);
if (!isPending) {
continuation.suspend();
