diff options
author | sotech117 <michael_foiani@brown.edu> | 2023-09-24 03:54:54 -0400 |
---|---|---|
committer | sotech117 <michael_foiani@brown.edu> | 2023-09-24 03:54:54 -0400 |
commit | 28d4aacf00d6b7389dd2440060541a623ec25f1d (patch) | |
tree | 3effc115f96157947af3a6615c44aa17e7cbf2ea /server.c | |
parent | 538d22688c4ae07d8ee9b9d1ec2ebbe80adddf47 (diff) |
important small things
Diffstat (limited to 'server.c')
-rw-r--r-- | server.c | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -807,8 +807,10 @@ void *send_stationsinfo_reply(void * arg) { if (l) printf("sending STATIONSINFO reply to socket %d\n", fd); uint8_t reply_size = 0; - for (int i = 0; i < num_stations; i++) - reply_size += snprintf(NULL, 0, "%d,%s\n", i, stations[i].filePath); + for (int i = 0; i < num_stations; i++) { + if (stations[i].readfd != -1) + reply_size += snprintf(NULL, 0, "%d,%s\n", i, stations[i].filePath); + } reply_size--; // don't want final \n // send type @@ -821,8 +823,10 @@ void *send_stationsinfo_reply(void * arg) { char send_buffer[reply_size]; int ptr = 0; - for (int i = 0; i < num_stations; i++) + for (int i = 0; i < num_stations; i++) { + if (stations[i].readfd != -1) ptr += sprintf(send_buffer + ptr, (i == num_stations - 1) ? "%d,%s" : "%d,%s\n", i, stations[i].filePath); + } int bytes_to_send = reply_size; // don't want final \n if (send_all(fd, &send_buffer, &bytes_to_send) == -1) |