From 3c7f79f2511b8031465be839ba2c0cf19a200504 Mon Sep 17 00:00:00 2001 From: Mark Pizzolato Date: Wed, 19 Sep 2018 14:46:40 -0700 Subject: [PATCH] SCP: Fix and document optional [count] parameter for EXPECT commands - Avoid "Goodbye" message when optional status is specified on EXIT command. - Properly range check [count] specified on EXPECT commands --- doc/simh_doc.doc | Bin 329728 -> 267264 bytes scp.c | 17 +++++++++++------ 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/doc/simh_doc.doc b/doc/simh_doc.doc index d5d9812ccfa95d4f33051b9a2e1ce2e50d8c1af8..d5ca93f03c4d4e5928f785e0df01f38d6ae18e52 100644 GIT binary patch delta 33987 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 bW9wH*NJ^<)t4{5D3H9sM%^2wG`?30eF}kN} delta 61308 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[count]},{addr range...}}{;action;action...}\n" "++SET BREAK {-types} {{[count]},{addr range...}}{;action;action...}\n\n" @@ -2689,9 +2689,13 @@ return cmdp; t_stat exit_cmd (int32 flag, CONST char *cptr) { -if (cptr && *cptr) +t_stat r = SCPE_EXIT; + +if (cptr && *cptr) { sim_exit_status = atoi (cptr); -return SCPE_EXIT; + r |= SCPE_NOMESSAGE; /* exit silently with the specified status */ + } +return r; } /* Help command */ @@ -11611,8 +11615,9 @@ dev_name = tmxr_expect_line_name (exp); after = get_default_env_parameter (dev_name, "SIM_EXPECT_HALTAFTER", 0); if (*cptr == '[') { cnt = (int32) strtotv (cptr + 1, &c1ptr, 10); - if ((cptr == c1ptr) || (*c1ptr != ']')) + if ((cptr == c1ptr) || (*c1ptr != ']') || (cnt <= 0)) return sim_messagef (SCPE_ARG, "Invalid Repeat count specification\n"); + cnt -= 1; cptr = c1ptr + 1; while (sim_isspace(*cptr)) ++cptr;