Skip to content

Commit 2e90d7b

Browse files
committed
Simplify
1 parent 582d998 commit 2e90d7b

File tree

1 file changed

+14
-46
lines changed

1 file changed

+14
-46
lines changed

swoole_client.c

Lines changed: 14 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -465,13 +465,10 @@ static int swoole_client_error_callback(zval *zobject, swEvent *event, int error
465465

466466
php_error_docref(NULL TSRMLS_CC, E_WARNING, "swoole_client: connect to server failed. Error: %s [%d]", strerror(error), error);
467467

468-
SwooleG.main_reactor->del(SwooleG.main_reactor, event->fd);
469-
zcallback = zend_read_property(swoole_client_class_entry_ptr, zobject, SW_STRL(php_sw_client_onError)-1, 0 TSRMLS_CC);
468+
SwooleG.main_reactor->del(SwooleG.main_reactor, event->fd);
469+
zcallback = zend_read_property(swoole_client_class_entry_ptr, zobject, SW_STRL(php_sw_client_onError)-1, 0 TSRMLS_CC);
470470

471-
zval *errCode;
472-
MAKE_STD_ZVAL(errCode);
473-
ZVAL_LONG(errCode, error);
474-
zend_update_property(swoole_client_class_entry_ptr, zobject, ZEND_STRL("errCode"), errCode TSRMLS_CC);
471+
zend_update_property_long(swoole_client_class_entry_ptr, zobject, ZEND_STRL("errCode"), error TSRMLS_CC);
475472

476473
args[0] = &zobject;
477474

@@ -487,7 +484,6 @@ static int swoole_client_error_callback(zval *zobject, swEvent *event, int error
487484
return SW_ERR;
488485
}
489486

490-
zval_ptr_dtor(&errCode);
491487
if (retval)
492488
{
493489
zval_ptr_dtor(&retval);
@@ -665,7 +661,7 @@ void php_swoole_try_run_reactor()
665661

666662
static swClient* swoole_client_create_socket(zval *object, char *host, int host_len, int port)
667663
{
668-
zval *ztype, *zres, *zsockfd, *zerrorCode;
664+
zval *ztype, *zres;
669665
int async = 0;
670666
swClient *cli;
671667
char conn_key[SW_LONG_CONNECTION_KEY_LEN];
@@ -724,10 +720,8 @@ static swClient* swoole_client_create_socket(zval *object, char *host, int host_
724720
create_socket:
725721
if (swClient_create(cli, php_swoole_socktype(type), async) < 0)
726722
{
727-
php_error_docref(NULL TSRMLS_CC, E_WARNING, "swoole_client: create failed. Error: %s [%d]", strerror(errno), errno);
728-
MAKE_STD_ZVAL(zerrorCode);
729-
ZVAL_LONG(zerrorCode, errno);
730-
zend_update_property(swoole_client_class_entry_ptr, object, ZEND_STRL("errCode"), zerrorCode TSRMLS_CC);
723+
php_error_docref(NULL TSRMLS_CC, E_WARNING, "create failed. Error: %s [%d]", strerror(errno), errno);
724+
zend_update_property_long(swoole_client_class_entry_ptr, object, ZEND_STRL("errCode"), errno TSRMLS_CC);
731725
return NULL;
732726
}
733727
//don't forget free it
@@ -736,16 +730,12 @@ static swClient* swoole_client_create_socket(zval *object, char *host, int host_
736730
}
737731

738732
MAKE_STD_ZVAL(zres);
739-
MAKE_STD_ZVAL(zsockfd);
740-
ZVAL_LONG(zsockfd, cli->connection.fd);
741-
742733
ZEND_REGISTER_RESOURCE(zres, cli, le_swoole_client);
743734

744-
zend_update_property(swoole_client_class_entry_ptr, object, ZEND_STRL("sock"), zsockfd TSRMLS_CC);
735+
zend_update_property_long(swoole_client_class_entry_ptr, object, ZEND_STRL("sock"), cli->connection.fd TSRMLS_CC);
745736
zend_update_property(swoole_client_class_entry_ptr, object, ZEND_STRL("_client"), zres TSRMLS_CC);
746737

747738
zval_ptr_dtor(&zres);
748-
zval_ptr_dtor(&zsockfd);
749739

750740
if (type & SW_FLAG_KEEP)
751741
{
@@ -1106,7 +1096,7 @@ PHP_METHOD(swoole_client, __construct)
11061096
}
11071097

11081098
#ifdef ZTS
1109-
if(sw_thread_ctx == NULL)
1099+
if (sw_thread_ctx == NULL)
11101100
{
11111101
TSRMLS_SET_CTX(sw_thread_ctx);
11121102
}
@@ -1128,7 +1118,6 @@ PHP_METHOD(swoole_client, connect)
11281118
int host_len;
11291119
double timeout = 0.1; //默认100ms超时
11301120

1131-
zval *errCode;
11321121
zval *callback = NULL;
11331122
swClient *cli = NULL;
11341123

@@ -1229,10 +1218,7 @@ PHP_METHOD(swoole_client, connect)
12291218
else if (ret < 0)
12301219
{
12311220
php_error_docref(NULL TSRMLS_CC, E_WARNING, "connect to server[%s:%d] failed. Error: %s [%d]", host, (int)port, strerror(errno), errno);
1232-
MAKE_STD_ZVAL(errCode);
1233-
ZVAL_LONG(errCode, errno);
1234-
zend_update_property(swoole_client_class_entry_ptr, getThis(), SW_STRL("errCode")-1, errCode TSRMLS_CC);
1235-
zval_ptr_dtor(&errCode);
1221+
zend_update_property_long(swoole_client_class_entry_ptr, getThis(), SW_STRL("errCode")-1, errno TSRMLS_CC);
12361222
RETURN_FALSE;
12371223
}
12381224
RETURN_TRUE;
@@ -1244,7 +1230,6 @@ PHP_METHOD(swoole_client, send)
12441230
int data_len;
12451231

12461232
zval **zres;
1247-
zval *errCode;
12481233
swClient *cli;
12491234

12501235
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &data, &data_len) == FAILURE)
@@ -1280,12 +1265,8 @@ PHP_METHOD(swoole_client, send)
12801265
if (ret < 0)
12811266
{
12821267
SwooleG.error = errno;
1283-
//这里的错误信息没用
12841268
php_error_docref(NULL TSRMLS_CC, E_WARNING, "send() failed. Error: %s [%d]", strerror(SwooleG.error), SwooleG.error);
1285-
MAKE_STD_ZVAL(errCode);
1286-
ZVAL_LONG(errCode, SwooleG.error);
1287-
zend_update_property(swoole_client_class_entry_ptr, getThis(), SW_STRL("errCode")-1, errCode TSRMLS_CC);
1288-
zval_ptr_dtor(&errCode);
1269+
zend_update_property_long(swoole_client_class_entry_ptr, getThis(), SW_STRL("errCode")-1, SwooleG.error TSRMLS_CC);
12891270
RETVAL_FALSE;
12901271
}
12911272
else
@@ -1300,7 +1281,6 @@ PHP_METHOD(swoole_client, sendfile)
13001281
int file_len;
13011282

13021283
zval **zres;
1303-
zval *errCode;
13041284
swClient *cli;
13051285

13061286
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &file, &file_len) == FAILURE)
@@ -1337,12 +1317,8 @@ PHP_METHOD(swoole_client, sendfile)
13371317
if (ret < 0)
13381318
{
13391319
SwooleG.error = errno;
1340-
//这里的错误信息没用
13411320
php_error_docref(NULL TSRMLS_CC, E_WARNING, "sendfile() failed. Error: %s [%d]", strerror(SwooleG.error), SwooleG.error);
1342-
MAKE_STD_ZVAL(errCode);
1343-
ZVAL_LONG(errCode, SwooleG.error);
1344-
zend_update_property(swoole_client_class_entry_ptr, getThis(), SW_STRL("errCode")-1, errCode TSRMLS_CC);
1345-
zval_ptr_dtor(&errCode);
1321+
zend_update_property_long(swoole_client_class_entry_ptr, getThis(), SW_STRL("errCode")-1, SwooleG.error TSRMLS_CC);
13461322
RETVAL_FALSE;
13471323
}
13481324
else
@@ -1358,7 +1334,6 @@ PHP_METHOD(swoole_client, recv)
13581334
char buf_array[SW_PHP_CLIENT_BUFFER_SIZE];
13591335
char *buf;
13601336
zval **zres;
1361-
zval *errCode;
13621337

13631338
//zval *zdata;
13641339
int ret;
@@ -1405,12 +1380,8 @@ PHP_METHOD(swoole_client, recv)
14051380
if (ret < 0)
14061381
{
14071382
SwooleG.error = errno;
1408-
//这里的错误信息没用
14091383
php_error_docref(NULL TSRMLS_CC, E_WARNING, "recv() failed. Error: %s [%d]", strerror(SwooleG.error), SwooleG.error);
1410-
MAKE_STD_ZVAL(errCode);
1411-
ZVAL_LONG(errCode, SwooleG.error);
1412-
zend_update_property(swoole_client_class_entry_ptr, getThis(), SW_STRL("errCode")-1, errCode TSRMLS_CC);
1413-
zval_ptr_dtor(&errCode);
1384+
zend_update_property_long(swoole_client_class_entry_ptr, getThis(), SW_STRL("errCode")-1, SwooleG.error TSRMLS_CC);
14141385
RETVAL_FALSE;
14151386
}
14161387
else
@@ -1618,7 +1589,6 @@ PHP_FUNCTION(swoole_client_select)
16181589
{
16191590
zval *r_array, *w_array, *e_array;
16201591
fd_set rfds, wfds, efds;
1621-
zval *errCode;
16221592

16231593
int max_fd = 0;
16241594
int retval, sets = 0;
@@ -1655,10 +1625,8 @@ PHP_FUNCTION(swoole_client_select)
16551625

16561626
if (retval == -1)
16571627
{
1658-
MAKE_STD_ZVAL(errCode);
1659-
ZVAL_LONG(errCode, errno);
1660-
zend_update_property(swoole_client_class_entry_ptr, getThis(), SW_STRL("errCode")-1, errCode TSRMLS_CC);
1661-
php_error_docref(NULL TSRMLS_CC, E_WARNING, "swoole_client: unable to select. Error: %s [%d]", strerror(errno), errno);
1628+
zend_update_property_long(swoole_client_class_entry_ptr, getThis(), SW_STRL("errCode")-1, errno TSRMLS_CC);
1629+
php_error_docref(NULL TSRMLS_CC, E_WARNING, "unable to select. Error: %s [%d]", strerror(errno), errno);
16621630
RETURN_FALSE;
16631631
}
16641632
if (r_array != NULL)

0 commit comments

Comments
 (0)