]> xenbits.xensource.com Git - libvirt.git/commitdiff
Run qemu with -help when probing for args
authorDaniel P. Berrange <berrange@redhat.com>
Wed, 21 May 2008 19:43:39 +0000 (19:43 +0000)
committerDaniel P. Berrange <berrange@redhat.com>
Wed, 21 May 2008 19:43:39 +0000 (19:43 +0000)
ChangeLog
src/qemu_conf.c

index 94a694f0602646167a8c0d838ac59dc19e83b254..edabea2bd75be95ae467886648867d0490972579 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Wed May 21 15:42:29 EST 2008 Daniel P. Berrange <berrange@redhat.com>
+
+       * src/qemu_conf.c: Run qemu with -help and don't pollute
+       libvirtd environment
+
 Tue May 20 12:15:29 EST 2008 Daniel P. Berrange <berrange@redhat.com>
 
        * qemud/qemud.c: Re-factor daemon startup code to avoid
index d6afe59291d9a47c57c550647a71346ae83f8145..6015e99014505305dfad7464e1899c10d26f09e5 100644 (file)
@@ -448,6 +448,9 @@ static int qemudExtractVersionInfo(const char *qemu, int *version, int *flags) {
     }
 
     if (child == 0) { /* Kid */
+        /* Just in case QEMU is translated someday we force to C locale.. */
+        const char *const qemuenv[] = { "LANG=C", NULL };
+
         if (close(STDIN_FILENO) < 0)
             goto cleanup1;
         if (close(STDERR_FILENO) < 0)
@@ -457,9 +460,9 @@ static int qemudExtractVersionInfo(const char *qemu, int *version, int *flags) {
         if (dup2(newstdout[1], STDOUT_FILENO) < 0)
             goto cleanup1;
 
-        /* Just in case QEMU is translated someday.. */
-        setenv("LANG", "C", 1);
-        execl(qemu, qemu, (char*)NULL);
+        /* Passing -help, rather than relying on no-args which doesn't
+           always work */
+        execle(qemu, qemu, "-help", (char*)NULL, qemuenv);
 
     cleanup1:
         _exit(-1); /* Just in case */