summary refs log tree commit diff homepage
diff options
context:
space:
mode:
-rw-r--r--play.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/play.c b/play.c
index ef6cb15..e83ab7e 100644
--- a/play.c
+++ b/play.c
@@ -187,7 +187,10 @@ static const struct Game {
 };
 
 static const struct Game *menu(void) {
-	curse();
+	const char *cmd = getenv("SSH_ORIGINAL_COMMAND");
+	for (uint i = 0; cmd && i < ARRAY_LEN(Games); ++i) {
+		if (!strcmp(Games[i].name, cmd)) return &Games[i];
+	}
 	uint game = 0;
 	for (;;) {
 		for (uint i = 0; i < ARRAY_LEN(Games); ++i) {
@@ -245,6 +248,7 @@ int main(int argc, char *argv[]) {
 		return EX_OK;
 	}
 
+	curse();
 	const struct Game *game = menu();
 	if (!game) goto done;
 	erase();