[sr-dev] git:4.1: mqueue: fix mq_size() not to return 0

Daniel-Constantin Mierla miconda at gmail.com
Thu Nov 6 15:15:29 CET 2014


Module: sip-router
Branch: 4.1
Commit: adc4ebc65849a81858f640046a79ef3078139825
URL:    http://git.sip-router.org/cgi-bin/gitweb.cgi/sip-router/?a=commit;h=adc4ebc65849a81858f640046a79ef3078139825

Author: Daniel-Constantin Mierla <miconda at gmail.com>
Committer: Daniel-Constantin Mierla <miconda at gmail.com>
Date:   Wed Nov  5 13:59:53 2014 +0100

mqueue: fix mq_size() not to return 0

- return 0 for a config function is considered 'exit' by interpreter
- if size of the queue is 0, the function return -1
- for other error cases, the return code was decremented by 1

(cherry picked from commit bde57b53386e792651b5ac86ea32d16ab721a07c)
(cherry picked from commit 281c668b5e3a0ef9f7edde2bbea6b81201bd00b0)

Conflicts:
	modules/mqueue/mqueue_api.c

---

 modules/mqueue/mqueue_api.c |    5 +++--
 modules/mqueue/mqueue_mod.c |    3 ++-
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/modules/mqueue/mqueue_api.c b/modules/mqueue/mqueue_api.c
index 4be71d8..f70d191 100644
--- a/modules/mqueue/mqueue_api.c
+++ b/modules/mqueue/mqueue_api.c
@@ -455,8 +455,9 @@ int pv_get_mqv(struct sip_msg *msg, pv_param_t *param,
 	return pv_get_strval(msg, param, res, &mp->item->val);
 }
 
-/* Return head->csize for a given queue */
-
+/**
+ * Return head->csize for a given queue
+ */
 int _mq_get_csize(str *name) 
 {
 	mq_head_t *mh = mq_head_get(name);
diff --git a/modules/mqueue/mqueue_mod.c b/modules/mqueue/mqueue_mod.c
index 3eacf02..52616fa 100644
--- a/modules/mqueue/mqueue_mod.c
+++ b/modules/mqueue/mqueue_mod.c
@@ -156,7 +156,8 @@ static int w_mq_size(struct sip_msg *msg, char *mq, char *str2)
 	ret = _mq_get_csize(&q);
 
 	if(ret < 0)
-		LM_ERR("mqueue not found\n");
+		LM_ERR("mqueue %.*s not found\n", q.len, q.s);
+	if(ret<=0) ret--;
 
 	return ret;
 }




More information about the sr-dev mailing list