From 04d40897cf98469b39f1d97208a51deb65f70bc5 Mon Sep 17 00:00:00 2001 From: Dean Camera Date: Fri, 19 Feb 2010 00:07:22 +0000 Subject: Commit for the 100219 release. --- Projects/Webserver/Lib/HTTPServerApp.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'Projects/Webserver/Lib/HTTPServerApp.c') diff --git a/Projects/Webserver/Lib/HTTPServerApp.c b/Projects/Webserver/Lib/HTTPServerApp.c index b6277d3dbe..4e00952f36 100644 --- a/Projects/Webserver/Lib/HTTPServerApp.c +++ b/Projects/Webserver/Lib/HTTPServerApp.c @@ -100,13 +100,9 @@ void HTTPServerApp_Callback(void) if (uip_aborted() || uip_timedout() || uip_closed()) { - /* Connection is being terminated for some reason - close file handle */ - f_close(&AppState->HTTPServer.FileHandle); - AppState->HTTPServer.FileOpen = false; - /* Lock to the closed state so that no further processing will occur on the connection */ - AppState->HTTPServer.CurrentState = WEBSERVER_STATE_Closed; - AppState->HTTPServer.NextState = WEBSERVER_STATE_Closed; + AppState->HTTPServer.CurrentState = WEBSERVER_STATE_Closing; + AppState->HTTPServer.NextState = WEBSERVER_STATE_Closing; } if (uip_connected()) @@ -148,9 +144,15 @@ void HTTPServerApp_Callback(void) HTTPServerApp_SendData(); break; case WEBSERVER_STATE_Closing: + /* Connection is being terminated for some reason - close file handle */ + f_close(&AppState->HTTPServer.FileHandle); + AppState->HTTPServer.FileOpen = false; + + /* If connection is not already closed, close it */ uip_close(); - AppState->HTTPServer.NextState = WEBSERVER_STATE_Closed; + AppState->HTTPServer.CurrentState = WEBSERVER_STATE_Closed; + AppState->HTTPServer.NextState = WEBSERVER_STATE_Closed; break; } } -- cgit v1.2.3