[gdk-pixbuf] Fix cppcheck 'shifting signed 32-bit value warning'
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gdk-pixbuf] Fix cppcheck 'shifting signed 32-bit value warning'
- Date: Mon, 25 Nov 2019 23:32:35 +0000 (UTC)
commit 209eb5981afe3bce1b31f273a46aa20b037b7d3a
Author: Emmanuel Fleury <emmanuel fleury u-bordeaux fr>
Date: Wed Mar 27 13:05:39 2019 +0100
Fix cppcheck 'shifting signed 32-bit value warning'
Changed variable to unsigned and slightly improved algorithm performance
(stop when n == 0, no need to keep going until the end).
See issue: #96
gdk-pixbuf/io-bmp.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
---
diff --git a/gdk-pixbuf/io-bmp.c b/gdk-pixbuf/io-bmp.c
index 13ad6f2bc..4c3ad626a 100644
--- a/gdk-pixbuf/io-bmp.c
+++ b/gdk-pixbuf/io-bmp.c
@@ -626,12 +626,11 @@ static gboolean DecodeColormap (guchar *buff,
static void
find_bits (int n, int *lowest, int *n_set)
{
- int i;
-
+ *lowest = 0;
*n_set = 0;
- for (i = 31; i >= 0; i--)
- if (n & (1 << i)) {
+ for (unsigned int i = 31; n != 0; n <<= 1, i--)
+ if (n & ((unsigned int) 1 << 31)) {
*lowest = i;
(*n_set)++;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]