pgpool2.git / summary / log / commit / refs
commit ae13e5527215bca4d33136aca66ca39179fecb5f
Author: Yoshiyuki Asaba <y-asaba at pgfoundry.org>
Date: Mon Feb 18 09:58:39 2008 +0000
Add error checking.
pool_stream.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/pool_stream.c b/pool_stream.c
index c7592cf5e..da37881aa 100644
--- a/pool_stream.c
+++ b/pool_stream.c
@@ -410,15 +410,16 @@ int pool_write(POOL_CONNECTION *cp, void *buf, int len)
while (len > 0)
{
- int remainder = cp->wbufsz - cp->wbufpo;
+ int remainder = WRITEBUFSZ - cp->wbufpo;
- if (remainder <= 0)
+ if (cp->wbufpo >= WRITEBUFSZ)
{
/*
* Write buffer is full. so flush buffer.
* wbufpo is reset in pool_flush_it().
*/
- pool_flush_it(cp);
+ if (pool_flush_it(cp) == -1)
+ return -1;
remainder = WRITEBUFSZ;
}
[parent: 9cca9fd00c80]