# HG changeset patch # User Markus F.X.J. Oberhumer # Date 1300844002 -3600 # Node ID df978f28a259385fff9af115e961784e406c5707 # Parent 4a9c09239ba13a17bc2ee0d1cb504b9850b74dc4 bdiff.c: cast to unsigned char when computing hash value diff -r 4a9c09239ba1 -r df978f28a259 mercurial/bdiff.c --- a/mercurial/bdiff.c Wed Mar 23 02:33:21 2011 +0100 +++ b/mercurial/bdiff.c Wed Mar 23 02:33:22 2011 +0100 @@ -84,7 +84,7 @@ h = 0; for (p = a; p < a + len; p++) { /* Leonid Yuriev's hash */ - h = (h * 1664525) + *p + 1013904223; + h = (h * 1664525) + (unsigned char)*p + 1013904223; if (*p == '\n' || p == plast) { l->h = h;