mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-02-25 11:42:10 +01:00
parent
10be2c12ab
commit
2f8c61314c
@ -874,12 +874,20 @@ g_array_binary_search (GArray *array,
|
||||
static guint
|
||||
g_nearest_pow (guint num)
|
||||
{
|
||||
guint n = 1;
|
||||
guint n = num - 1;
|
||||
|
||||
while (n < num && n > 0)
|
||||
n <<= 1;
|
||||
g_assert (num > 0);
|
||||
|
||||
return n ? n : num;
|
||||
n |= n >> 1;
|
||||
n |= n >> 2;
|
||||
n |= n >> 4;
|
||||
n |= n >> 8;
|
||||
n |= n >> 16;
|
||||
#if GLIB_SIZEOF_INT == 8
|
||||
n |= n >> 32;
|
||||
#endif
|
||||
|
||||
return n + 1;
|
||||
}
|
||||
|
||||
static void
|
||||
|
Loading…
x
Reference in New Issue
Block a user