From e9f1923c1c8802ddc15313f7e8036f548e1fc0a9 Mon Sep 17 00:00:00 2001 From: Terence Denning <terrencedenning@gmail.com> Date: Sun, 21 Apr 2019 20:45:22 -0700 Subject: [PATCH] latest --- http-server.c | 19 ++++++++----------- server | Bin 22632 -> 22680 bytes 2 files changed, 8 insertions(+), 11 deletions(-) diff --git a/http-server.c b/http-server.c index 8bb9bf8..b627f7a 100644 --- a/http-server.c +++ b/http-server.c @@ -225,8 +225,8 @@ static bool handle_http_request(int sockfd) user1_start = 0; user2_start = 0; for(int i=0; i<100; i++){ - strcpy(user1_guesses[i], ""); - strcpy(user2_guesses[i],""); + memset(user1_guesses[i], '\0', 100); + memset(user2_guesses[i], '\0', 100); } webpage = "html/6_endgame.html"; } @@ -235,8 +235,7 @@ static bool handle_http_request(int sockfd) } else if( gameover == 1){ webpage = "html/6_endgame.html"; gameover = 0; - } - else { + } else { webpage = "html/5_discarded.html"; } } else if(sockfd == user2){ @@ -257,18 +256,16 @@ static bool handle_http_request(int sockfd) user1_start = 0; user2_start = 0; for(int i=0; i<100; i++){ - strcpy(user1_guesses[i], ""); - strcpy(user2_guesses[i],""); + memset(user1_guesses[i], '\0', 100); + memset(user2_guesses[i], '\0', 100); } webpage = "html/6_endgame.html"; } } - } - else if( gameover == 1){ + } else if( gameover == 1){ webpage = "html/6_endgame.html"; gameover = 0; - } - else { + } else { webpage = "html/5_discarded.html"; } } else { @@ -306,7 +303,7 @@ static bool handle_http_request(int sockfd) buff[p1] = buff[p2]; ++p2; // put the separator - buff[p2++] = ','; + buff[p2++] = ' '; buff[p2++] = ' '; // copy the username strncpy(buff + p2, username, username_length); diff --git a/server b/server index 00938fb81485c1556c43662239b1ea99bea2e934..61dd2a1d1121649a9a42fb260714defd04618b8c 100755 GIT binary patch delta 5527 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 V5!0K@8DY-F28}~*#>rlRasXvR0nPvb delta 5314 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 -- GitLab