diff --git a/src/common/proc_args.c b/src/common/proc_args.c
index abba5277ce391b74db301ea6d41ebcac0a8686e5..0b340c68619e7e4cc3452dc30dd1d6ce98f50dab 100644
--- a/src/common/proc_args.c
+++ b/src/common/proc_args.c
@@ -1848,10 +1848,14 @@ uint16_t parse_compress_type(const char *arg)
 extern int validate_acctg_freq(char *acctg_freq)
 {
 	int i;
-	char *save_ptr = NULL, *tok, *tmp = xstrdup(optarg);
+	char *save_ptr = NULL, *tok, *tmp;
 	bool valid;
 	int rc = SLURM_SUCCESS;
 
+	if (!optarg)
+		return rc;
+
+	tmp = xstrdup(optarg);
 	tok = strtok_r(tmp, ",", &save_ptr);
 	while (tok) {
 		valid = false;