aboutsummaryrefslogtreecommitdiff
path: root/util/log.c
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2022-04-17 11:30:16 -0700
committerRichard Henderson <richard.henderson@linaro.org>2022-04-20 10:51:11 -0700
commit92b24cb77f4359da099e52ddbee23880f665edb3 (patch)
treeb3a9906e1715cdc70daeec5c3de56562b0bcab19 /util/log.c
parentbeab3447dbb1363654760c34b53226814c64de99 (diff)
util/log: Combine two logfile closes
Merge the close from the changed_name block with the close from the !need_to_open_file block. Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20220417183019.755276-37-richard.henderson@linaro.org>
Diffstat (limited to 'util/log.c')
-rw-r--r--util/log.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/util/log.c b/util/log.c
index 631856e231..21da961d8d 100644
--- a/util/log.c
+++ b/util/log.c
@@ -157,12 +157,6 @@ static bool qemu_set_log_internal(const char *filename, bool changed_name,
g_free(global_filename);
global_filename = newname;
filename = newname;
-
- if (logfile) {
- qatomic_rcu_set(&global_file, NULL);
- call_rcu(logfile, qemu_logfile_free, rcu);
- logfile = NULL;
- }
} else {
filename = global_filename;
}
@@ -182,11 +176,12 @@ static bool qemu_set_log_internal(const char *filename, bool changed_name,
daemonized = is_daemonized();
need_to_open_file = log_flags && (!daemonized || filename);
- if (logfile && !need_to_open_file) {
+ if (logfile && (!need_to_open_file || changed_name)) {
qatomic_rcu_set(&global_file, NULL);
call_rcu(logfile, qemu_logfile_free, rcu);
- return true;
+ logfile = NULL;
}
+
if (!logfile && need_to_open_file) {
FILE *fd;