From: Prasad J Pandit <p...@fedoraproject.org> Move repeating error handling sequence in parse_acl_file routine to an 'err' label.
Signed-off-by: Prasad J Pandit <p...@fedoraproject.org> --- qemu-bridge-helper.c | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) Reviewed v3: -> https://lists.nongnu.org/archive/html/qemu-devel/2019-07/msg00247.html diff --git a/qemu-bridge-helper.c b/qemu-bridge-helper.c index e90c22f07d..91a02f9611 100644 --- a/qemu-bridge-helper.c +++ b/qemu-bridge-helper.c @@ -92,9 +92,7 @@ static int parse_acl_file(const char *filename, ACLList *acl_list) if (arg == NULL) { fprintf(stderr, "Invalid config line:\n %s\n", line); - fclose(f); - errno = EINVAL; - return -1; + goto err; } *arg = 0; @@ -111,9 +109,7 @@ static int parse_acl_file(const char *filename, ACLList *acl_list) if (!g_str_equal(cmd, "include") && strlen(arg) >= IFNAMSIZ) { fprintf(stderr, "name `%s' too long: %zu\n", arg, strlen(arg)); - fclose(f); - errno = EINVAL; - return -1; + goto err; } if (strcmp(cmd, "deny") == 0) { @@ -139,15 +135,18 @@ static int parse_acl_file(const char *filename, ACLList *acl_list) parse_acl_file(arg, acl_list); } else { fprintf(stderr, "Unknown command `%s'\n", cmd); - fclose(f); - errno = EINVAL; - return -1; + goto err; } } fclose(f); - return 0; + +err: + fclose(f); + errno = EINVAL; + return -1; + } static bool has_vnet_hdr(int fd) -- 2.21.0