Commit 262f6f51 authored by Marcel Apfelbaum's avatar Marcel Apfelbaum Committed by Michael S. Tsirkin
Browse files

acpi-test: retain both asl and aml files on failure



Updated the error message while at it.

Signed-off-by: default avatarMarcel Apfelbaum <marcel.a@redhat.com>
Reviewed-by: default avatarMichael S. Tsirkin <mst@redhat.com>
Signed-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
parent 4a4fcdf6
Loading
Loading
Loading
Loading
+9 −7
Original line number Diff line number Diff line
@@ -34,7 +34,7 @@ typedef struct {
    gchar *asl;            /* asl code generated from aml */
    gsize asl_len;
    gchar *asl_file;
    bool asl_file_retain;   /* do not delete the temp asl */
    bool tmp_files_retain;   /* do not delete the temp asl/aml */
} QEMU_PACKED AcpiSdtTable;

typedef struct {
@@ -153,7 +153,8 @@ static void free_test_data(test_data *data)
            g_free(temp->aml);
        }
        if (temp->aml_file) {
            if (g_strstr_len(temp->aml_file, -1, "aml-")) {
            if (!temp->tmp_files_retain &&
                g_strstr_len(temp->aml_file, -1, "aml-")) {
                unlink(temp->aml_file);
            }
            g_free(temp->aml_file);
@@ -162,7 +163,7 @@ static void free_test_data(test_data *data)
            g_free(temp->asl);
        }
        if (temp->asl_file) {
            if (!temp->asl_file_retain) {
            if (!temp->tmp_files_retain) {
                unlink(temp->asl_file);
            }
            g_free(temp->asl_file);
@@ -534,13 +535,14 @@ static void test_acpi_asl(test_data *data)
        exp_asl = normalize_asl(exp_sdt->asl);

        if (g_strcmp0(asl->str, exp_asl->str)) {
            sdt->asl_file_retain = true;
            exp_sdt->asl_file_retain = true;
            sdt->tmp_files_retain = true;
            exp_sdt->tmp_files_retain = true;
            fprintf(stderr,
                    "acpi-test: Warning! %.4s mismatch. "
                    "Orig asl: %s, expected asl %s.\n",
                    "Actual [asl:%s, aml:%s], Expected [asl:%s, aml:%s].\n",
                    (gchar *)&exp_sdt->header.signature,
                    sdt->asl_file, exp_sdt->asl_file);
                    sdt->asl_file, sdt->aml_file,
                    exp_sdt->asl_file, exp_sdt->aml_file);
        }
        g_string_free(asl, true);
        g_string_free(exp_asl, true);