diff --git a/src/common/plugstack.c b/src/common/plugstack.c index 6d306f38e176a25e9d154a5ae7bd8affb9c97dbe..c3ca324d31ccf5b95b7634bfaa1bf70dd0c67bff 100644 --- a/src/common/plugstack.c +++ b/src/common/plugstack.c @@ -1528,6 +1528,13 @@ spank_option_getopt (spank_t sp, struct spank_option *opt, char **argp) (ListFindF) _opt_by_name, opt->name); if (spopt) { + /* + * Return failure if option is cached but hasn't been + * used on the command line or specified by user. + */ + if (!spopt->found) + return (ESPANK_ERROR); + if (opt->has_arg && argp) *argp = spopt->optarg; return (ESPANK_SUCCESS);