On 11/03/10 11:29, Chen Guo wrote:
How stupid of me:
+int
+memcoll0 (const char *s1, size_t s1len, const char *s2, size_t s2len)
+{
+ int diff;
+ if (!(s1len> 0&& s1[s1len] == '\0'))
+ abort ();
+ if (!(s2len> 0&& s2[s2len] == '\0'))
+ abort ();
should obviously be s1[s1len - 1] and s2[s2len - 1].
Right.
I know Bruno suggestd it, but I wonder is abort() a bit drastic here?
Perhaps something like this might be more general?
if (s1len==0 && s2len==0)
return 0
else if (s1len==0)
return 1;
else if (s2len==0)
return -1;
Also s1len is a bit confusing as it's not the strlen()
it's the size of the s1 buffer. I'd prefer s1size.
I hope to do a full review soon.
thanks,
Pádraig.