Fix for warnings detected by clang static analyzer 76/4476/2
authorMichele Sardo <msmttchr@gmail.com>
Thu, 22 Mar 2018 11:02:19 +0000 (12:02 +0100)
committerTomas Vanek <vanekt@fbl.cz>
Wed, 4 Apr 2018 20:23:57 +0000 (21:23 +0100)
Fix for potential memory leakage and for unused/unreported return error code

Change-Id: Ifb2c95b60637c3a241ad4bf41d1a328c92ccea4b
Signed-off-by: Michele Sardo <msmttchr@gmail.com>
Reviewed-on: http://openocd.zylin.com/4476
Tested-by: jenkins
Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
src/flash/nor/bluenrg-x.c

index c4a8080476d5d4729a051afb9afb20bc694eb9d7..2b568593ace5f18302790b9769f1b566b7eba291 100644 (file)
@@ -274,6 +274,7 @@ static int bluenrgx_write_bytes(struct target *target, uint32_t address_base, ui
                if (pre_bytes) {
                        if (target_read_u32(target, pre_address, &pre_word)) {
                                LOG_ERROR("Memory read failed");
+                               free(new_buffer);
                                return ERROR_FAIL;
                        }
 
@@ -282,6 +283,7 @@ static int bluenrgx_write_bytes(struct target *target, uint32_t address_base, ui
                if (post_bytes) {
                        if (target_read_u32(target, post_address, &post_word)) {
                                LOG_ERROR("Memory read failed");
+                               free(new_buffer);
                                return ERROR_FAIL;
                        }
 
@@ -450,6 +452,9 @@ static int bluenrgx_write(struct flash_bank *bank, const uint8_t *buffer,
                destroy_reg_param(&reg_params[2]);
                destroy_reg_param(&reg_params[3]);
                destroy_reg_param(&reg_params[4]);
+               if (retval != ERROR_OK)
+                       return retval;
+
        }
 
        /* Program chunk at end, not addressable by fast burst write algorithm */

Linking to existing account procedure

If you already have an account and want to add another login method you MUST first sign in with your existing account and then change URL to read https://review.openocd.org/login/?link to get to this page again but this time it'll work for linking. Thank you.

SSH host keys fingerprints

1024 SHA256:YKx8b7u5ZWdcbp7/4AeXNaqElP49m6QrwfXaqQGJAOk gerrit-code-review@openocd.zylin.com (DSA)
384 SHA256:jHIbSQa4REvwCFG4cq5LBlBLxmxSqelQPem/EXIrxjk gerrit-code-review@openocd.org (ECDSA)
521 SHA256:UAOPYkU9Fjtcao0Ul/Rrlnj/OsQvt+pgdYSZ4jOYdgs gerrit-code-review@openocd.org (ECDSA)
256 SHA256:A13M5QlnozFOvTllybRZH6vm7iSt0XLxbA48yfc2yfY gerrit-code-review@openocd.org (ECDSA)
256 SHA256:spYMBqEYoAOtK7yZBrcwE8ZpYt6b68Cfh9yEVetvbXg gerrit-code-review@openocd.org (ED25519)
+--[ED25519 256]--+
|=..              |
|+o..   .         |
|*.o   . .        |
|+B . . .         |
|Bo. = o S        |
|Oo.+ + =         |
|oB=.* = . o      |
| =+=.+   + E     |
|. .=o   . o      |
+----[SHA256]-----+
2048 SHA256:0Onrb7/PHjpo6iVZ7xQX2riKN83FJ3KGU0TvI0TaFG4 gerrit-code-review@openocd.zylin.com (RSA)