If ast_channel struct is not declared before ast_register_application2,
[lcr.git] / chan_lcr.c
index a2951ae..a81e48d 100644 (file)
@@ -136,6 +136,13 @@ it is called from ast_channel process which has already locked ast_channel.
 #ifdef LCR_FOR_ASTERISK
 #include <asterisk/buildopts.h>
 #endif
 #ifdef LCR_FOR_ASTERISK
 #include <asterisk/buildopts.h>
 #endif
+
+/*
+ * Fwd declare struct ast_channel to get rid of gcc warning about
+ * incompatible pointer type passed to ast_register_application2.
+ */
+struct ast_channel;
+
 #include <asterisk/module.h>
 #include <asterisk/channel.h>
 #include <asterisk/config.h>
 #include <asterisk/module.h>
 #include <asterisk/channel.h>
 #include <asterisk/config.h>
@@ -2948,7 +2955,7 @@ static int lcr_indicate(struct ast_channel *ast, int cond, const void *data, siz
        union parameter newparam;
        int res = 0;
        struct chan_call *call;
        union parameter newparam;
        int res = 0;
        struct chan_call *call;
-       const struct tone_zone_sound *ts = NULL;
+       const struct ast_tone_zone_sound *ts = NULL;
 
        ast_mutex_lock(&chan_lock);
 #if ASTERISK_VERSION_NUM < 110000
 
        ast_mutex_lock(&chan_lock);
 #if ASTERISK_VERSION_NUM < 110000