mirror of /home/gitosis/repositories/libowfat.git
Mirror of :pserver:cvs@cvs.fefe.de:/cvs libowfat
https://www.fefe.de/libowfat/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
41 lines
611 B
41 lines
611 B
#include "errmsg.h" |
|
#include "errmsg_int.h" |
|
#include <str.h> |
|
|
|
#ifdef __MINGW32__ |
|
|
|
void errmsg_puts(int fd,const char* s) { |
|
return write(fd,s,str_len(s)); |
|
} |
|
|
|
void errmsg_flush(int fd) { |
|
return 0; |
|
} |
|
|
|
#else |
|
#include <sys/uio.h> |
|
|
|
enum { COUNT=25 }; |
|
static struct iovec x[COUNT]; |
|
static int l; |
|
|
|
void errmsg_puts(int fd,const char* s) { |
|
x[l].iov_base=(char*)s; |
|
x[l].iov_len=str_len(s); |
|
if (++l==COUNT) errmsg_flush(fd); |
|
} |
|
|
|
void errmsg_flush(int fd) { |
|
int n=l; |
|
l=0; |
|
if (n) writev(fd,x,n); |
|
} |
|
#endif |
|
|
|
void errmsg_start(int fd) { |
|
if (argv0) { |
|
errmsg_puts(fd,argv0); |
|
errmsg_puts(fd,": "); |
|
} |
|
} |
|
|
|
|