diff --git a/include/asterisk/pbx.h b/include/asterisk/pbx.h
index 1765aeb4b7a9f878e0d077398365ef6b4e25a2a2..5bc8b84d832d5ddcc25fe3c8e04f4f5e9cf553b1 100644
--- a/include/asterisk/pbx.h
+++ b/include/asterisk/pbx.h
@@ -692,7 +692,14 @@ int ast_pbx_outgoing_exten(const char *type, int format, void *data, int timeout
    particular application with given extension */
 int ast_pbx_outgoing_app(const char *type, int format, void *data, int timeout, const char *app, const char *appdata, int *reason, int sync, const char *cid_num, const char *cid_name, struct ast_variable *vars, const char *account, struct ast_channel **locked_channel);
 
-/* Evaluate a condition for non-falseness and return a boolean */
+/*!
+ * \brief Evaluate a condition
+ *
+ * \retval 0 if the condition is NULL or of zero length
+ * \retval int If the string is an integer, the integer representation of
+ *             the integer is returned
+ * \retval 1 Any other non-empty string
+ */
 int pbx_checkcondition(const char *condition);
 
 /* Functions for returning values from structures */
diff --git a/pbx.c b/pbx.c
index a2fd93d05166ca593c781d22ba8db576cf9689bc..f1206b51d077fd4bc7d0f88698155b72b1dab789 100644
--- a/pbx.c
+++ b/pbx.c
@@ -5486,7 +5486,7 @@ int pbx_checkcondition(const char *condition)
 		return 0;
 	else if (*condition >= '0' && *condition <= '9')	/* Numbers are evaluated for truth */
 		return atoi(condition);
-	else	/* Strings are true -- XXX maybe use ast_true() ? */
+	else	/* Strings are true */
 		return 1;
 }