aboutsummaryrefslogtreecommitdiffstats
path: root/src/interface.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/interface.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/interface.c b/src/interface.c
index fac7af771..9b8c09d32 100644
--- a/src/interface.c
+++ b/src/interface.c
@@ -629,11 +629,15 @@ void printInterfaceOutBuffer(Interface * interface) {
char * buffer;
int ret;
+ DEBUG("enter print interface out buffer\n");
+
if(!interface->open || interface->expired || !interface->outBuflen) {
+ DEBUG("nothing todo, leaving\n");
return;
}
if(interface->bufferList) {
+ DEBUG("we have a bufferList\n");
interface->outputBufferSize+=sizeof(ListNode);
interface->outputBufferSize+=interface->outBuflen+1;
if(interface->outputBufferSize>
@@ -658,9 +662,12 @@ void printInterfaceOutBuffer(Interface * interface) {
}
}
else {
+ DEBUG("no bufferList, just generic buffer\n");
+ DEBUG("attempting to write\n");
if((ret = write(interface->fd,interface->outBuffer,
interface->outBuflen))<0)
{
+ DEBUG("write unsuccessful\n");
if(errno==EAGAIN || errno==EINTR) {
buffer = malloc(interface->outBuflen+1);
memcpy(buffer,interface->outBuffer,
@@ -678,6 +685,7 @@ void printInterfaceOutBuffer(Interface * interface) {
}
}
else if(ret<interface->outBuflen) {
+ DEBUG("returned less than outBufLen\n");
buffer = malloc(interface->outBuflen-ret+1);
memcpy(buffer,interface->outBuffer+ret,
interface->outBuflen-ret);
@@ -694,7 +702,10 @@ void printInterfaceOutBuffer(Interface * interface) {
(char *)interface->bufferList->
firstNode->data)+1;
}
+ DEBUG("done writing\n");
}
interface->outBuflen = 0;
+
+ DEBUG("leaving print interface out buffer\n");
}