Changeset 22934
- Timestamp:
- 2010-09-21T18:45:17+12:00 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
main/trunk/greenstone2/runtime-src/src/recpt/cgiutils.cpp
r22796 r22934 412 412 text_t::const_iterator end = intext.end (); 413 413 414 while (here != end) {415 if (( here+2<end) && *here == '%' && *(here+1) == '2' &&416 (*(here+2) == 'C' || *(here+2) == 'c')) {414 /*while (here != end) { 415 if (((here+2)<end) && *here == '%' && *(here+1) == '2' 416 && (*(here+2) == 'C' || *(here+2) == 'c')) { 417 417 here += 2; 418 418 outtext.push_back(','); … … 421 421 ++here; 422 422 } 423 return outtext;*/ 424 425 // iterators do not allow a forward increment/peek that goes past 426 // iterator's end: tests like (here+2 <end) above cause errors if 427 // the result ends up being > end. So have to test one character 428 // at a time, since tests like (here != end) *are* allowed: 429 430 while (here != end) { // look for "%2C" to replace with "," 431 if(*here == '%') { 432 ++here; 433 if(here != end && *here == '2') { 434 ++here; 435 if(here != end && (*here == 'C' || *here == 'c')) { 436 outtext.push_back(','); 437 } else { 438 here -= 2; 439 outtext.push_back (*here); 440 } 441 } else { // go back to % char and push it back 442 --here; 443 outtext.push_back (*here); 444 } 445 } else { 446 outtext.push_back (*here); 447 } 448 449 ++here; 450 } // end while 423 451 return outtext; 424 452 }
Note:
See TracChangeset
for help on using the changeset viewer.