X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fhttp%2Fhttpthread.cpp;h=89edc931cfb884ddaf85e585738a08d1fae6abef;hb=023b2219068d481cd6a300982427c99bacd88a12;hp=ecc4cf57e8b61a9322da038a4778e85234701435;hpb=76805933f794915a72b7f0a21b12af6654759f4f;p=fms.git diff --git a/src/http/httpthread.cpp b/src/http/httpthread.cpp index ecc4cf5..89edc93 100644 --- a/src/http/httpthread.cpp +++ b/src/http/httpthread.cpp @@ -19,49 +19,8 @@ HTTPThread::HTTPThread() std::string portstr; Option::Instance()->Get("HTTPListenPort",portstr); StringFunctions::Convert(portstr,m_listenport); - - // push back page handlers - /* - m_pagehandlers.push_back(new ShowCaptchaPage()); - m_pagehandlers.push_back(new OptionsPage(templatestr)); - m_pagehandlers.push_back(new LocalIdentitiesPage(templatestr)); - m_pagehandlers.push_back(new CreateIdentityPage(templatestr)); - m_pagehandlers.push_back(new AnnounceIdentityPage(templatestr)); - m_pagehandlers.push_back(new AddPeerPage(templatestr)); - m_pagehandlers.push_back(new PeerTrustPage(templatestr)); - m_pagehandlers.push_back(new ControlBoardPage(templatestr)); - m_pagehandlers.push_back(new PeerDetailsPage(templatestr)); - m_pagehandlers.push_back(new PeerMaintenancePage(templatestr)); - m_pagehandlers.push_back(new ExecQueryPage(templatestr)); - m_pagehandlers.push_back(new BoardsPage(templatestr)); - m_pagehandlers.push_back(new InsertedFilesPage(templatestr)); - m_pagehandlers.push_back(new ConfirmPage(templatestr)); - // homepage must be last - catch all page handler - m_pagehandlers.push_back(new HomePage(templatestr)); - */ - } -/* -void HTTPThread::PageCallback(shttpd_arg *arg) -{ - - HTTPThread *thread=(HTTPThread *)arg->user_data; - - for(std::vector::iterator i=thread->m_pagehandlers.begin(); i!=thread->m_pagehandlers.end(); ) - { - if((*i)->Handle(arg)==true) - { - i=thread->m_pagehandlers.end(); - } - else - { - i++; - } - } - -} -*/ void HTTPThread::run() { m_log->debug("HTTPThread::run thread started."); @@ -83,6 +42,12 @@ void HTTPThread::run() m_log->trace("Trying to stop HTTPServer"); srv.stop(); m_log->trace("Stopped HTTPServer"); + + m_log->trace("Waiting for current HTTP requests to finish"); + while(srv.currentConnections()>0) + { + Poco::Thread::sleep(500); + } m_log->debug("HTTPThread::run thread exiting.");