From 2dfeabdd9b815f4f0a9f8dfa1cfdb12aaa36fc8b Mon Sep 17 00:00:00 2001 From: Manish Singh Date: Sat, 10 Jan 2004 08:15:24 +0000 Subject: [PATCH] 64-bit cleanliness fixes. Sat Jan 10 00:11:12 2004 Manish Singh * glib/gutils.h (g_bit_nth_lsf,g_bit_nth_msf): 64-bit cleanliness fixes. * docs/reference/glib/tmpl/misc_utils.sgml: update to reflect the above take gulongs now. My docs suck, someone should revisit it. --- ChangeLog | 8 ++++++++ ChangeLog.pre-2-10 | 8 ++++++++ ChangeLog.pre-2-12 | 8 ++++++++ ChangeLog.pre-2-4 | 8 ++++++++ ChangeLog.pre-2-6 | 8 ++++++++ ChangeLog.pre-2-8 | 8 ++++++++ docs/reference/glib/tmpl/misc_utils.sgml | 10 ++++++---- glib/gutils.h | 6 +++--- 8 files changed, 57 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index 8027e9e..a9f7c27 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +Sat Jan 10 00:11:12 2004 Manish Singh + + * glib/gutils.h (g_bit_nth_lsf,g_bit_nth_msf): 64-bit cleanliness + fixes. + + * docs/reference/glib/tmpl/misc_utils.sgml: update to reflect the + above take gulongs now. My docs suck, someone should revisit it. + Fri Dec 19 11:49:21 2003 George Lebl * glib/grand.c diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 8027e9e..a9f7c27 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,11 @@ +Sat Jan 10 00:11:12 2004 Manish Singh + + * glib/gutils.h (g_bit_nth_lsf,g_bit_nth_msf): 64-bit cleanliness + fixes. + + * docs/reference/glib/tmpl/misc_utils.sgml: update to reflect the + above take gulongs now. My docs suck, someone should revisit it. + Fri Dec 19 11:49:21 2003 George Lebl * glib/grand.c diff --git a/ChangeLog.pre-2-12 b/ChangeLog.pre-2-12 index 8027e9e..a9f7c27 100644 --- a/ChangeLog.pre-2-12 +++ b/ChangeLog.pre-2-12 @@ -1,3 +1,11 @@ +Sat Jan 10 00:11:12 2004 Manish Singh + + * glib/gutils.h (g_bit_nth_lsf,g_bit_nth_msf): 64-bit cleanliness + fixes. + + * docs/reference/glib/tmpl/misc_utils.sgml: update to reflect the + above take gulongs now. My docs suck, someone should revisit it. + Fri Dec 19 11:49:21 2003 George Lebl * glib/grand.c diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 8027e9e..a9f7c27 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,11 @@ +Sat Jan 10 00:11:12 2004 Manish Singh + + * glib/gutils.h (g_bit_nth_lsf,g_bit_nth_msf): 64-bit cleanliness + fixes. + + * docs/reference/glib/tmpl/misc_utils.sgml: update to reflect the + above take gulongs now. My docs suck, someone should revisit it. + Fri Dec 19 11:49:21 2003 George Lebl * glib/grand.c diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 8027e9e..a9f7c27 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,11 @@ +Sat Jan 10 00:11:12 2004 Manish Singh + + * glib/gutils.h (g_bit_nth_lsf,g_bit_nth_msf): 64-bit cleanliness + fixes. + + * docs/reference/glib/tmpl/misc_utils.sgml: update to reflect the + above take gulongs now. My docs suck, someone should revisit it. + Fri Dec 19 11:49:21 2003 George Lebl * glib/grand.c diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 8027e9e..a9f7c27 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,11 @@ +Sat Jan 10 00:11:12 2004 Manish Singh + + * glib/gutils.h (g_bit_nth_lsf,g_bit_nth_msf): 64-bit cleanliness + fixes. + + * docs/reference/glib/tmpl/misc_utils.sgml: update to reflect the + above take gulongs now. My docs suck, someone should revisit it. + Fri Dec 19 11:49:21 2003 George Lebl * glib/grand.c diff --git a/docs/reference/glib/tmpl/misc_utils.sgml b/docs/reference/glib/tmpl/misc_utils.sgml index 13a4367..426c5fe 100644 --- a/docs/reference/glib/tmpl/misc_utils.sgml +++ b/docs/reference/glib/tmpl/misc_utils.sgml @@ -225,10 +225,11 @@ freed when no longer needed. Find the position of the first bit set in @mask, searching from (but not including) @nth_bit upwards. Bits are numbered from 0 (least significant) -to 31. To start searching from the 0th bit, set @nth_bit to -1. +to sizeof(#gulong) * 8 - 1 (31 or 63, usually). To start searching from the +0th bit, set @nth_bit to -1. -@mask: a #guint32 containing up to 32 bit flags. +@mask: a #gulong containing flags. @nth_bit: the index of the bit to start the search from. @Returns: the index of the first bit set which is higher than @nth_bit. @@ -237,10 +238,11 @@ to 31. To start searching from the 0th bit, set @nth_bit to -1. Find the position of the first bit set in @mask, searching from (but not including) @nth_bit downwards. Bits are numbered from 0 (least significant) -to 31. To start searching from the 31st bit, set @nth_bit to 32 or -1. +to sizeof(#gulong) * 8 - 1 (31 or 63, usually). To start searching from the +last bit, set @nth_bit to -1 or GLIB_SIZEOF_LONG * 8. -@mask: a #guint32 containing up to 32 bit flags. +@mask: a #gulong containing flags. @nth_bit: the index of the bit to start the search from. @Returns: the index of the first bit set which is lower than @nth_bit. diff --git a/glib/gutils.h b/glib/gutils.h index eae7d82..c5c1300 100644 --- a/glib/gutils.h +++ b/glib/gutils.h @@ -236,10 +236,10 @@ g_bit_nth_lsf (gulong mask, do { nth_bit++; - if (mask & (1 << (gulong) nth_bit)) + if (mask & (1UL << nth_bit)) return nth_bit; } - while (nth_bit < 31); + while (nth_bit < ((GLIB_SIZEOF_LONG * 8) - 1)); return -1; } G_INLINE_FUNC gint @@ -251,7 +251,7 @@ g_bit_nth_msf (gulong mask, do { nth_bit--; - if (mask & (1 << (gulong) nth_bit)) + if (mask & (1UL << nth_bit)) return nth_bit; } while (nth_bit > 0); -- 2.7.4