From 64be9f7a30a4bcb9ce3647f11ba9e06994aa3bb7 Mon Sep 17 00:00:00 2001 From: Craig Tiller Date: Mon, 4 May 2015 14:53:51 -0700 Subject: C Core API cleanup. Simplify grpc_event into something that can be non-heap allocated. Deprecate grpc_event_finish. Remove grpc_op_error - use an int as this is more idiomatic C style. --- src/php/ext/grpc/call.c | 15 +++++---------- src/php/ext/grpc/server.c | 15 +++++---------- 2 files changed, 10 insertions(+), 20 deletions(-) (limited to 'src/php') diff --git a/src/php/ext/grpc/call.c b/src/php/ext/grpc/call.c index b1525e9246..9cc4fd7f39 100644 --- a/src/php/ext/grpc/call.c +++ b/src/php/ext/grpc/call.c @@ -61,17 +61,12 @@ zend_class_entry *grpc_ce_call; /* Frees and destroys an instance of wrapped_grpc_call */ void free_wrapped_grpc_call(void *object TSRMLS_DC) { wrapped_grpc_call *call = (wrapped_grpc_call *)object; - grpc_event *event; if (call->owned && call->wrapped != NULL) { if (call->queue != NULL) { grpc_completion_queue_shutdown(call->queue); - event = grpc_completion_queue_next(call->queue, gpr_inf_future); - while (event != NULL) { - if (event->type == GRPC_QUEUE_SHUTDOWN) { - break; - } - event = grpc_completion_queue_next(call->queue, gpr_inf_future); - } + while (grpc_completion_queue_next(call->queue, gpr_inf_future).type != + GRPC_QUEUE_SHUTDOWN) + ; grpc_completion_queue_destroy(call->queue); } grpc_call_destroy(call->wrapped); @@ -287,7 +282,7 @@ PHP_METHOD(Call, startBatch) { grpc_byte_buffer *message; int cancelled; grpc_call_error error; - grpc_event *event; + grpc_event event; zval *result; char *message_str; size_t message_len; @@ -422,7 +417,7 @@ PHP_METHOD(Call, startBatch) { } event = grpc_completion_queue_pluck(call->queue, call->wrapped, gpr_inf_future); - if (event->data.op_complete != GRPC_OP_OK) { + if (!event.success) { zend_throw_exception(spl_ce_LogicException, "The batch failed for some reason", 1 TSRMLS_CC); diff --git a/src/php/ext/grpc/server.c b/src/php/ext/grpc/server.c index dbb9425619..c5defa4dd2 100644 --- a/src/php/ext/grpc/server.c +++ b/src/php/ext/grpc/server.c @@ -61,16 +61,11 @@ zend_class_entry *grpc_ce_server; /* Frees and destroys an instance of wrapped_grpc_server */ void free_wrapped_grpc_server(void *object TSRMLS_DC) { wrapped_grpc_server *server = (wrapped_grpc_server *)object; - grpc_event *event; if (server->queue != NULL) { grpc_completion_queue_shutdown(server->queue); - event = grpc_completion_queue_next(server->queue, gpr_inf_future); - while (event != NULL) { - if (event->type == GRPC_QUEUE_SHUTDOWN) { - break; - } - event = grpc_completion_queue_next(server->queue, gpr_inf_future); - } + while (grpc_completion_queue_next(server->queue, gpr_inf_future).type != + GRPC_QUEUE_SHUTDOWN) + ; grpc_completion_queue_destroy(server->queue); } if (server->wrapped != NULL) { @@ -141,7 +136,7 @@ PHP_METHOD(Server, requestCall) { grpc_call_details details; grpc_metadata_array metadata; zval *result; - grpc_event *event; + grpc_event event; MAKE_STD_ZVAL(result); object_init(result); grpc_call_details_init(&details); @@ -154,7 +149,7 @@ PHP_METHOD(Server, requestCall) { goto cleanup; } event = grpc_completion_queue_pluck(server->queue, NULL, gpr_inf_future); - if (event->data.op_complete != GRPC_OP_OK) { + if (!event.success) { zend_throw_exception(spl_ce_LogicException, "Failed to request a call for some reason", 1 TSRMLS_CC); -- cgit v1.2.3