I've dropped the STRCAT patches in v2. The whole purpose of the STRCAT was to avoid calling *strcspn* several times but it was probably a bad call. Now we call that function for each pair but if no escaping is required we at least don't allocate the structure for that pair and later in the *virBufferEscapeN* we only iterate over the pairs that will escape at least one character. Pavel Hrdina (3): util: virbuffer: introduce virBufferEscapeN util: virqemu: introduce virQEMUBuildBufferEscape qemu: properly escape socket path for graphics src/libvirt_private.syms | 2 + src/qemu/qemu_command.c | 6 +- src/util/virbuffer.c | 101 +++++++++++++++++++++ src/util/virbuffer.h | 2 + src/util/virqemu.c | 17 ++++ src/util/virqemu.h | 1 + .../qemuxml2argvdata/qemuxml2argv-name-escape.args | 5 +- .../qemuxml2argvdata/qemuxml2argv-name-escape.xml | 7 +- tests/qemuxml2argvtest.c | 3 +- tests/virbuftest.c | 41 +++++++++ 10 files changed, 179 insertions(+), 6 deletions(-) -- 2.11.1 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list