From 362581129d1ad4b9585d0a919d0ca9697326ff3b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20=C3=96man?= Date: Tue, 27 Nov 2007 11:05:48 +0000 Subject: [PATCH] make pkt_load() return if it is successful --- buffer.c | 10 ++++++---- buffer.h | 2 +- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/buffer.c b/buffer.c index 4fc9ad27..6afc0397 100644 --- a/buffer.c +++ b/buffer.c @@ -194,7 +194,7 @@ pkt_store(th_pkt_t *pkt) /* - * Force flush of a packet (if a transport is stopped) + * Force flush of a packet */ void pkt_unstore(th_pkt_t *pkt) @@ -223,7 +223,7 @@ pkt_unstore(th_pkt_t *pkt) /* * */ -void +int pkt_load(th_pkt_t *pkt) { if(pkt->pkt_payload == NULL && pkt->pkt_storage != NULL) { @@ -232,8 +232,7 @@ pkt_load(th_pkt_t *pkt) pkt->pkt_storage_offset); storage_mem_enq(pkt); } - if(pkt->pkt_payload == NULL) - printf("Packet %p load failed\n", pkt); + return pkt->pkt_payload == NULL ? -1 : 0; } @@ -277,6 +276,9 @@ storage_mem_enq(th_pkt_t *pkt) free(pkt->pkt_payload); pkt->pkt_payload = NULL; + + if(pkt->pkt_storage == NULL) + pkt_unstore(pkt); } } diff --git a/buffer.h b/buffer.h index 74b260f5..675e3827 100644 --- a/buffer.h +++ b/buffer.h @@ -33,7 +33,7 @@ void pkt_store(th_pkt_t *pkt); void pkt_unstore(th_pkt_t *pkt); -void pkt_load(th_pkt_t *pkt); +int pkt_load(th_pkt_t *pkt); void *pkt_payload(th_pkt_t *pkt);