89 lines
2.3 KiB
Diff
89 lines
2.3 KiB
Diff
|
commit f644361b1eeb78fd59be4cd7ec85567bbf300506
|
||
|
Author: Richard W.M. Jones <rjones@redhat.com>
|
||
|
Date: Mon Sep 24 17:30:18 2012 +0100
|
||
|
|
||
|
command: Move environ-adding code to common function virCommandAddEnv.
|
||
|
|
||
|
This is just code motion. The semantics of the code should be
|
||
|
identical after this change.
|
||
|
|
||
|
Index: libvirt-0.10.2/src/util/command.c
|
||
|
===================================================================
|
||
|
--- libvirt-0.10.2.orig/src/util/command.c
|
||
|
+++ libvirt-0.10.2/src/util/command.c
|
||
|
@@ -984,6 +984,22 @@ virCommandNonblockingFDs(virCommandPtr c
|
||
|
cmd->flags |= VIR_EXEC_NONBLOCK;
|
||
|
}
|
||
|
|
||
|
+/* Add an environment variable to the cmd->env list. 'env' is a
|
||
|
+ * string like "name=value".
|
||
|
+ */
|
||
|
+static inline void
|
||
|
+virCommandAddEnv(virCommandPtr cmd, char *env)
|
||
|
+{
|
||
|
+ /* Arg plus trailing NULL. */
|
||
|
+ if (VIR_RESIZE_N(cmd->env, cmd->maxenv, cmd->nenv, 1 + 1) < 0) {
|
||
|
+ VIR_FREE(env);
|
||
|
+ cmd->has_error = ENOMEM;
|
||
|
+ return;
|
||
|
+ }
|
||
|
+
|
||
|
+ cmd->env[cmd->nenv++] = env;
|
||
|
+}
|
||
|
+
|
||
|
/**
|
||
|
* virCommandAddEnvFormat:
|
||
|
* @cmd: the command to modify
|
||
|
@@ -1009,14 +1025,7 @@ virCommandAddEnvFormat(virCommandPtr cmd
|
||
|
}
|
||
|
va_end(list);
|
||
|
|
||
|
- /* Arg plus trailing NULL. */
|
||
|
- if (VIR_RESIZE_N(cmd->env, cmd->maxenv, cmd->nenv, 1 + 1) < 0) {
|
||
|
- VIR_FREE(env);
|
||
|
- cmd->has_error = ENOMEM;
|
||
|
- return;
|
||
|
- }
|
||
|
-
|
||
|
- cmd->env[cmd->nenv++] = env;
|
||
|
+ virCommandAddEnv(cmd, env);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
@@ -1056,14 +1065,7 @@ virCommandAddEnvString(virCommandPtr cmd
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
- /* env plus trailing NULL */
|
||
|
- if (VIR_RESIZE_N(cmd->env, cmd->maxenv, cmd->nenv, 1 + 1) < 0) {
|
||
|
- VIR_FREE(env);
|
||
|
- cmd->has_error = ENOMEM;
|
||
|
- return;
|
||
|
- }
|
||
|
-
|
||
|
- cmd->env[cmd->nenv++] = env;
|
||
|
+ virCommandAddEnv(cmd, env);
|
||
|
}
|
||
|
|
||
|
|
||
|
@@ -1084,9 +1086,7 @@ virCommandAddEnvBuffer(virCommandPtr cmd
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
- /* env plus trailing NULL. */
|
||
|
- if (virBufferError(buf) ||
|
||
|
- VIR_RESIZE_N(cmd->env, cmd->maxenv, cmd->nenv, 1 + 1) < 0) {
|
||
|
+ if (virBufferError(buf)) {
|
||
|
cmd->has_error = ENOMEM;
|
||
|
virBufferFreeAndReset(buf);
|
||
|
return;
|
||
|
@@ -1096,7 +1096,7 @@ virCommandAddEnvBuffer(virCommandPtr cmd
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
- cmd->env[cmd->nenv++] = virBufferContentAndReset(buf);
|
||
|
+ virCommandAddEnv(cmd, virBufferContentAndReset(buf));
|
||
|
}
|
||
|
|
||
|
|