You are viewing a plain text version of this content. The canonical link for it is here.
Posted to apreq-cvs@httpd.apache.org by jo...@apache.org on 2004/08/04 19:40:55 UTC
cvs commit: httpd-apreq-2/src apreq_cookie.c apreq_params.c
joes 2004/08/04 10:40:55
Modified: glue/perl/xsbuilder/Apache/Request Apache__Request.h
src apreq_cookie.c apreq_params.c
Log:
Incorporate new req->body_status into apreq_param.c, and add missing NULL argument to the apr_table_do call in apreq_ua_cookie_version().
Revision Changes Path
1.54 +1 -1 httpd-apreq-2/glue/perl/xsbuilder/Apache/Request/Apache__Request.h
Index: Apache__Request.h
===================================================================
RCS file: /home/cvs/httpd-apreq-2/glue/perl/xsbuilder/Apache/Request/Apache__Request.h,v
retrieving revision 1.53
retrieving revision 1.54
diff -u -r1.53 -r1.54
--- Apache__Request.h 3 Aug 2004 18:07:58 -0000 1.53
+++ Apache__Request.h 4 Aug 2004 17:40:54 -0000 1.54
@@ -106,7 +106,7 @@
req = apreq_request(env, data);
/*FIXME: mg_mg->ptr */
- sv = apreq_xs_2sv(req, SvPV_nolen(ST(0)),SvRV(ST(1)));
+ sv = apreq_xs_2sv(req, SvPV_nolen(ST(0)), SvRV(ST(1)));
SvTAINTED_on(SvRV(sv));
ST(0) = sv_2mortal(sv);
XSRETURN(1);
1.33 +1 -1 httpd-apreq-2/src/apreq_cookie.c
Index: apreq_cookie.c
===================================================================
RCS file: /home/cvs/httpd-apreq-2/src/apreq_cookie.c,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -r1.32 -r1.33
--- apreq_cookie.c 3 Aug 2004 22:09:48 -0000 1.32
+++ apreq_cookie.c 4 Aug 2004 17:40:54 -0000 1.33
@@ -76,7 +76,7 @@
if (j == NULL || apreq_jar_nelts(j) == 0)
return NETSCAPE;
- else if (apr_table_do(has_rfc_cookie, NULL, j->cookies) == 1)
+ else if (apr_table_do(has_rfc_cookie, NULL, j->cookies, NULL) == 1)
return NETSCAPE;
else
1.46 +44 -21 httpd-apreq-2/src/apreq_params.c
Index: apreq_params.c
===================================================================
RCS file: /home/cvs/httpd-apreq-2/src/apreq_params.c,v
retrieving revision 1.45
retrieving revision 1.46
diff -u -r1.45 -r1.46
--- apreq_params.c 31 Jul 2004 23:56:40 -0000 1.45
+++ apreq_params.c 4 Aug 2004 17:40:54 -0000 1.46
@@ -107,12 +107,19 @@
const char *val = apr_table_get(req->args, name);
while (val == NULL) {
- apr_status_t s = apreq_env_read(req->env, APR_BLOCK_READ, APREQ_READ_AHEAD);
- if (req->body == NULL)
- return NULL;
- val = apr_table_get(req->body, name);
- if (s != APR_INCOMPLETE && val == NULL)
- return NULL;
+ apr_status_t s = req->body_status;
+ switch (s) {
+ case APR_INCOMPLETE:
+ case APR_EINIT:
+ s = apreq_env_read(req->env, APR_BLOCK_READ, APREQ_READ_AHEAD);
+
+ default:
+ if (req->body == NULL)
+ return NULL;
+ val = apr_table_get(req->body, name);
+ if (s != APR_INCOMPLETE && val == NULL)
+ return NULL;
+ }
}
return apreq_value_to_param(apreq_strtoval(val));
@@ -124,9 +131,12 @@
{
apr_status_t s;
- do s = apreq_env_read(req->env, APR_BLOCK_READ, APREQ_READ_AHEAD);
- while (s == APR_INCOMPLETE);
-
+ switch (req->body_status) {
+ case APR_INCOMPLETE:
+ case APR_EINIT:
+ do s = apreq_env_read(req->env, APR_BLOCK_READ, APREQ_READ_AHEAD);
+ while (s == APR_INCOMPLETE);
+ }
return req->body ? apr_table_overlay(pool, req->args, req->body) :
apr_table_copy(pool, req->args);
}
@@ -151,8 +161,12 @@
apr_table_do(param_push, arr, req->args, key, NULL);
- do s = apreq_env_read(req->env, APR_BLOCK_READ, APREQ_READ_AHEAD);
- while (s == APR_INCOMPLETE);
+ switch (req->body_status) {
+ case APR_INCOMPLETE:
+ case APR_EINIT:
+ do s = apreq_env_read(req->env, APR_BLOCK_READ, APREQ_READ_AHEAD);
+ while (s == APR_INCOMPLETE);
+ }
if (req->body)
apr_table_do(param_push, arr, req->body, key, NULL);
@@ -318,9 +332,13 @@
{
apr_table_t *t;
apr_status_t s;
- do s = apreq_env_read(req->env, APR_BLOCK_READ, APREQ_READ_AHEAD);
- while (s == APR_INCOMPLETE);
+ switch (req->body_status) {
+ case APR_INCOMPLETE:
+ case APR_EINIT:
+ do s = apreq_env_read(req->env, APR_BLOCK_READ, APREQ_READ_AHEAD);
+ while (s == APR_INCOMPLETE);
+ }
if (req->body == NULL)
return NULL;
@@ -348,14 +366,19 @@
{
apreq_param_t *param = NULL;
do {
- apr_status_t s = apreq_env_read(req->env, APR_BLOCK_READ,
- APREQ_READ_AHEAD);
- if (req->body == NULL)
- return NULL;
- apr_table_do(upload_get, ¶m, req->body, key, NULL);
-
- if (s != APR_INCOMPLETE)
- break;
+ apr_status_t s = req->body_status;
+ switch (s) {
+ case APR_INCOMPLETE:
+ case APR_EINIT:
+ s = apreq_env_read(req->env, APR_BLOCK_READ, APREQ_READ_AHEAD);
+
+ default:
+ if (req->body == NULL)
+ return NULL;
+ apr_table_do(upload_get, ¶m, req->body, key, NULL);
+ if (s != APR_INCOMPLETE)
+ return param;
+ }
} while (param == NULL);
return param;