Fix for extraneous program() error messages
authorAri Johnson <ari@theari.com>
Wed, 15 Dec 2010 05:13:17 +0000 (05:13 +0000)
committerAri Johnson <ari@theari.com>
Fri, 22 May 2009 15:04:49 +0000 (15:04 +0000)
(cherry picked from commit 126c5f9c6386b1e443ee717dd34ddcacfff567e5)

src/prog.c

index 07141923e13a896b373a28d0ea7765e2266c5a7f..5c350ef96aedc04ddd3c8bdbd6e92434d9dd9c53 100644 (file)
@@ -261,19 +261,24 @@ FUNCTION(fun_prog)
     safe_str("#-1 PERMISSION DENIED", buff, bp);
     return;
   }
-  if (args[3] && is_integer(args[3]) && atoi(args[3]) == 1)
-    pflags = PI_LOCK;
-  else {
-    do_rawlog(LT_ERR,
-              "Bad Program Prompt, Silently Ignored. HINT: Use Prompt() : %d - %s",
-              executor, global_eval_context.ccom);
+  if (nargs >= 4) {
+    if (args[3] && is_integer(args[3]) && atoi(args[3]) == 1)
+      pflags = PI_LOCK;
+    else {
+      do_rawlog(LT_ERR,
+                "Bad Program Prompt, Silently Ignored. HINT: Use Prompt() : %d - %s",
+                executor, global_eval_context.ccom);
+    }
   }
 
-  if (args[4] && atoi(args[4]) == 1) {
-    pflags = PI_LOCK;
-    do_rawlog(LT_ERR, "Bad Proglock Usage format used on %d - %s",
-              executor, global_eval_context.ccom);
+  if (nargs >= 5) {
+    if (args[4] && atoi(args[4]) == 1) {
+      pflags = PI_LOCK;
+      do_rawlog(LT_ERR, "Bad Proglock Usage format used on %d - %s",
+                executor, global_eval_context.ccom);
+    }
   }
+
   /* Save Registers to XY_PROGENV */
   memset(tbuf1, '\0', BUFFER_LEN);
   tbp = tbuf1;