Fix for issue #15458
This commit is contained in:
parent
463e4d5619
commit
19f0b1da67
|
|
@ -103,15 +103,24 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
|
|||
grpc_metadata_array_destroy(&request_metadata1);
|
||||
grpc_server_shutdown_and_notify(server, cq, tag(0xdead));
|
||||
grpc_server_cancel_all_calls(server);
|
||||
grpc_millis deadline = grpc_core::ExecCtx::Get()->Now() + 100;
|
||||
for (int i = 0; i <= requested_calls; i++) {
|
||||
ev = grpc_completion_queue_next(cq, gpr_inf_past(GPR_CLOCK_REALTIME),
|
||||
nullptr);
|
||||
do {
|
||||
ev = grpc_completion_queue_next(cq, gpr_inf_past(GPR_CLOCK_REALTIME),
|
||||
nullptr);
|
||||
grpc_core::ExecCtx::Get()->InvalidateNow();
|
||||
} while (ev.type != GRPC_OP_COMPLETE &&
|
||||
grpc_core::ExecCtx::Get()->Now() < deadline);
|
||||
GPR_ASSERT(ev.type == GRPC_OP_COMPLETE);
|
||||
}
|
||||
grpc_completion_queue_shutdown(cq);
|
||||
for (int i = 0; i <= requested_calls; i++) {
|
||||
ev = grpc_completion_queue_next(cq, gpr_inf_past(GPR_CLOCK_REALTIME),
|
||||
nullptr);
|
||||
do {
|
||||
ev = grpc_completion_queue_next(cq, gpr_inf_past(GPR_CLOCK_REALTIME),
|
||||
nullptr);
|
||||
grpc_core::ExecCtx::Get()->InvalidateNow();
|
||||
} while (ev.type != GRPC_QUEUE_SHUTDOWN &&
|
||||
grpc_core::ExecCtx::Get()->Now() < deadline);
|
||||
GPR_ASSERT(ev.type == GRPC_QUEUE_SHUTDOWN);
|
||||
}
|
||||
grpc_server_destroy(server);
|
||||
|
|
|
|||
Loading…
Reference in New Issue