]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
Convert esl_true and esl_false to functions
authorTravis Cross <tc@traviscross.com>
Wed, 4 Jun 2014 11:53:34 +0000 (11:53 +0000)
committerTravis Cross <tc@traviscross.com>
Wed, 4 Jun 2014 12:00:31 +0000 (12:00 +0000)
Prior to this commit, an expression such as:

  esl_true("true") ? 42 : 0

...would return 1 rather than 42.

libs/esl/src/include/esl_config.h

index 0a2dffb42a145df68db9b886264307e9e6798c37..34c67ca21990b72d8d60c5dc8988f9f7ee1d280a 100644 (file)
@@ -81,28 +81,30 @@ extern "C" {
   \param expr a string expression
   \return true or false 
 */
-#define esl_true(expr)\
-(expr && ( !strcasecmp(expr, "yes") ||\
-!strcasecmp(expr, "on") ||\
-!strcasecmp(expr, "true") ||\
-!strcasecmp(expr, "enabled") ||\
-!strcasecmp(expr, "active") ||\
-!strcasecmp(expr, "allow") ||\
-atoi(expr))) ? 1 : 0
+static inline int esl_true(const char *expr) {
+       return (expr && (!strcasecmp(expr, "yes")
+                                        || !strcasecmp(expr, "on")
+                                        || !strcasecmp(expr, "true")
+                                        || !strcasecmp(expr, "enabled")
+                                        || !strcasecmp(expr, "active")
+                                        || !strcasecmp(expr, "allow")
+                                        || atoi(expr)));
+}
 
 /*!
   \brief Evaluate the falsefullness of a string expression
   \param expr a string expression
   \return true or false 
 */
-#define esl_false(expr)\
-(expr && ( !strcasecmp(expr, "no") ||\
-!strcasecmp(expr, "off") ||\
-!strcasecmp(expr, "false") ||\
-!strcasecmp(expr, "disabled") ||\
-!strcasecmp(expr, "inactive") ||\
-!strcasecmp(expr, "disallow") ||\
-!atoi(expr))) ? 1 : 0
+static inline int esl_false(const char *expr) {
+       return (expr && (!strcasecmp(expr, "no")
+                                        || !strcasecmp(expr, "off")
+                                        || !strcasecmp(expr, "false")
+                                        || !strcasecmp(expr, "disabled")
+                                        || !strcasecmp(expr, "inactive")
+                                        || !strcasecmp(expr, "disallow")
+                                        || !atoi(expr)));
+}
 
 typedef struct esl_config esl_config_t;