diff rvinterf/tmsh/audiocmd.c @ 69:2159f260ed13

fc-tmsh: all commands internally return values in preparation for adding one-shot mode of operation
author Mychaela Falconia <falcon@freecalypso.org>
date Wed, 26 Oct 2016 23:17:03 +0000
parents ea061975c883
children 86e4d8aea021
line wrap: on
line diff
--- a/rvinterf/tmsh/audiocmd.c	Wed Oct 26 22:56:29 2016 +0000
+++ b/rvinterf/tmsh/audiocmd.c	Wed Oct 26 23:17:03 2016 +0000
@@ -10,8 +10,8 @@
 #include "limits.h"
 #include "localtypes.h"
 #include "etm.h"
+#include "exitcodes.h"
 
-void
 cmd_audio_load(argc, argv)
 	char **argv;
 {
@@ -21,7 +21,7 @@
 	slen = strlen(argv[1]);
 	if (slen > 9) {
 		printf("error: audio config name is limited to 9 chars\n");
-		return;
+		return(ERROR_USAGE);
 	}
 	dp = cmdpkt + 1;
 	*dp++ = ETM_AUDIO;
@@ -29,9 +29,9 @@
 	strcpy(dp, argv[1]);
 	dp += slen + 1;
 	send_etm_cmd(cmdpkt, dp - cmdpkt - 1);
+	return(0);
 }
 
-void
 cmd_audio_save(argc, argv)
 	char **argv;
 {
@@ -41,7 +41,7 @@
 	slen = strlen(argv[1]);
 	if (slen > 9) {
 		printf("error: audio config name is limited to 9 chars\n");
-		return;
+		return(ERROR_USAGE);
 	}
 	dp = cmdpkt + 1;
 	*dp++ = ETM_AUDIO;
@@ -49,20 +49,20 @@
 	strcpy(dp, argv[1]);
 	dp += slen + 1;
 	send_etm_cmd(cmdpkt, dp - cmdpkt - 1);
+	return(0);
 }
 
 static struct cmdtab {
 	char *cmd;
 	int minargs;
 	int maxargs;
-	void (*func)();
+	int (*func)();
 } audio_cmds[] = {
 	{"load", 1, 1, cmd_audio_load},
 	{"save", 1, 1, cmd_audio_save},
 	{0, 0, 0, 0}
 };
 
-void
 cmd_audio(argc, argv)
 	char **argv;
 {
@@ -74,16 +74,16 @@
 			break;
 	if (!tp->func) {
 		printf("error: no such audio command\n");
-		return;
+		return(ERROR_USAGE);
 	}
 	extargs = argc - 2;
 	if (extargs > tp->maxargs) {
 		printf("error: too many arguments\n");
-		return;
+		return(ERROR_USAGE);
 	}
 	if (extargs < tp->minargs) {
 		printf("error: too few arguments\n");
-		return;
+		return(ERROR_USAGE);
 	}
-	tp->func(argc - 1, argv + 1);
+	return tp->func(argc - 1, argv + 1);
 }