diff options
author | Craig Tiller <ctiller@google.com> | 2015-05-04 14:53:51 -0700 |
---|---|---|
committer | Craig Tiller <ctiller@google.com> | 2015-05-04 14:53:51 -0700 |
commit | 64be9f7a30a4bcb9ce3647f11ba9e06994aa3bb7 (patch) | |
tree | 42a4af35a2fe0f3a79573ff37130fd6b74c55cb9 /src/php | |
parent | c112d146a2dcc5e90d5f5cca10f55f212f9492c6 (diff) |
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.
Diffstat (limited to 'src/php')
-rw-r--r-- | src/php/ext/grpc/call.c | 15 | ||||
-rw-r--r-- | src/php/ext/grpc/server.c | 15 |
2 files changed, 10 insertions, 20 deletions
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); |