1 Change bogus '(unsigned long)' cast to '(unsigned short)' 2 3 Index: libxml/xmlregexp.c 4 =================================================================== 5 --- libxml.orig/xmlregexp.c 2010-07-09 14:16:36.990430641 -0700 6 +++ libxml/xmlregexp.c 2010-07-09 14:16:40.939742007 -0700 7 @@ -6470,7 +6470,7 @@ 8 if (name != NULL) { 9 value += 30 * (*name); 10 while ((ch = *name++) != 0) { 11 - value = value ^ ((value << 5) + (value >> 3) + (unsigned long)ch); 12 + value = value ^ ((value << 5) + (value >> 3) + (unsigned short)ch); 13 } 14 } 15 return (value); 16