Working my way through the TODO list... diff -upPr -x *.o ../stk/comm.c ./comm.c --- ../stk/comm.c Sun Apr 14 14:28:46 1996 +++ ./comm.c Tue Oct 14 21:02:40 1997 @@ -1259,9 +1259,12 @@ int process_input(struct descriptor_data } failed_subst = 0; - if (*tmp == '!') - strcpy(tmp, t->last_input); - else if (*tmp == '^') { + if (*tmp == '!') { + char tmp_switch[MAX_INPUT_LENGTH + 64]; + /* This would be a good spot for snprintf(). */ + sprintf(tmp_switch, "%s%s", t->last_input, tmp + 1); + strcpy(tmp, tmp_switch); + } else if (*tmp == '^') { if (!(failed_subst = perform_subst(t, t->last_input, tmp))) strcpy(t->last_input, tmp); } else This method (of not updating the last input) allows things such as: tell somebody ! hi how are you? ! I'm fine, really. ! I'm leaving now, bye. Not really a big feature, but seems more helpful than updating the last input. It's trivial to change that if the other way is preferred. -- George Greer - Me@Null.net | Genius may have its limitations, but stupidity http://www.van.ml.org/~greerga | is not thus handicapped. -- Elbert Hubbard +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/08/00 PST