@@ -270,10 +270,10 @@ static bool php_cli_server_get_system_time(char *buf) {
270
270
271
271
gettimeofday (& tv , NULL );
272
272
273
- /* TODO: should be checked for NULL tm/return value */
274
- php_localtime_r ( & tv . tv_sec , & tm ) ;
275
- php_asctime_r ( & tm , buf );
276
- return true ;
273
+ if (! php_localtime_r ( & tv . tv_sec , & tm )) {
274
+ return false ;
275
+ }
276
+ return php_asctime_r ( & tm , buf ) != NULL ;
277
277
}
278
278
#endif
279
279
@@ -865,7 +865,6 @@ static int php_cli_server_poller_poll(php_cli_server_poller *poller, struct time
865
865
return php_select (poller -> max_fd + 1 , & poller -> active .rfds , & poller -> active .wfds , NULL , tv );
866
866
} /* }}} */
867
867
868
- // TODO Return value is unused, refactor?
869
868
static zend_result php_cli_server_poller_iter_on_active (php_cli_server_poller * poller , void * opaque , zend_result (* callback )(void * , php_socket_t fd , int events )) /* {{{ */
870
869
{
871
870
zend_result retval = SUCCESS ;
@@ -2214,10 +2213,9 @@ static void php_cli_server_request_shutdown(php_cli_server *server, php_cli_serv
2214
2213
}
2215
2214
/* }}} */
2216
2215
2217
- // TODO Use bool, return value is strange
2218
- static int php_cli_server_dispatch_router (php_cli_server * server , php_cli_server_client * client ) /* {{{ */
2216
+ static zend_result php_cli_server_dispatch_router (php_cli_server * server , php_cli_server_client * client ) /* {{{ */
2219
2217
{
2220
- int decline = 0 ;
2218
+ zend_result decline ;
2221
2219
zend_file_handle zfd ;
2222
2220
char * old_cwd ;
2223
2221
@@ -2228,14 +2226,17 @@ static int php_cli_server_dispatch_router(php_cli_server *server, php_cli_server
2228
2226
2229
2227
zend_stream_init_filename (& zfd , server -> router );
2230
2228
zfd .primary_script = 1 ;
2229
+ decline = SUCCESS ;
2231
2230
2232
2231
zend_try {
2233
2232
zval retval ;
2234
2233
2235
2234
ZVAL_UNDEF (& retval );
2236
2235
if (SUCCESS == zend_execute_scripts (ZEND_REQUIRE , & retval , 1 , & zfd )) {
2237
2236
if (Z_TYPE (retval ) != IS_UNDEF ) {
2238
- decline = Z_TYPE (retval ) == IS_FALSE ;
2237
+ if (Z_TYPE (retval ) == IS_FALSE ) {
2238
+ decline = FAILURE ;
2239
+ }
2239
2240
zval_ptr_dtor (& retval );
2240
2241
}
2241
2242
}
@@ -2269,14 +2270,14 @@ static zend_result php_cli_server_dispatch(php_cli_server *server, php_cli_serve
2269
2270
if (server -> router || !is_static_file ) {
2270
2271
if (FAILURE == php_cli_server_request_startup (server , client )) {
2271
2272
php_cli_server_request_shutdown (server , client );
2272
- return SUCCESS ;
2273
+ return FAILURE ;
2273
2274
}
2274
2275
}
2275
2276
2276
2277
if (server -> router ) {
2277
- if (! php_cli_server_dispatch_router (server , client )) {
2278
+ if (FAILURE == php_cli_server_dispatch_router (server , client )) {
2278
2279
php_cli_server_request_shutdown (server , client );
2279
- return SUCCESS ;
2280
+ return FAILURE ;
2280
2281
}
2281
2282
}
2282
2283
@@ -2610,8 +2611,7 @@ static zend_result php_cli_server_recv_event_read_request(php_cli_server *server
2610
2611
return php_cli_server_send_error_page (server , client , 501 );
2611
2612
}
2612
2613
php_cli_server_poller_remove (& server -> poller , POLLIN , client -> sock );
2613
- php_cli_server_dispatch (server , client );
2614
- return SUCCESS ;
2614
+ return php_cli_server_dispatch (server , client );
2615
2615
case 0 :
2616
2616
php_cli_server_poller_add (& server -> poller , POLLIN , client -> sock );
2617
2617
return SUCCESS ;
@@ -2657,7 +2657,6 @@ typedef struct php_cli_server_do_event_for_each_fd_callback_params {
2657
2657
zend_result (* whandler )(php_cli_server * , php_cli_server_client * );
2658
2658
} php_cli_server_do_event_for_each_fd_callback_params ;
2659
2659
2660
- // TODO return FAILURE on failure???
2661
2660
static zend_result php_cli_server_do_event_for_each_fd_callback (void * _params , php_socket_t fd , int event ) /* {{{ */
2662
2661
{
2663
2662
php_cli_server_do_event_for_each_fd_callback_params * params = _params ;
@@ -2677,12 +2676,12 @@ static zend_result php_cli_server_do_event_for_each_fd_callback(void *_params, p
2677
2676
efree (errstr );
2678
2677
}
2679
2678
pefree (sa , 1 );
2680
- return SUCCESS ;
2679
+ return FAILURE ;
2681
2680
}
2682
2681
if (SUCCESS != php_set_sock_blocking (client_sock , 0 )) {
2683
2682
pefree (sa , 1 );
2684
2683
closesocket (client_sock );
2685
- return SUCCESS ;
2684
+ return FAILURE ;
2686
2685
}
2687
2686
client = pemalloc (sizeof (php_cli_server_client ), 1 );
2688
2687
@@ -2717,10 +2716,11 @@ static void php_cli_server_do_event_for_each_fd(php_cli_server *server,
2717
2716
whandler
2718
2717
};
2719
2718
2720
- php_cli_server_poller_iter_on_active (& server -> poller , & params , php_cli_server_do_event_for_each_fd_callback );
2719
+ if (SUCCESS != php_cli_server_poller_iter_on_active (& server -> poller , & params , php_cli_server_do_event_for_each_fd_callback )) {
2720
+ php_cli_server_logf (PHP_CLI_SERVER_LOG_ERROR , "Failed to poll event" );
2721
+ }
2721
2722
} /* }}} */
2722
2723
2723
- // TODO Return value of function is not used
2724
2724
static zend_result php_cli_server_do_event_loop (php_cli_server * server ) /* {{{ */
2725
2725
{
2726
2726
zend_result retval = SUCCESS ;
@@ -2763,7 +2763,7 @@ int do_cli_server(int argc, char **argv) /* {{{ */
2763
2763
{
2764
2764
char * php_optarg = NULL ;
2765
2765
int php_optind = 1 ;
2766
- int c ;
2766
+ int c , r ;
2767
2767
const char * server_bind_address = NULL ;
2768
2768
extern const opt_struct OPTIONS [];
2769
2769
const char * document_root = NULL ;
@@ -2841,6 +2841,7 @@ int do_cli_server(int argc, char **argv) /* {{{ */
2841
2841
sapi_module .phpinfo_as_text = 0 ;
2842
2842
2843
2843
{
2844
+ r = 0 ;
2844
2845
bool ipv6 = strchr (server .host , ':' );
2845
2846
php_cli_server_logf (
2846
2847
PHP_CLI_SERVER_LOG_PROCESS ,
@@ -2859,7 +2860,9 @@ int do_cli_server(int argc, char **argv) /* {{{ */
2859
2860
2860
2861
zend_signal_init ();
2861
2862
2862
- php_cli_server_do_event_loop (& server );
2863
+ if (SUCCESS != php_cli_server_do_event_loop (& server )) {
2864
+ r = 1 ;
2865
+ }
2863
2866
php_cli_server_dtor (& server );
2864
- return 0 ;
2867
+ return r ;
2865
2868
} /* }}} */
0 commit comments