diff --git a/modules/service/vpn/dap_chain_net_srv_vpn_cdb_server_list.c b/modules/service/vpn/dap_chain_net_srv_vpn_cdb_server_list.c index e3c807118e9ea489ea2f5c3322bc8247b76f6778..80fe55c56b779a4bfcbfc0bbc967b2aaad8645ef 100644 --- a/modules/service/vpn/dap_chain_net_srv_vpn_cdb_server_list.c +++ b/modules/service/vpn/dap_chain_net_srv_vpn_cdb_server_list.c @@ -298,7 +298,7 @@ static void s_http_simple_proc(dap_http_simple_t *a_http_simple, void *a_arg) l_count++; } } - size_t l_num_print_nodes = 0; + for(size_t l_c = 0; l_c < l_continents_count; l_c++) { // print all nodes for continent for(size_t l_n = 0; l_n < l_continents_numbers[l_c]; l_n++) { @@ -308,12 +308,7 @@ static void s_http_simple_proc(dap_http_simple_t *a_http_simple, void *a_arg) continue; dap_chain_net_srv_order_t *l_order = l_orders_pos[l_o]; if(!order_info_print(l_reply_str, l_net, l_order, NULL, l_n)) { - //if(l_o != l_orders_num - 1) - l_num_print_nodes++; - if(l_num_print_nodes < l_orders_used_num) - dap_string_append_printf(l_reply_str, ",\n"); - else - dap_string_append_printf(l_reply_str, "\n"); + dap_string_append_printf(l_reply_str, ",\n"); } break; } @@ -322,6 +317,12 @@ static void s_http_simple_proc(dap_http_simple_t *a_http_simple, void *a_arg) } } DAP_DELETE(l_geoip_info); + //delete trailing comma if exists + if(l_reply_str->str[l_reply_str->len - 2] == ','){ + dap_string_truncate(l_reply_str, l_reply_str->len - 2); + dap_string_append_printf(l_reply_str, "\n"); + } + dap_string_append_printf( l_reply_str, "]\n\n"); dap_http_simple_reply( a_http_simple, l_reply_str->str, l_reply_str->len ); dap_string_free(l_reply_str, true);