- if (obj->client->responses.tail) {
- php_http_message_object_t *response_obj = *(php_http_message_object_t **) obj->client->responses.tail->data;
+ if (!zrequest) {
+ /* pop off the last respone */
+ if (obj->client->responses.tail) {
+ php_http_message_object_t *response_obj = *(php_http_message_object_t **) obj->client->responses.tail->data;
+
+ /* pop off and go */
+ if (response_obj) {
+ RETVAL_OBJVAL(response_obj->zv, 1);
+ zend_llist_remove_tail(&obj->client->responses);
+ }
+ }
+ } else {
+ /* lookup the response with the request */
+ zend_llist_element *el = NULL;
+ php_http_message_object_t *req_obj = zend_object_store_get_object(zrequest TSRMLS_CC);