Fixed a last minute regression due to removal REQUEST.chunked_input

This commit is contained in:
Jocelyn Fiat
2012-04-13 17:19:14 +02:00
parent 21b03a05fd
commit 34c6288032
3 changed files with 23 additions and 4 deletions

View File

@@ -166,11 +166,29 @@ feature -- Retrieve content from WGI_INPUT_STREAM
retrieve_data ( req : WSF_REQUEST) : STRING retrieve_data ( req : WSF_REQUEST) : STRING
-- retrieve the content from the input stream -- retrieve the content from the input stream
-- handle differents transfers -- handle differents transfers
local
l_input: WGI_INPUT_STREAM
n: INTEGER
s: STRING
do do
Result := ""
if req.is_chunked_input then if req.is_chunked_input then
if attached req.chunked_input as l_chunked_input then l_input := req.input
Result := l_chunked_input.data.as_string_8 from
n := 1_024
create Result.make (n)
until
n = 0
loop
l_input.read_string (n)
s := l_input.last_string
if s.count = 0 then
n := 0
else
if s.count < n then
n := 0
end
Result.append (s)
end
end end
else else
req.input.read_string (req.content_length_value.as_integer_32) req.input.read_string (req.content_length_value.as_integer_32)
@@ -203,7 +221,6 @@ feature -- Handle responses
res.put_string (a_description) res.put_string (a_description)
end end
handle_precondition_fail_response (a_description: STRING; ctx: C; req: WSF_REQUEST; res: WSF_RESPONSE ) handle_precondition_fail_response (a_description: STRING; ctx: C; req: WSF_REQUEST; res: WSF_RESPONSE )
local local
h : HTTP_HEADER h : HTTP_HEADER

View File

@@ -11,6 +11,7 @@
</option> </option>
<library name="base" location="$ISE_LIBRARY/library/base/base-safe.ecf"/> <library name="base" location="$ISE_LIBRARY/library/base/base-safe.ecf"/>
<library name="http" location="..\..\protocol\http\http-safe.ecf"/> <library name="http" location="..\..\protocol\http\http-safe.ecf"/>
<library name="ewsgi" location="..\ewsgi\ewsgi-safe.ecf"/>
<library name="wsf-safe" location="..\wsf\wsf-safe.ecf"/> <library name="wsf-safe" location="..\wsf\wsf-safe.ecf"/>
<cluster name="src" location="./src" recursive="true"/> <cluster name="src" location="./src" recursive="true"/>
</target> </target>

View File

@@ -11,6 +11,7 @@
</option> </option>
<library name="base" location="$ISE_LIBRARY/library/base/base.ecf"/> <library name="base" location="$ISE_LIBRARY/library/base/base.ecf"/>
<library name="http" location="..\..\protocol\http\http.ecf"/> <library name="http" location="..\..\protocol\http\http.ecf"/>
<library name="ewsgi" location="..\ewsgi\ewsgi.ecf"/>
<library name="wsf" location="..\wsf\wsf.ecf"/> <library name="wsf" location="..\wsf\wsf.ecf"/>
<cluster name="src" location="./src" recursive="true"/> <cluster name="src" location="./src" recursive="true"/>
</target> </target>