added yum-2.6.0-chroot.patch
[util-vserver.git] / util-vserver / lib_internal / command-appendparameter.c
index 26c34c5..13a2ec3 100644 (file)
 #endif
 
 #include "command.h"
+#include "util.h"
 
 void
 Command_appendParameter(struct Command *cmd, char const *param)
 {
-  char const **        p = Vector_pushback(&cmd->params);
-  *p = param;
+  switch (cmd->params_style_) {
+    case parNONE       :
+      Vector_init(&cmd->params.v, 10);
+      cmd->params_style_ = parVEC;
+       /*@fallthrough@*/
+    case parVEC                : {
+      char const **p = Vector_pushback(&cmd->params.v);
+      *p = param;
+      break;
+    }
+
+    default            :
+      WRITE_MSG(2, "internal error: conflicting functions Command_appendParameter() and Command_setParams() used together; aborting...\n");
+      abort();
+  }
 }