From 2a4f67fc1c946099f7ce5b88f828d897ed3b064f Mon Sep 17 00:00:00 2001 From: JAJames Date: Thu, 5 May 2016 16:56:44 -0400 Subject: [PATCH] added 'free_result' boolean to HTTP::Content --- Jupiter/HTTP_Server.cpp | 3 ++- Jupiter/HTTP_Server.h | 1 + Release/Jupiter.lib | Bin 302216 -> 302216 bytes 3 files changed, 3 insertions(+), 1 deletion(-) diff --git a/Jupiter/HTTP_Server.cpp b/Jupiter/HTTP_Server.cpp index 249223a..e0ad22f 100644 --- a/Jupiter/HTTP_Server.cpp +++ b/Jupiter/HTTP_Server.cpp @@ -540,7 +540,8 @@ int Jupiter::HTTP::Server::Data::process_request(HTTPSession &session) if (command == HTTPCommand::GET) result += *content_result; - delete content_result; + if (content->free_result) + delete content_result; session.sock.send(result); } diff --git a/Jupiter/HTTP_Server.h b/Jupiter/HTTP_Server.h index f02edfc..c190c17 100644 --- a/Jupiter/HTTP_Server.h +++ b/Jupiter/HTTP_Server.h @@ -51,6 +51,7 @@ namespace Jupiter struct JUPITER_API Content { + bool free_result = true; Jupiter::HTTP::Server::HTTPFunction *function; // function to generate content data Jupiter::StringS name; // name of the content unsigned int name_checksum; // name.calcChecksum() diff --git a/Release/Jupiter.lib b/Release/Jupiter.lib index 1b1a90572a9410072793bd05989f99cd9822af34..92dee0182892c20c3fdceb98c86cf989ccc5b638 100644 GIT binary patch delta 25580 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 delta 25580 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 oBl+_<&9*htY3L;faNOD(yjcRNHI