qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 1/1] block migration: fix return value mismatch


From: Gary Hook
Subject: Re: [Qemu-devel] [PATCH 1/1] block migration: fix return value mismatch
Date: Thu, 13 Nov 2014 16:44:23 +0000

On 11/13/14, 6:46 AM, "Markus Armbruster" <address@hidden> wrote:

Stefan Hajnoczi <address@hidden> writes:

On Wed, Nov 12, 2014 at 06:48:18PM +0000, Gary Hook wrote:
-    return qemu_ftell(f) - last_ftell;
+    delta_ftell = qemu_ftell(f) - last_ftell;
+    return( (delta_ftell > 0) ? 1 : (delta_ftell < 0) ? -1 : 0 );

Good find!

Please don't nest the ternary operator, it is hard to read.

if (delta_ftell < 0) {
     return -1;
} else if (delta_ftell > 0) {
     return 1;
} else {
     return 0;
}

Bah, that's for wimps ;)

    return (delta_ftell > 0) - (delta_ftell < 0);

Look ma, no branches!

Ha-ha! Very good, but even less readable than the compressed ternary version,
IMO. This function only gets called once per migration; I don't see a few branches as performance-critical and worth the sacrifice of clarity as to intent.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]