From: Zdeněk Salvet Date: Fri, 6 May 2005 17:27:55 +0000 (+0000) Subject: Remove incorrect looping in edg_wll_socket_write(). X-Git-Tag: glite-lb-logger_R_1_0_2~36 X-Git-Url: http://scientific.zcu.cz/git/?a=commitdiff_plain;h=0860ab27ed5c33f7e92c670fab3b506b8693833d;p=jra1mw.git Remove incorrect looping in edg_wll_socket_write(). --- diff --git a/org.glite.lb.logger/src/logd_proto.c b/org.glite.lb.logger/src/logd_proto.c index 463266a..0985a51 100644 --- a/org.glite.lb.logger/src/logd_proto.c +++ b/org.glite.lb.logger/src/logd_proto.c @@ -243,10 +243,10 @@ static ssize_t edg_wll_socket_write(int sock,const void *buf,size_t bufsize,stru gettimeofday(&before,NULL); } len = write(sock,buf,bufsize); - while (len <= 0) { + if (len <= 0 && errno == EAGAIN) { FD_ZERO(&fds); FD_SET(sock,&fds); - if ((ret=select(sock+1,&fds,NULL,NULL,timeout?&to:NULL)) < 0) { + if ((ret=select(sock+1,NULL, &fds ,NULL,timeout?&to:NULL)) < 0) { edg_wll_ll_log(LOG_ERR,"edg_wll_socket_write(): error selecting socket\n"); SYSTEM_ERROR("select"); break;