@@ -67,17 +67,16 @@ bool find_substring(const char *first, const char *last, const char *s_first, co
67
67
void get_data (TCPSocket* sock){
68
68
bool result = false ;
69
69
// Server will respond with HTTP GET's success code
70
- int len = 0 ;
71
- int ret;
72
- while ((ret = sock->recv (buffer+len, sizeof (buffer) - 1 - len)) > 0 ) {
73
- len += ret;
74
- }
75
- buffer[len] = ' \0 ' ;
70
+ const int ret = sock->recv (buffer, sizeof (buffer) - 1 );
71
+ if (ret <= 0 )
72
+ return ;
73
+
74
+ buffer[ret] = ' \0 ' ;
76
75
77
76
// Find 200 OK HTTP status in reply
78
- bool found_200_ok = find_substring (buffer, buffer + len , HTTP_OK_STR, HTTP_OK_STR + strlen (HTTP_OK_STR));
77
+ bool found_200_ok = find_substring (buffer, buffer + ret , HTTP_OK_STR, HTTP_OK_STR + strlen (HTTP_OK_STR));
79
78
// Find "Hello World!" string in reply
80
- bool found_hello = find_substring (buffer, buffer + len , HTTP_HELLO_STR, HTTP_HELLO_STR + strlen (HTTP_HELLO_STR));
79
+ bool found_hello = find_substring (buffer, buffer + ret , HTTP_HELLO_STR, HTTP_HELLO_STR + strlen (HTTP_HELLO_STR));
81
80
82
81
TEST_ASSERT_TRUE (found_200_ok);
83
82
TEST_ASSERT_TRUE (found_hello);
@@ -86,7 +85,7 @@ void get_data(TCPSocket* sock){
86
85
87
86
TEST_ASSERT_EQUAL (result, true );
88
87
89
- printf (" HTTP: Received %d chars from server\r\n " , len );
88
+ printf (" HTTP: Received %d chars from server\r\n " , ret );
90
89
printf (" HTTP: Received 200 OK status ... %s\r\n " , found_200_ok ? " [OK]" : " [FAIL]" );
91
90
printf (" HTTP: Received '%s' status ... %s\r\n " , HTTP_HELLO_STR, found_hello ? " [OK]" : " [FAIL]" );
92
91
printf (" HTTP: Received message:\r\n " );
0 commit comments