target-sh4: Use glib allocator in movcal helper
authorPeter Maydell <peter.maydell@linaro.org>
Tue, 12 Jul 2016 12:50:59 +0000 (13:50 +0100)
committerPeter Maydell <peter.maydell@linaro.org>
Fri, 22 Jul 2016 10:33:24 +0000 (11:33 +0100)
Coverity spots that helper_movcal() calls malloc() but doesn't
check for failure. Fix this by switching to the glib allocation
functions, which abort on allocation failure.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 1468327859-21385-1-git-send-email-peter.maydell@linaro.org
Acked-by: Aurelien Jarno <aurelien@aurel32.net>
target-sh4/op_helper.c

index 0204b03..684d3f3 100644 (file)
@@ -109,7 +109,8 @@ void helper_movcal(CPUSH4State *env, uint32_t address, uint32_t value)
 {
     if (cpu_sh4_is_cached (env, address))
     {
-       memory_content *r = malloc (sizeof(memory_content));
+        memory_content *r = g_new(memory_content, 1);
+
        r->address = address;
        r->value = value;
        r->next = NULL;
@@ -126,7 +127,7 @@ void helper_discard_movcal_backup(CPUSH4State *env)
     while(current)
     {
        memory_content *next = current->next;
-       free (current);
+        g_free(current);
        env->movcal_backup = current = next;
        if (current == NULL)
            env->movcal_backup_tail = &(env->movcal_backup);
@@ -149,7 +150,7 @@ void helper_ocbi(CPUSH4State *env, uint32_t address)
                env->movcal_backup_tail = current;
            }
 
-           free (*current);
+            g_free(*current);
            *current = next;
            break;
        }