Account for properties when a and/or b are 0: gcd(0, 0) = 0 gcd(a, 0) = a gcd(0, b) = b
Cc: sta...@vger.kernel.org Signed-off-by: Davidlohr Bueso <d...@gnu.org> --- lib/gcd.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/gcd.c b/lib/gcd.c index cce4f3c..7e163c6 100644 --- a/lib/gcd.c +++ b/lib/gcd.c @@ -7,6 +7,9 @@ unsigned long gcd(unsigned long a, unsigned long b) { unsigned long r; + if (!a || !b) + return a | b; + if (a < b) swap(a, b); while ((r = a % b) != 0) { -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/