[PATCH xserver v2] fixing -logfile when used with -displayfd
Antoine Martin
antoine at nagafix.co.uk
Wed Feb 28 08:19:13 UTC 2018
Hi,
v2 updated with the feedback from Alan: the LogSetDisplay function is
the right place for this fix.
Trivial way to reproduce the bug:
Xorg -logfile /tmp/mylog -config /etc/xpra/xorg.conf -displayfd 2
The server then moans:
Failed to rename log file "/tmp/mylog" to "/tmp/mylog": No such file or
directory
And the log file is created but immediately renamed to "/tmp/mylog.old"
This is caused by the changes to the log file handling introduced by
this commit:
https://cgit.freedesktop.org/xorg/xserver/commit/?id=edcb6426f20c3be5dd5f50b76a686754aef2f64e
And below is the trivial fix for it. We only need to rename the logfile
if the log filename contains the magic substitution string "%s".
Signed-off-by: Antoine Martin <antoine at nagafix.co.uk>
---
diff --git a/os/log.c b/os/log.c
index 91e55a532..a3b28ccb4 100644
--- a/os/log.c
+++ b/os/log.c
@@ -296,7 +296,7 @@ LogInit(const char *fname, const char *backup)
void
LogSetDisplay(void)
{
- if (saved_log_fname) {
+ if (saved_log_fname && strstr(saved_log_fname, "%s")) {
char *logFileName;
logFileName = LogFilePrep(saved_log_fname, saved_log_backup,
display);
More information about the xorg-devel
mailing list