Author: richter Date: Sat May 11 12:59:43 2013 New Revision: 1481318 URL: http://svn.apache.org/r1481318 Log: Fix problem with = in query string value
Modified: perl/embperl/trunk/epinit.c Modified: perl/embperl/trunk/epinit.c URL: http://svn.apache.org/viewvc/perl/embperl/trunk/epinit.c?rev=1481318&r1=1481317&r2=1481318&view=diff ============================================================================== --- perl/embperl/trunk/epinit.c (original) +++ perl/embperl/trunk/epinit.c Sat May 11 12:59:43 2013 @@ -1026,6 +1026,7 @@ static int embperl_GetFormData (/*i/o*/ bool bNoUtf8 = (r -> Config.bOptions & optFormDataNoUtf8) != 0 ; bool bDebug = (r -> Config.bDebug & dbgForm) != 0 ; int mayutf8 = 0 ; + bool bInValue = false ; char c ; epTHX ; @@ -1073,16 +1074,9 @@ static int embperl_GetFormData (/*i/o*/ } *p++ = num ; break ; - case '=': - nKey = p - pKey ; - *p++ = r -> Config.cMultFieldSep ; - nVal = 0 ; - pVal = p ; - pQueryString++ ; - nLen-- ; - break ; case ';': case '&': + bInValue = false ; pQueryString++ ; nLen-- ; case '\0': @@ -1159,6 +1153,19 @@ static int embperl_GetFormData (/*i/o*/ break ; + case '=': + if (!bInValue) + { + nKey = p - pKey ; + *p++ = r -> Config.cMultFieldSep ; + nVal = 0 ; + pVal = p ; + pQueryString++ ; + nLen-- ; + bInValue = true ; + break ; + } + /* fall through */ default: c = *p++ = *pQueryString++ ; nLen-- ; --------------------------------------------------------------------- To unsubscribe, e-mail: embperl-cvs-unsubscr...@perl.apache.org For additional commands, e-mail: embperl-cvs-h...@perl.apache.org