-const char pcrs_rcs[] = "$Id: pcrs.c,v 1.14 2001/09/09 21:41:57 oes Exp $";
+const char pcrs_rcs[] = "$Id: pcrs.c,v 1.15 2001/09/20 16:11:06 steudten Exp $";
/*********************************************************************
*
*
* Revisions :
* $Log: pcrs.c,v $
+ * Revision 1.15 2001/09/20 16:11:06 steudten
+ *
+ * Add casting for some string functions.
+ *
* Revision 1.14 2001/09/09 21:41:57 oes
* Fixing yet another silly bug
*
case 's': rc |= PCRE_DOTALL; break;
case 'x': rc |= PCRE_EXTENDED; break;
case 'U': rc |= PCRE_UNGREEDY; break;
- case 'T': *flags |= PCRS_TRIVIAL; break;
+ case 'T': *flags |= PCRS_TRIVIAL; break;
default: break;
}
}
int pcrs_execute(pcrs_job *job, char *subject, size_t subject_length, char **result, size_t *result_length)
{
int offsets[3 * PCRS_MAX_SUBMATCHES],
- offset, i, k,
+ offset,
+ i, k,
matches_found,
newsize,
submatches,
/* Storage for matches exhausted? -> Extend! */
if (++i >= max_matches)
{
- max_matches *= PCRS_MAX_MATCH_GROW;
+ max_matches = (int) (max_matches * PCRS_MAX_MATCH_GROW);
if (NULL == (dummy = (pcrs_match *)realloc(matches, max_matches * sizeof(pcrs_match))))
{
free(matches);
/* Don't loop on empty matches */
if (offsets[1] == offset)
- if (offset < subject_length)
+ /* FIXME: is offset an int or a size_t? Previous line compares
+ * against int, the next one compares against size_t.
+ */
+ if ((size_t)offset < subject_length)
offset++;
else
break;