Changeset 1504


Ignore:
Timestamp:
2000-09-06T14:06:58+12:00 (24 years ago)
Author:
sjboddie
Message:

'-'s in the compressed args are now escaped with 'Zz' (instead of the old 'z')
I know this is an ugly hack... It works though.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/gsdl/src/recpt/cgiutils.cpp

    r1422 r1504  
    132132
    133133  while (here != end) {
    134     if (*here == '-') outtext += "Z-";
     134    if (*here == '-') outtext += "Zz-";
    135135    else outtext.push_back (*here);
    136136    here ++;
     
    321321      text_t::const_iterator sav = arg_ehere;
    322322      arg_ehere = getdelimitstr (arg_ehere, arg_eend, '-', argvalue);
    323       // replace any '-' chars escaped with 'Z'
     323      // replace any '-' chars escaped with 'Zz'
    324324      bool first = true;
    325       while (*(arg_ehere-2) == 'Z') {
     325      while ((*(arg_ehere-3) == 'Z') && (*(arg_ehere-2) == 'z')) {
    326326        if (first) argvalue.clear();
    327327        arg_ehere = (findchar (arg_ehere, arg_eend, '-')) + 1;
    328328        while (sav != (arg_ehere-1)) {
    329           if (!((*sav == 'Z') && (*(sav+1) == '-'))) argvalue.push_back (*sav);
     329          if (!((*sav == 'Z') && (*(sav+1) == 'z') && (*(sav+2) == '-')) &&
     330          !((*(sav-1) == 'Z') && (*sav == 'z') && (*(sav+1) == '-'))) argvalue.push_back (*sav);
    330331          sav ++;
    331332        }
Note: See TracChangeset for help on using the changeset viewer.