mirror of
https://git.openafs.org/openafs.git
synced 2025-01-18 15:00:12 +00:00
STABLE14-gcc42-integer-overflow-fix-20071007
fix issue where gcc 4.2 compiled kernel modules were breaking on linux
====================
This delta was composed from multiple commits as part of the CVS->Git migration.
The checkin message with each commit was inconsistent.
The following are the additional commit messages.
====================
with fix from Hans-Werner Pulsen
====================
with fix from Hans-Werner Pulsen
(cherry picked from commit 7832148ae0
)
This commit is contained in:
parent
c8e8dedca6
commit
b14fed71a5
@ -478,7 +478,7 @@ DirHash(register char *string)
|
||||
{
|
||||
/* Hash a string to a number between 0 and NHASHENT. */
|
||||
register unsigned char tc;
|
||||
register int hval;
|
||||
unsigned int hval;
|
||||
register int tval;
|
||||
hval = 0;
|
||||
while ((tc = (*string++))) {
|
||||
@ -488,7 +488,7 @@ DirHash(register char *string)
|
||||
tval = hval & (NHASHENT - 1);
|
||||
if (tval == 0)
|
||||
return tval;
|
||||
else if (hval < 0)
|
||||
else if (hval >= 1<<31)
|
||||
tval = NHASHENT - tval;
|
||||
return tval;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user