On Wed, 30 Jan 2002, Welcor wrote: >In other words: > First write to a buffer. > THEN send to char. >because > send_to_char() doesn't (yet)[1] support variable arguments. [...] >[1] I can't recall having read that it ever will, but since it > already has been changed to look like the sprintf call, it > doesn't seem too far fetched. ftp://ftp.circlemud.org/pub/CircleMUD/cvs/2002013004-bpl20.patch.gz --- 8< --- 8< --- -void send_to_char(const char *messg, struct char_data *ch) +size_t send_to_char(struct char_data *ch, const char *messg, ...) { - if (ch->desc && messg) - SEND_TO_Q(messg, ch->desc); + if (ch->desc && messg && *messg) { + size_t left; + va_list args; + + va_start(args, messg); + left = vwrite_to_output(ch->desc, messg, args); + va_end(args); + return left; + } + return 0; } --- 8< --- 8< --- It's a pretty large patch already but that's mostly due to strdup, send_to_char, and mudlog re-argumenting. -- George Greer greerga@circlemud.org -- +---------------------------------------------------------------+ | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html | | Newbie List: http://groups.yahoo.com/group/circle-newbies/ | +---------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 06/25/03 PDT