From 2a725516df9d79320e826b07cc2c812b3c0d106f Mon Sep 17 00:00:00 2001
From: Jared Hancock <jared@osticket.com>
Date: Wed, 1 Apr 2015 10:20:41 -0500
Subject: [PATCH] oops: Fix incorrect cli argument requirement

---
 setup/cli/modules/class.module.php | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/setup/cli/modules/class.module.php b/setup/cli/modules/class.module.php
index b91b020ea..02c9b5f5c 100644
--- a/setup/cli/modules/class.module.php
+++ b/setup/cli/modules/class.module.php
@@ -205,8 +205,11 @@ class Module {
             $this->parseArgs(array_slice($argv, 1));
 
         foreach (array_keys($this->arguments) as $idx=>$name)
-            if (!isset($this->_args[$idx]))
-                $this->optionError($name . " is a required argument");
+            if (!isset($this->_args[$idx])) {
+                $info = $this->arguments[$name];
+                if (!is_array($info) || !isset($info['required']) || $info['required'])
+                    $this->optionError($name . " is a required argument");
+            }
             elseif (is_array($this->arguments[$name])
                     && isset($this->arguments[$name]['options'])
                     && !isset($this->arguments[$name]['options'][$this->_args[$idx]]))
-- 
GitLab