forked from PsychoticNinja/irssi
stristr() and stristr_full() didn't work correctly with empty needle
argument. git-svn-id: http://svn.irssi.org/repos/irssi/trunk@898 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
parent
1d48bc59ac
commit
cbf45ea6bf
@ -307,8 +307,10 @@ char *stristr(const char *data, const char *key)
|
|||||||
keylen = strlen(key);
|
keylen = strlen(key);
|
||||||
datalen = strlen(data);
|
datalen = strlen(data);
|
||||||
|
|
||||||
if (keylen > datalen || keylen == 0)
|
if (keylen > datalen)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
if (keylen == 0)
|
||||||
|
return (char *) data;
|
||||||
|
|
||||||
max = data+datalen-keylen;
|
max = data+datalen-keylen;
|
||||||
pos = 0;
|
pos = 0;
|
||||||
@ -339,8 +341,10 @@ char *stristr_full(const char *data, const char *key)
|
|||||||
keylen = strlen(key);
|
keylen = strlen(key);
|
||||||
datalen = strlen(data);
|
datalen = strlen(data);
|
||||||
|
|
||||||
if (keylen > datalen || keylen == 0)
|
if (keylen > datalen)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
if (keylen == 0)
|
||||||
|
return (char *) data;
|
||||||
|
|
||||||
max = data+datalen-keylen;
|
max = data+datalen-keylen;
|
||||||
start = data; pos = 0;
|
start = data; pos = 0;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user