(heim_bit_string_cmp): try handle corner cases better

git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@15743 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
Love Hörnquist Åstrand
2005-07-25 21:03:26 +00:00
parent 988d292b08
commit 68d93ba416

View File

@@ -60,10 +60,12 @@ heim_bit_string_cmp(const heim_bit_string *p, const heim_bit_string *q)
i = memcmp(p->data, q->data, p->length / 8);
if (i)
return i;
i = p->length / 8;
if ((p->length % 8) == 0)
return 0;
i = (p->length / 8);
r1 = ((unsigned char *)p->data)[i];
r2 = ((unsigned char *)q->data)[i];
i = 8 - p->length % 8;
i = 8 - (p->length % 8);
r1 = r1 >> i;
r2 = r2 >> i;
return r1 - r2;