shell_cmd: Fixed error deriving ignore_err default value

- It is possible for get_stack_var to return a value of None.
  Encased the get_stack_var() call in gm.dft() to avoid illegitimate
  None value.
- The ignore_err default setting was getting a bit long so broke it
  into 3 lines.

Change-Id: Ia799fadb097ffb6b9e92bc43aa92336a91579910
Signed-off-by: Michael Walsh <micwalsh@us.ibm.com>
diff --git a/lib/gen_cmd.py b/lib/gen_cmd.py
index 3b99fbc..5e004c1 100644
--- a/lib/gen_cmd.py
+++ b/lib/gen_cmd.py
@@ -362,9 +362,9 @@
     quiet = int(gm.dft(quiet, gp.get_stack_var('quiet', 0)))
     print_output = int(gm.dft(print_output, not quiet))
     show_err = int(show_err)
-    ignore_err = int(gm.dft(ignore_err,
-                            gp.get_stack_var('ignore_err',
-                                             gp.get_var_value(ignore_err, 1))))
+    global_ignore_err = gp.get_var_value(ignore_err, 1)
+    stack_ignore_err = gp.get_stack_var('ignore_err', global_ignore_err)
+    ignore_err = int(gm.dft(ignore_err, gm.dft(stack_ignore_err, 1)))
 
     err_msg = gv.svalid_value(command_string)
     if err_msg != "":