From 4b30933904a07de411f72ecd46b953db9ec703e1 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Wed, 10 Mar 1993 20:24:57 +0000 Subject: [PATCH] Formerly file.c.~22~ --- file.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/file.c b/file.c index 9f1fb6d..d5b4c02 100644 --- a/file.c +++ b/file.c @@ -1,4 +1,5 @@ -/* Copyright (C) 1988, 1989, 1990, 1991, 1992 Free Software Foundation, Inc. +/* Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993 + Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify @@ -174,7 +175,8 @@ file_hash_enter (file, name, oldhash, oldname) unsigned int oldhash; char *oldname; { - register unsigned int newhash; + unsigned int oldbucket = oldhash % FILE_BUCKETS; + register unsigned int newhash, newbucket; struct file *oldfile; register char *n; register struct file *f; @@ -182,27 +184,25 @@ file_hash_enter (file, name, oldhash, oldname) newhash = 0; for (n = name; *n != '\0'; ++n) HASH (newhash, *n); - newhash %= FILE_BUCKETS; + newbucket = newhash % FILE_BUCKETS; /* Look for an existing file under the new name. */ - for (oldfile = files[newhash]; oldfile != 0; oldfile = oldfile->next) + for (oldfile = files[newbucket]; oldfile != 0; oldfile = oldfile->next) if (streq (oldfile->name, name)) break; - if (oldhash != 0 && (newhash != oldhash || oldfile != 0)) + if (oldhash != 0 && (newbucket != oldbucket || oldfile != 0)) { /* Remove FILE from its hash bucket. */ struct file *lastf = 0; - oldhash %= FILE_BUCKETS; - - for (f = files[oldhash]; f != file; f = f->next) + for (f = files[oldbucket]; f != file; f = f->next) lastf = f; if (lastf == 0) - files[oldhash] = f->next; + files[oldbucket] = f->next; else lastf->next = f->next; } @@ -216,11 +216,11 @@ file_hash_enter (file, name, oldhash, oldname) { /* There is no existing file with the new name. */ - if (newhash != oldhash) + if (newbucket != oldbucket) { /* Put FILE in its new hash bucket. */ - file->next = files[newhash]; - files[newhash] = file; + file->next = files[newbucket]; + files[newbucket] = file; } } else -- 2.7.4