aboutsummaryrefslogtreecommitdiff
path: root/backends/networking/sdl_net/handlers/resourcehandler.cpp
diff options
context:
space:
mode:
authorPeter Bozsó2016-07-30 08:45:11 +0200
committerAlexander Tkachev2016-08-24 16:07:55 +0600
commita1de322c18d9efdf885ea5b760a404237dcdc0a8 (patch)
treee4f6e1ed65e2198f9420a86800c2cc5276351ef1 /backends/networking/sdl_net/handlers/resourcehandler.cpp
parent712410496e4e59fe1ee1968a94eeb73b51223996 (diff)
downloadscummvm-rg350-a1de322c18d9efdf885ea5b760a404237dcdc0a8.tar.gz
scummvm-rg350-a1de322c18d9efdf885ea5b760a404237dcdc0a8.tar.bz2
scummvm-rg350-a1de322c18d9efdf885ea5b760a404237dcdc0a8.zip
CLOUD: Use overriden handle() instead of ClientHandlerCallback in page handlers
Using a dedicated callback object for this was an unnecessary overhead.
Diffstat (limited to 'backends/networking/sdl_net/handlers/resourcehandler.cpp')
-rw-r--r--backends/networking/sdl_net/handlers/resourcehandler.cpp32
1 files changed, 14 insertions, 18 deletions
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<ResourceHandler, Client &>(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