[Spice-devel] [PATCH spice-server 30/33] Disable recording filtering for Windows
Frediano Ziglio
fziglio at redhat.com
Fri Dec 21 12:03:18 UTC 2018
Although this feature can be ported to Windows doing so would
require the usage of g_spawn_async_with_fds, which is only available
in GLib 2.58 or some specific Win32 code.
Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
---
server/red-record-qxl.c | 8 ++++++--
server/tests/test-record.c | 7 +++++--
2 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/server/red-record-qxl.c b/server/red-record-qxl.c
index 30a3b0da..c9e84bfb 100644
--- a/server/red-record-qxl.c
+++ b/server/red-record-qxl.c
@@ -817,6 +817,7 @@ void red_record_qxl_command(RedRecord *record, RedMemSlotInfo *slots,
pthread_mutex_unlock(&record->lock);
}
+#ifndef _WIN32
/**
* Redirects child output to the file specified
*/
@@ -829,12 +830,12 @@ static void child_output_setup(gpointer user_data)
}
close(fd);
}
+#endif
RedRecord *red_record_new(const char *filename)
{
static const char header[] = "SPICE_REPLAY 1\n";
- const char *filter;
FILE *f;
RedRecord *record;
@@ -843,7 +844,9 @@ RedRecord *red_record_new(const char *filename)
spice_error("failed to open recording file %s", filename);
}
- filter = getenv("SPICE_WORKER_RECORD_FILTER");
+ // TODO
+#ifndef _WIN32
+ const char *filter = getenv("SPICE_WORKER_RECORD_FILTER");
if (filter) {
gint argc;
gchar **argv = NULL;
@@ -871,6 +874,7 @@ RedRecord *red_record_new(const char *filename)
close(fd_in);
g_spawn_close_pid(child_pid);
}
+#endif
if (fwrite(header, sizeof(header)-1, 1, f) != 1) {
spice_error("failed to write replay header");
diff --git a/server/tests/test-record.c b/server/tests/test-record.c
index de3c6f5b..8ee36ceb 100644
--- a/server/tests/test-record.c
+++ b/server/tests/test-record.c
@@ -35,9 +35,9 @@ test_record(bool compress)
RedRecord *rec;
const char *fn = OUTPUT_FILENAME;
- unsetenv("SPICE_WORKER_RECORD_FILTER");
+ g_unsetenv("SPICE_WORKER_RECORD_FILTER");
if (compress) {
- setenv("SPICE_WORKER_RECORD_FILTER", "gzip", 1);
+ g_setenv("SPICE_WORKER_RECORD_FILTER", "gzip", 1);
}
// delete possible stale test output
@@ -95,6 +95,9 @@ int
main(void)
{
test_record(false);
+ // TODO implement on Windows
+#ifndef _WIN32
test_record(true);
+#endif
return 0;
}
--
2.17.2
More information about the Spice-devel
mailing list