Return to BSD News archive
Newsgroups: comp.os.386bsd.bugs
Path: sserve!manuel.anu.edu.au!munnari.oz.au!news.Hawaii.Edu!ames!agate!howland.reston.ans.net!wupost!sdd.hp.com!apollo.hp.com!netnews
From: sommerfeld@apollo.hp.com (Bill Sommerfeld)
Subject: Re: cvs 1.3 bugfix
Sender: usenet@apollo.hp.com (Usenet News)
Message-ID: <SOMMERFELD.93Mar3180839@blatt.apollo.hp.com>
In-Reply-To: rich@Rice.edu's message of Wed, 3 Mar 1993 17:40:46 GMT
Date: Wed, 3 Mar 1993 23:05:47 GMT
Lines: 46
References: <RICH.93Mar3114046@omicron.Rice.edu>
Nntp-Posting-Host: snarfblatt.ch.apollo.hp.com
Organization: Hewlett Packard
In article <RICH.93Mar3114046@omicron.Rice.edu> rich@Rice.edu (Richard Murphey) writes:
Newsgroups: comp.os.386bsd.bugs
Path: apollo.hp.com!sdd.hp.com!usc!wupost!newsfeed.rice.edu!rice!news.Rice.edu!rich
From: rich@Rice.edu (Richard Murphey)
Sender: news@rice.edu (News)
Reply-To: Rich@Rice.edu
Organization: Department of Electrical and Computer Engineering, Rice
University
Date: Wed, 3 Mar 1993 17:40:46 GMT
Lines: 30
Upon invocation, cvs just spins, consuming CPU time. The patch below
fixes this problem.
For the << operator, the result is undefined if the right hand operand
is greater than the width of the left hand operand.
Rich
*** lib/sighandle.c~ Tue Mar 31 15:55:14 1992
--- lib/sighandle.c Wed Mar 3 11:03:04 1993
***************
*** 112,118 ****
#ifdef POSIX
(void) sigfillset(&sigset_test);
! for (i = 1; sigismember(&sigset_test, i) == 1; i++)
;
if (i < SIGMAX)
i = SIGMAX;
--- 112,119 ----
#ifdef POSIX
(void) sigfillset(&sigset_test);
! for (i = 1; ( sigismember(&sigset_test, i) == 1
! && (i < sizeof(sigset_test) * 8)); i++)
;
if (i < SIGMAX)
i = SIGMAX;
I think this is a bug in the sigismember macro, not in cvs....