<p>Richard Mudgett has uploaded this change for <strong>review</strong>.</p><p><a href="https://gerrit.asterisk.org/10453">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">res_statsd.c: Fix returned reload status.<br><br>The return status when there was no change in statsd.conf was incorrect.<br>This resulted in the wrong status message on the CLI when reloading the<br>module.<br><br>* Fixed cleanup on initial load if initializing statsd failed.<br><br>Change-Id: Id24fae75f1a7ff584a444a5680e867d989792481<br>---<br>M res/res_statsd.c<br>1 file changed, 21 insertions(+), 13 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.asterisk.org:29418/asterisk refs/changes/53/10453/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/res/res_statsd.c b/res/res_statsd.c</span><br><span>index 67166e8..f94876e 100644</span><br><span>--- a/res/res_statsd.c</span><br><span>+++ b/res/res_statsd.c</span><br><span>@@ -318,6 +318,14 @@</span><br><span>    }</span><br><span> }</span><br><span> </span><br><span style="color: hsl(120, 100%, 40%);">+static int unload_module(void)</span><br><span style="color: hsl(120, 100%, 40%);">+{</span><br><span style="color: hsl(120, 100%, 40%);">+ statsd_shutdown();</span><br><span style="color: hsl(120, 100%, 40%);">+    aco_info_destroy(&cfg_info);</span><br><span style="color: hsl(120, 100%, 40%);">+      ao2_global_obj_release(confs);</span><br><span style="color: hsl(120, 100%, 40%);">+        return 0;</span><br><span style="color: hsl(120, 100%, 40%);">+}</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span> static int load_module(void)</span><br><span> {</span><br><span>  if (aco_info_init(&cfg_info)) {</span><br><span>@@ -350,8 +358,8 @@</span><br><span>            return AST_MODULE_LOAD_SUCCESS;</span><br><span>      }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-   if (statsd_init() != 0) {</span><br><span style="color: hsl(0, 100%, 40%);">-               aco_info_destroy(&cfg_info);</span><br><span style="color: hsl(120, 100%, 40%);">+      if (statsd_init()) {</span><br><span style="color: hsl(120, 100%, 40%);">+          unload_module();</span><br><span>             return AST_MODULE_LOAD_DECLINE;</span><br><span>      }</span><br><span> </span><br><span>@@ -361,26 +369,26 @@</span><br><span>        return AST_MODULE_LOAD_SUCCESS;</span><br><span> }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-static int unload_module(void)</span><br><span style="color: hsl(0, 100%, 40%);">-{</span><br><span style="color: hsl(0, 100%, 40%);">- statsd_shutdown();</span><br><span style="color: hsl(0, 100%, 40%);">-      aco_info_destroy(&cfg_info);</span><br><span style="color: hsl(0, 100%, 40%);">-        ao2_global_obj_release(confs);</span><br><span style="color: hsl(0, 100%, 40%);">-  return 0;</span><br><span style="color: hsl(0, 100%, 40%);">-}</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span> static int reload_module(void)</span><br><span> {</span><br><span style="color: hsl(0, 100%, 40%);">-       if (aco_process_config(&cfg_info, 1)) {</span><br><span style="color: hsl(120, 100%, 40%);">+   switch (aco_process_config(&cfg_info, 1)) {</span><br><span style="color: hsl(120, 100%, 40%);">+       case ACO_PROCESS_OK:</span><br><span style="color: hsl(120, 100%, 40%);">+          break;</span><br><span style="color: hsl(120, 100%, 40%);">+        case ACO_PROCESS_UNCHANGED:</span><br><span style="color: hsl(120, 100%, 40%);">+           return AST_MODULE_LOAD_SUCCESS;</span><br><span style="color: hsl(120, 100%, 40%);">+       case ACO_PROCESS_ERROR:</span><br><span style="color: hsl(120, 100%, 40%);">+       default:</span><br><span>             return AST_MODULE_LOAD_DECLINE;</span><br><span>      }</span><br><span> </span><br><span>        if (is_enabled()) {</span><br><span style="color: hsl(0, 100%, 40%);">-             return statsd_init();</span><br><span style="color: hsl(120, 100%, 40%);">+         if (statsd_init()) {</span><br><span style="color: hsl(120, 100%, 40%);">+                  return AST_MODULE_LOAD_DECLINE;</span><br><span style="color: hsl(120, 100%, 40%);">+               }</span><br><span>    } else {</span><br><span>             statsd_shutdown();</span><br><span style="color: hsl(0, 100%, 40%);">-              return AST_MODULE_LOAD_SUCCESS;</span><br><span>      }</span><br><span style="color: hsl(120, 100%, 40%);">+     return AST_MODULE_LOAD_SUCCESS;</span><br><span> }</span><br><span> </span><br><span> /* The priority of this module is set to be as low as possible, since it could</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.asterisk.org/10453">change 10453</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.asterisk.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.asterisk.org/10453"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: asterisk </div>
<div style="display:none"> Gerrit-Branch: 13 </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>
<div style="display:none"> Gerrit-Change-Id: Id24fae75f1a7ff584a444a5680e867d989792481 </div>
<div style="display:none"> Gerrit-Change-Number: 10453 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Richard Mudgett <rmudgett@digium.com> </div>