Merged revisions 73985 via svnmerge from
[asterisk/asterisk.git] / funcs / func_devstate.c
index c6429a8..6c3d8e9 100644 (file)
@@ -24,7 +24,7 @@
  *
  * \ingroup functions
  *
- * \note Props go out to Ahrimanes in #asterisk for requesting this at 4:30 AM
+ * \note Props go out to Ahrimanes in \#asterisk for requesting this at 4:30 AM
  *       when I couldn't sleep.  :)
  */
 
@@ -99,8 +99,10 @@ static enum ast_device_state custom_devstate_callback(const char *data)
 
        AST_RWLIST_RDLOCK(&custom_devices);
        AST_RWLIST_TRAVERSE(&custom_devices, dev, entry) {
-               if (!strcasecmp(dev->name, data))
+               if (!strcasecmp(dev->name, data)) {
                        state = dev->state;     
+                       break;
+               }
        }
        AST_RWLIST_UNLOCK(&custom_devices);
 
@@ -185,7 +187,7 @@ static int unload_module(void)
 
        AST_RWLIST_WRLOCK(&custom_devices);
        while ((dev = AST_RWLIST_REMOVE_HEAD(&custom_devices, entry)))
-               free(dev);
+               ast_free(dev);
        AST_RWLIST_UNLOCK(&custom_devices);
 
        return res;
@@ -202,4 +204,4 @@ static int load_module(void)
        return res;
 }
 
-AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, "Device state dialplan functions");
+AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, "Gets or sets a device state in the dialplan");