#ifdef __cplusplus
extern "C" {
#endif
+
+#include <math.h>
+
#define TELETONE_MAX_DTMF_DIGITS 128
#define TELETONE_MAX_TONES 6
#define TELETONE_TONE_RANGE 127
typedef __int16 int16_t;
#endif
+#if (_MSC_VER >= 1400) // VC8+
+#define teletone_assert(expr) assert(expr);__analysis_assume( expr )
+#else
+#define teletone_assert(expr) assert(expr)
+#endif
+
#include <libteletone_generate.h>
#include <libteletone_detect.h>
char *buf,
int max)
{
+ teletone_assert(dtmf_detect_state->current_digits <= TELETONE_MAX_DTMF_DIGITS);
+
if (max > dtmf_detect_state->current_digits) {
max = dtmf_detect_state->current_digits;
}
need *= ts->channels;
if (need > ts->datalen) {
+ teletone_audio_t *tmp;
ts->datalen = need + ts->dynamic;
- if (!(ts->buffer = realloc(ts->buffer, ts->datalen))) {
+ tmp = realloc(ts->buffer, ts->datalen);
+ if (!tmp) {
return -1;
}
+ ts->buffer = tmp;
}
return 0;