Fixes for passing non-PODs via '...'

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35511 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Michael Wetherell 2005-09-14 21:10:34 +00:00
parent bc2defe275
commit d2797f557a
2 changed files with 19 additions and 19 deletions

View File

@ -416,28 +416,28 @@ void MyConnection::Log(const wxString& command, const wxString& topic,
{ {
wxString s; wxString s;
if (topic.IsEmpty() && item.IsEmpty()) if (topic.IsEmpty() && item.IsEmpty())
s.Printf(_T("%s("), command); s.Printf(_T("%s("), command.c_str());
else if (topic.IsEmpty()) else if (topic.IsEmpty())
s.Printf(_T("%s(item=\"%s\","), command, item); s.Printf(_T("%s(item=\"%s\","), command.c_str(), item.c_str());
else if (item.IsEmpty()) else if (item.IsEmpty())
s.Printf(_T("%s(topic=\"%s\","), command, topic); s.Printf(_T("%s(topic=\"%s\","), command.c_str(), topic.c_str());
else else
s.Printf(_T("%s(topic=\"%s\",item=\"%s\","), command, topic, item); s.Printf(_T("%s(topic=\"%s\",item=\"%s\","), command.c_str(), topic.c_str(), item.c_str());
if (format == wxIPC_TEXT || format == wxIPC_UNICODETEXT) if (format == wxIPC_TEXT || format == wxIPC_UNICODETEXT)
wxLogMessage(_T("%s\"%s\",%d)"), s, data, size); wxLogMessage(_T("%s\"%s\",%d)"), s.c_str(), data, size);
else if (format == wxIPC_PRIVATE) else if (format == wxIPC_PRIVATE)
{ {
if (size == 3) if (size == 3)
{ {
char *bytes = (char *)data; char *bytes = (char *)data;
wxLogMessage(_T("%s'%c%c%c',%d)"), s, bytes[0], bytes[1], bytes[2], size); wxLogMessage(_T("%s'%c%c%c',%d)"), s.c_str(), bytes[0], bytes[1], bytes[2], size);
} }
else else
wxLogMessage(_T("%s...,%d)"), s, size); wxLogMessage(_T("%s...,%d)"), s.c_str(), size);
} }
else if (format == wxIPC_INVALID) else if (format == wxIPC_INVALID)
wxLogMessage(_T("%s[invalid data],%d)"), s, size); wxLogMessage(_T("%s[invalid data],%d)"), s.c_str(), size);
} }
bool MyConnection::OnAdvise(const wxString& topic, const wxString& item, wxChar *data, bool MyConnection::OnAdvise(const wxString& topic, const wxString& item, wxChar *data,

View File

@ -252,7 +252,7 @@ MyServer::~MyServer()
wxConnectionBase *MyServer::OnAcceptConnection(const wxString& topic) wxConnectionBase *MyServer::OnAcceptConnection(const wxString& topic)
{ {
wxLogMessage(_T("OnAcceptConnection(\"%s\")"), topic); wxLogMessage(_T("OnAcceptConnection(\"%s\")"), topic.c_str());
if ( topic == IPC_TOPIC ) if ( topic == IPC_TOPIC )
{ {
@ -358,7 +358,7 @@ wxChar *MyConnection::OnRequest(const wxString& topic,
bool MyConnection::OnStartAdvise(const wxString& topic, bool MyConnection::OnStartAdvise(const wxString& topic,
const wxString& item) const wxString& item)
{ {
wxLogMessage(_T("OnStartAdvise(\"%s\",\"%s\")"), topic, item); wxLogMessage(_T("OnStartAdvise(\"%s\",\"%s\")"), topic.c_str(), item.c_str());
wxLogMessage(_T("Returning true")); wxLogMessage(_T("Returning true"));
m_sAdvise = item; m_sAdvise = item;
wxGetApp().GetFrame()->Enable(); wxGetApp().GetFrame()->Enable();
@ -368,7 +368,7 @@ bool MyConnection::OnStartAdvise(const wxString& topic,
bool MyConnection::OnStopAdvise(const wxString& topic, bool MyConnection::OnStopAdvise(const wxString& topic,
const wxString& item) const wxString& item)
{ {
wxLogMessage(_T("OnStopAdvise(\"%s\",\"%s\")"), topic, item); wxLogMessage(_T("OnStopAdvise(\"%s\",\"%s\")"), topic.c_str(), item.c_str());
wxLogMessage(_T("Returning true")); wxLogMessage(_T("Returning true"));
m_sAdvise.Empty(); m_sAdvise.Empty();
wxGetApp().GetFrame()->Enable(); wxGetApp().GetFrame()->Enable();
@ -380,28 +380,28 @@ void MyConnection::Log(const wxString& command, const wxString& topic,
{ {
wxString s; wxString s;
if (topic.IsEmpty() && item.IsEmpty()) if (topic.IsEmpty() && item.IsEmpty())
s.Printf(_T("%s("), command); s.Printf(_T("%s("), command.c_str());
else if (topic.IsEmpty()) else if (topic.IsEmpty())
s.Printf(_T("%s(\"%s\","), command, item); s.Printf(_T("%s(\"%s\","), command.c_str(), item.c_str());
else if (item.IsEmpty()) else if (item.IsEmpty())
s.Printf(_T("%s(\"%s\","), command, topic); s.Printf(_T("%s(\"%s\","), command.c_str(), topic.c_str());
else else
s.Printf(_T("%s(\"%s\",\"%s\","), command, topic, item); s.Printf(_T("%s(\"%s\",\"%s\","), command.c_str(), topic.c_str(), item.c_str());
if (format == wxIPC_TEXT || format == wxIPC_UNICODETEXT) if (format == wxIPC_TEXT || format == wxIPC_UNICODETEXT)
wxLogMessage(_T("%s\"%s\",%d)"), s, data, size); wxLogMessage(_T("%s\"%s\",%d)"), s.c_str(), data, size);
else if (format == wxIPC_PRIVATE) else if (format == wxIPC_PRIVATE)
{ {
if (size == 3) if (size == 3)
{ {
char *bytes = (char *)data; char *bytes = (char *)data;
wxLogMessage(_T("%s'%c%c%c',%d)"), s, bytes[0], bytes[1], bytes[2], size); wxLogMessage(_T("%s'%c%c%c',%d)"), s.c_str(), bytes[0], bytes[1], bytes[2], size);
} }
else else
wxLogMessage(_T("%s...,%d)"), s, size); wxLogMessage(_T("%s...,%d)"), s.c_str(), size);
} }
else if (format == wxIPC_INVALID) else if (format == wxIPC_INVALID)
wxLogMessage(_T("%s[invalid data],%d)"), s, size); wxLogMessage(_T("%s[invalid data],%d)"), s.c_str(), size);
} }
bool MyConnection::Advise(const wxString& item, wxChar *data, int size, wxIPCFormat format) bool MyConnection::Advise(const wxString& item, wxChar *data, int size, wxIPCFormat format)