# HG changeset patch # User meillo@marmaro.de # Date 1228473146 -3600 # Node ID 4a3bc3a7afbee61f4d067bb5818ced58fa60ea66 # Parent 7c1635972aa71de83087ade739c4533590ccff85 refactoring: early exit instead of deep if levels diff -r 7c1635972aa7 -r 4a3bc3a7afbe src/address.c --- a/src/address.c Fri Dec 05 11:26:24 2008 +0100 +++ b/src/address.c Fri Dec 05 11:32:26 2008 +0100 @@ -35,11 +35,10 @@ create_address_qualified(gchar * path, gboolean is_rfc821, gchar * domain) { address *addr = create_address(path, is_rfc821); - if (addr != NULL) { - if (addr->domain == NULL) + + if (addr != NULL && addr->domain == NULL) { addr->domain = g_strdup(domain); } - return addr; } @@ -76,26 +75,29 @@ { address *addr = NULL; - if (orig) { - addr = g_malloc(sizeof(address)); - if (addr) { - addr->address = g_strdup(orig->address); + if (!orig) { + return NULL; + } - if (l_part == NULL) - addr->local_part = g_strdup(orig->local_part); - else - addr->local_part = g_strdup(l_part); + if ((addr = g_malloc(sizeof(address))) == NULL) { + return NULL; + } - if (dom == NULL) - addr->domain = g_strdup(orig->domain); - else - addr->domain = g_strdup(dom); + addr->address = g_strdup(orig->address); - addr->flags = 0; - addr->children = NULL; - addr->parent = NULL; - } - } + if (l_part == NULL) + addr->local_part = g_strdup(orig->local_part); + else + addr->local_part = g_strdup(l_part); + + if (dom == NULL) + addr->domain = g_strdup(orig->domain); + else + addr->domain = g_strdup(dom); + + addr->flags = 0; + addr->children = NULL; + addr->parent = NULL; return addr; }