On 2/18/20 4:52 AM, Richard W.M. Jones wrote:
Unfortunately you cannot restore argv by setting *p = '=' :-(

The reason is we advertize that plugins are allowed to save they
‘const char *key’ pointer passed to them in .config, but assigning
*p = '=' changes the key string from "key" back to "key=value".

D'oh. And my bad for only running the subset of the testsuite that I was working on ('make -C tests check TESTS=test-vddk.sh') rather than the full suite, or I would have noticed the regression from my one-liner. Thanks for fixing it.


Surprisingly only test-eval.sh actually broke, but other plugins are
undoubtedly affected.

My alternate fix is fairly horrible, but passes all the tests and
valgrind.

It looks right to me - if we can't modify argv[] in place, we have to copy off a stable version somewhere. Your patch is definitely longer than my one-liner, but I don't see any way to shorten it.

ACK.

--
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3226
Virtualization:  qemu.org | libvirt.org

_______________________________________________
Libguestfs mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/libguestfs

Reply via email to