]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
FreeTDM: Add ftdm_clamp_safe()
authorStefan Knoblich <stkn@openisdn.net>
Fri, 21 Sep 2012 23:06:34 +0000 (01:06 +0200)
committerStefan Knoblich <stkn@openisdn.net>
Sat, 6 Oct 2012 14:50:55 +0000 (16:50 +0200)
"Safer" version of ftdm_clamp(), that swaps min/max parameters if
vmin happens to be larger than vmax, making sure the output will
always satisfy vmin <= x <= vmax.

Signed-off-by: Stefan Knoblich <stkn@openisdn.net>
libs/freetdm/src/include/ftdm_os.h

index d9d2b23205582aeb7cd562dc33c01f012faf9f6d..c34810d241338ca95ce7cb2f7c74ca1bb32ee133 100644 (file)
@@ -87,6 +87,10 @@ typedef uint64_t ftdm_time_t;
 /*! \brief Get value that is in range [vmin,vmax] */
 #define ftdm_clamp(val,vmin,vmax) ftdm_max(vmin,ftdm_min(val,vmax))
 
+/*!< \brief Safer version of ftdm_clamp(), that swaps vmin/vmax parameters if vmin > vmax */
+#define ftdm_clamp_safe(val,vmin,vmax) \
+       ftdm_clamp(val, ftdm_min(vmin,vmax), ftdm_max(vmin,vmax))
+
 /*!
  * \brief Get offset of member in structure
  * \param[in]  type    Type of struct