From: Tom Hacohen Date: Wed, 22 Apr 2015 12:17:28 +0000 (+0100) Subject: Eldbus: fix potential unsigned int underflow. X-Git-Tag: v1.14.0-beta3~47 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5e4b523d51c11d073def64e3a2dd268eb3a9ae22;p=platform%2Fupstream%2Fefl.git Eldbus: fix potential unsigned int underflow. Subtracting two unsigned values results in an unsigned value, which means abs() will have no effect. This also means that if base is smaller than size, we'll have an unsigned int underflow. I did it this way (with the if) because it looked like base might be smaller than size. However, please remove the if (and don't reinstate the abs) if this is not the case. --- diff --git a/src/lib/eldbus/eldbus_message_to_eina_value.c b/src/lib/eldbus/eldbus_message_to_eina_value.c index 777bf17..bac9860 100644 --- a/src/lib/eldbus/eldbus_message_to_eina_value.c +++ b/src/lib/eldbus/eldbus_message_to_eina_value.c @@ -91,7 +91,7 @@ _type_offset(char type, unsigned base) return base; if (!(base % size)) return base; - padding = abs(base - size); + padding = (base > size) ? base - size : size - base; return base + padding; }