/* When we arrive here, the stack is full. This should not happen and
* means there’s either a bug in this parser or the specification
* contains a command with more than 10 identified tokens. */
- printf("argh! stack full\n");
+ fprintf(stderr, "BUG: commands_parser stack full. This means either a bug "
+ "in the code, or a new command which contains more than "
+ "10 identified tokens.\n");
exit(1);
}
free(position);
free(errormessage);
+ clear_stack();
break;
}
}
# TODO: need a non-invasive command before implementing a test which uses ','
+################################################################################
+# regression test: 10 invalid commands should not crash i3 (10 is the stack
+# depth)
+################################################################################
+
+cmd 'move gibberish' for (0 .. 10);
+
+does_i3_live;
+
done_testing;