From 6c2d2a3a04f2da57da43a3e2c5dfbe5dc7d67063 Mon Sep 17 00:00:00 2001 From: Hans Fugal Date: Sat, 3 Jun 2006 00:14:53 +0000 Subject: [PATCH] r20@gandalf: fugalh | 2006-06-02 18:14:26 -0600 change_bit bounds check git-svn-id: svn://localhost/ardour2/trunk@561 d708f5d6-7413-0410-9779-e7cbd77b26cf --- libs/ardour/globals.cc | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/libs/ardour/globals.cc b/libs/ardour/globals.cc index 4879e373d5..23e93ee2a9 100644 --- a/libs/ardour/globals.cc +++ b/libs/ardour/globals.cc @@ -323,10 +323,17 @@ ARDOUR::new_change () Change c; static uint32_t change_bit = 1; - /* XXX catch out-of-range */ + /* catch out-of-range */ + if (!change_bit) + { + fatal << _("programming error: ") + << "change_bit out of range in ARDOUR::new_change()" + << endmsg; + /*NOTREACHED*/ + } c = Change (change_bit); - change_bit <<= 1; + change_bit <<= 1; // if it shifts too far, change_bit == 0 return c; }