|
From: <fe...@us...> - 2012-06-12 15:04:13
|
Revision: 155
http://ehs.svn.sourceforge.net/ehs/?rev=155&view=rev
Author: felfert
Date: 2012-06-12 15:04:07 +0000 (Tue, 12 Jun 2012)
Log Message:
-----------
- Fixed bug in request body handling.
Modified Paths:
--------------
trunk/httprequest.cpp
Modified: trunk/httprequest.cpp
===================================================================
--- trunk/httprequest.cpp 2012-06-12 13:26:25 UTC (rev 154)
+++ trunk/httprequest.cpp 2012-06-12 15:04:07 UTC (rev 155)
@@ -530,7 +530,7 @@
// get the content length
unsigned int nContentLength = 0;
try {
- boost::lexical_cast<unsigned int>(m_oRequestHeaders["Content-Length"]);
+ nContentLength = boost::lexical_cast<unsigned int>(m_oRequestHeaders["Content-Length"]);
} catch (const boost::bad_lexical_cast &e) {
m_nCurrentHttpParseState = HTTPPARSESTATE_INVALIDREQUEST;
continue;
@@ -549,8 +549,8 @@
// otherwise, we've gotten enough data from the client, handle it now
// grab out the actual body from the request and leave the rest
- m_sBody = irsData.substr(0, nContentLength);
- irsData = irsData.substr(nContentLength);
+ m_sBody.assign(irsData.substr(0, nContentLength));
+ irsData.erase(0, nContentLength);
// if we're dealing with multi-part form attachments
if (m_oRequestHeaders["Content-Type"].substr(0, 9) == "multipart") {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|