Why not have glibc incorporate the moral equivalent of the "unlocked"
    stdio routines (fwrite_unlocked, printf_unlocked, etc.), like
    fwrite_block?

I am not sure what "unlocked" means, but any solution like this would
only work on GNU.  It would be better to use an equally simple
approach that will work on other systems also: to define simple
functions inside CVS to replace fwrite, fprintf, etc.

      In fact then they (and CVS) could probably get it down to
    some #defines in a header without changing the existing stdio calls.

That approach would still work if the functions are defined
by CVS itself.

   #define fprintf cvs_fprintf

My suggestion is to write a function cvs_fprintf that uses vsnprintf
and alloca so as to generate the entire message, and then calls fwrite
in a suitable loop with select to output the message.  That should be
simple enough.  How about it?

I will write the function for you if you don't want to write it.
It would give me an opportunity to restudy how varargs works.


_______________________________________________
Bug-cvs mailing list
Bug-cvs@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-cvs

Reply via email to