On Mon, 10 Jul 2000, Patrick Dughi wrote: > > > > SET_BIT(DESC_FLAGS(d), DESC_CANZLIB); > > > > /* Write something, and check if it goes error-free */ > > if (write_to_descriptor (desc, buf, strlen(buf)) < 0) > > { > > close_socket (d); /* nope */ > > continue; > > } > > > > So it is creating the Circle descriptor before sending to the raw file > > descriptor. Is this a bad idea? I understand that you want to get rid of > > file descriptors that aren't valid anymore as soon as possible, but... > > Is this just for performance reasons or are there other good ideas for > > doing this? > > Well, you realize that when you do the execl(), your file > descriptors (among other things) are transfered to the new running > instance. They have already been inited/etc so far as the connection > goes, and directly writing to them is no problem. > Right, but if you directly write to the descriptor when the client thinks that you're still operating in a compressed stream, then you REALLY confuse the client. :) > However, since you already have the descriptor, there's > nothing that would stop you from doing it in the order you want. It was > probably done in this way so one wouldn't allocate the memory for a > descriptor/player/etc if the connection has died (because then it would > all have to be freed). > > PjD > > Gotcha. This is what I thought, I just needed to double-check. -- StormeRider Creator of Winds of Storm, mudhosters.net:4008 Head Coder of The Last Sunrise, thelastsunrise.net:9000 +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 04/10/01 PDT