diff --git a/src/include/switch_platform.h b/src/include/switch_platform.h
index 02cbbdacef..62942c72c1 100644
--- a/src/include/switch_platform.h
+++ b/src/include/switch_platform.h
@@ -148,10 +148,10 @@ typedef int gid_t;
 #define SWITCH_MOD_DECLARE(type)		type __cdecl
 #define SWITCH_MOD_DECLARE_DATA
 #elif defined(MOD_EXPORTS)
-#define SWITCH_MOD_DECLARE(type)		__declspec(dllexport) type __cdecl
+#define SWITCH_MOD_DECLARE(type)		__declspec(dllexport) type __stdcall
 #define SWITCH_MOD_DECLARE_DATA			__declspec(dllexport)
 #else
-#define SWITCH_MOD_DECLARE(type)		__declspec(dllimport) type __cdecl
+#define SWITCH_MOD_DECLARE(type)		__declspec(dllimport) type __stdcall
 #define SWITCH_MOD_DECLARE_DATA			__declspec(dllimport)
 #endif
 #define SIGHUP SIGTERM
diff --git a/src/mod/languages/mod_lua/freeswitch_lua.h b/src/mod/languages/mod_lua/freeswitch_lua.h
index 550e756c84..6a6ffbff83 100644
--- a/src/mod/languages/mod_lua/freeswitch_lua.h
+++ b/src/mod/languages/mod_lua/freeswitch_lua.h
@@ -23,7 +23,7 @@ class Session : public CoreSession {
     Session(char *uuid, CoreSession *a_leg = NULL);
     Session(switch_core_session_t *session);
     ~Session();        
-	virtual void destroy(void);
+	SWITCH_MOD_DECLARE(virtual void) destroy(void);
 	
 	virtual bool begin_allow_threads();
 	virtual bool end_allow_threads();