enhanced string cache for awk

This commit is contained in:
2009-09-19 22:28:49 +00:00
parent ae7b0a5bdd
commit bc43362962
9 changed files with 234 additions and 167 deletions

View File

@ -1,5 +1,5 @@
/*
* $Id: fnc.c 289 2009-09-16 06:35:29Z hyunghwan.chung $
* $Id: fnc.c 290 2009-09-19 04:28:49Z hyunghwan.chung $
*
Copyright 2006-2009 Chung, Hyung-Hwan.
This file is part of QSE.
@ -491,13 +491,13 @@ static int fnc_index (qse_awk_rtx_t* rtx, const qse_cstr_t* fnm)
}
}
/* TODO: ignorecase... */
if (start == 0) start = 1;
else if (start < 0) start = len0 + start + 1;
ptr = (start > len0 || start <= 0)?
QSE_NULL:
qse_strxnstr (&str0[start-1], len0-start+1, str1, len1);
ptr = (start > len0 || start <= 0)? QSE_NULL:
(rtx->gbl.ignorecase)?
qse_strxncasestr (&str0[start-1], len0-start+1, str1, len1):
qse_strxnstr (&str0[start-1], len0-start+1, str1, len1);
idx = (ptr == QSE_NULL)? 0: ((qse_long_t)(ptr-str0) + 1);