Found using the Clang Static Analyzer. * libshouldbeinlibc/maptime.c (maptime_map): Fix error handling. --- libshouldbeinlibc/maptime.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/libshouldbeinlibc/maptime.c b/libshouldbeinlibc/maptime.c index 971e05f..ca35c6c 100644 --- a/libshouldbeinlibc/maptime.c +++ b/libshouldbeinlibc/maptime.c @@ -42,13 +42,13 @@ maptime_map (int use_mach_dev, char *dev_name, mach_port_t device_master; err = get_privileged_ports (0, &device_master); - if (! err) - { - err = device_open (device_master, 0, dev_name ?: "time", &device); - mach_port_deallocate (mach_task_self (), device_master); - if (err) - return err; - } + if (err) + return err; + + err = device_open (device_master, 0, dev_name ?: "time", &device); + mach_port_deallocate (mach_task_self (), device_master); + if (err) + return err; err = device_map (device, VM_PROT_READ, 0, sizeof *mtime, &memobj, 0); } -- 1.7.10.4