|
From: Seth D. <set...@us...> - 2005-01-14 00:10:29
|
Update of /cvsroot/frontierkernel/Frontier/Common/source In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9387/Common/source Modified Files: stringverbs.c Log Message: Added optional parameter "ix" to string.patternMatch(). Specifies the position in the source string at which the search should start. Index: stringverbs.c =================================================================== RCS file: /cvsroot/frontierkernel/Frontier/Common/source/stringverbs.c,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** stringverbs.c 11 Jan 2005 22:48:11 -0000 1.9 --- stringverbs.c 14 Jan 2005 00:10:19 -0000 1.10 *************** *** 1821,1834 **** Handle hsearch, hpattern; long ixmatch; if (!getreadonlytextvalue (hp1, 1, &hpattern)) return (false); flnextparamislast = true; ! if (!getreadonlytextvalue (hp1, 2, &hsearch)) return (false); ! ixmatch = searchhandle (hsearch, hpattern, 0, longinfinity); setlongvalue (ixmatch + 1, v); --- 1821,1846 ---- Handle hsearch, hpattern; long ixmatch; + short ctconsumed = 2; + short ctpositional = 2; + tyvaluerecord vixstart; if (!getreadonlytextvalue (hp1, 1, &hpattern)) return (false); + if (!getreadonlytextvalue (hp1, 2, &hsearch)) + return (false); + flnextparamislast = true; ! setlongvalue (1, &vixstart); ! ! /* 2004-12-27 smd: added optional ix parameter */ ! if (!getoptionalparamvalue (hp1, &ctconsumed, &ctpositional, "\x02""ix", &vixstart)) return (false); ! if (vixstart.data.longvalue > 0) /*switch to 0-index*/ ! --vixstart.data.longvalue; ! ! ixmatch = searchhandle (hsearch, hpattern, vixstart.data.longvalue, longinfinity); setlongvalue (ixmatch + 1, v); |