From 621b45743238c6bf9f8d33f2236052da6522ceb6 Mon Sep 17 00:00:00 2001 From: Stefan Neis Date: Sun, 8 Aug 2004 20:44:14 +0000 Subject: [PATCH] Fixed linkage errors (C linkage vs. C++ linkage) caused by switching gsocket from C to C++ code. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28714 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/os2/app.cpp | 27 +-------------------------- src/os2/gsockpm.cpp | 18 +++++++----------- 2 files changed, 8 insertions(+), 37 deletions(-) diff --git a/src/os2/app.cpp b/src/os2/app.cpp index fc5cf0690a..cf60a54926 100644 --- a/src/os2/app.cpp +++ b/src/os2/app.cpp @@ -115,35 +115,10 @@ struct GsocketCallbackInfo{ void* gsock; }; -// These defines and wrapper functions are used here and in gsockpm.c +// These defines are used here and in gsockpm.cpp #define wxSockReadMask 0x01 #define wxSockWriteMask 0x02 -#ifdef __EMX__ -extern "C" -int wxAppAddSocketHandler(int handle, int mask, - void (*callback)(void*), void * gsock) -{ - return wxTheApp->AddSocketHandler(handle, mask, callback, gsock); -} -extern "C" -void wxAppRemoveSocketHandler(int handle) -{ - wxTheApp->RemoveSocketHandler(handle); -} -#else -// Linkage mode problems using callbacks with extern C in a .cpp module -int wxAppAddSocketHandler(int handle, int mask, - void (*callback)(void*), void * gsock) -{ - return wxTheApp->AddSocketHandler(handle, mask, callback, gsock); -} -void wxAppRemoveSocketHandler(int handle) -{ - wxTheApp->RemoveSocketHandler(handle); -} -#endif - void wxApp::HandleSockets() { bool pendingEvent = FALSE; diff --git a/src/os2/gsockpm.cpp b/src/os2/gsockpm.cpp index 5effe2cb2a..e7af117f05 100644 --- a/src/os2/gsockpm.cpp +++ b/src/os2/gsockpm.cpp @@ -13,11 +13,7 @@ #include #include "wx/unix/gsockunx.h" #include "wx/gsocket.h" - -extern int wxAppAddSocketHandler(int handle, int mask, - void (*callback)(void*), void * gsock); - -extern void wxAppRemoveSocketHandler(int handle); +#include "wx/app.h" #define wxSockReadMask 0x01 #define wxSockWriteMask 0x02 @@ -80,17 +76,17 @@ void GSocketGUIFunctionsTableConcrete::Install_Callback(GSocket *socket, GSocket } if (m_id[c] != -1) - wxAppRemoveSocketHandler(m_id[c]); + wxTheApp->RemoveSocketHandler(m_id[c]); if (c == 0) { - m_id[0] = wxAppAddSocketHandler(socket->m_fd, wxSockReadMask, - _GSocket_PM_Input, (void *)socket); + m_id[0] = wxTheApp->AddSocketHandler(socket->m_fd, wxSockReadMask, + _GSocket_PM_Input, (void *)socket); } else { - m_id[1] = wxAppAddSocketHandler(socket->m_fd, wxSockWriteMask, - _GSocket_PM_Output, (void *)socket); + m_id[1] = wxTheApp->AddSocketHandler(socket->m_fd, wxSockWriteMask, + _GSocket_PM_Output, (void *)socket); } } @@ -107,7 +103,7 @@ void GSocketGUIFunctionsTableConcrete::Uninstall_Callback(GSocket *socket, GSock default: return; } if (m_id[c] != -1) - wxAppRemoveSocketHandler(m_id[c]); + wxTheApp->RemoveSocketHandler(m_id[c]); m_id[c] = -1; } -- 2.45.2