prompt_string is currently a stack-allocated array, so it has to be a fixed length. The length can't be all that big, since threads can have constrained stack sizes in some circumstances. We should remove this limitation by changing prompt_string to a pointer and using asprintf instead of snprintf.