From a1de322c18d9efdf885ea5b760a404237dcdc0a8 Mon Sep 17 00:00:00 2001 From: Peter Bozsó Date: Sat, 30 Jul 2016 08:45:11 +0200 Subject: CLOUD: Use overriden handle() instead of ClientHandlerCallback in page handlers Using a dedicated callback object for this was an unnecessary overhead. --- .../sdl_net/handlers/resourcehandler.cpp | 32 ++++++++++------------ 1 file changed, 14 insertions(+), 18 deletions(-) (limited to 'backends/networking/sdl_net/handlers/resourcehandler.cpp') diff --git a/backends/networking/sdl_net/handlers/resourcehandler.cpp b/backends/networking/sdl_net/handlers/resourcehandler.cpp index 410665f3cc..890c2a7b95 100644 --- a/backends/networking/sdl_net/handlers/resourcehandler.cpp +++ b/backends/networking/sdl_net/handlers/resourcehandler.cpp @@ -30,22 +30,6 @@ ResourceHandler::ResourceHandler() {} ResourceHandler::~ResourceHandler() {} -void ResourceHandler::handle(Client &client) { - Common::String filename = client.path(); - filename.deleteChar(0); - - // if archive hidden file is requested, ignore - if (filename.size() && filename[0] == '.') - return; - - // if file not found, don't set handler either - Common::SeekableReadStream *file = HandlerUtils::getArchiveFile(filename); - if (file == nullptr) - return; - - LocalWebserver::setClientGetHandler(client, file, 200, determineMimeType(filename)); -} - const char *ResourceHandler::determineMimeType(Common::String &filename) { // text if (filename.hasSuffix(".html")) return "text/html"; @@ -68,8 +52,20 @@ const char *ResourceHandler::determineMimeType(Common::String &filename) { /// public -ClientHandlerCallback ResourceHandler::getHandler() { - return new Common::Callback(this, &ResourceHandler::handle); +void ResourceHandler::handle(Client &client) { + Common::String filename = client.path(); + filename.deleteChar(0); + + // if archive hidden file is requested, ignore + if (filename.size() && filename[0] == '.') + return; + + // if file not found, don't set handler either + Common::SeekableReadStream *file = HandlerUtils::getArchiveFile(filename); + if (file == nullptr) + return; + + LocalWebserver::setClientGetHandler(client, file, 200, determineMimeType(filename)); } } // End of namespace Networking -- cgit v1.2.3