]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/sckipc.cpp
make code dealing with wxUSE_IDLEMENUUPDATES a bit more clear and avoid warning due...
[wxWidgets.git] / src / common / sckipc.cpp
index 50dcb26fef0838d949e31b92c32196eaee48309a..14526474d7fa14f5bb390cc9582792bf58e3dd99 100644 (file)
@@ -680,17 +680,21 @@ void wxTCPEventHandler::Client_OnRequest(wxSocketEvent &event)
     const wxString topic = connection->m_topic;
     wxString item;
 
+    bool error = false;
+
     const int msg = streams->Read8();
     switch ( msg )
     {
         case IPC_EXECUTE:
             {
                 wxIPCFormat format;
-                size_t size;
+                size_t size wxDUMMY_INITIALIZE(0);
                 void * const
                     data = streams->ReadFormatData(connection, &format, &size);
-
-                connection->OnExecute(topic, data, size, format);
+                if ( data )
+                    connection->OnExecute(topic, data, size, format);
+                else
+                    error = true;
             }
             break;
 
@@ -699,11 +703,14 @@ void wxTCPEventHandler::Client_OnRequest(wxSocketEvent &event)
                 item = streams->ReadString();
 
                 wxIPCFormat format;
-                size_t size;
+                size_t size wxDUMMY_INITIALIZE(0);
                 void * const
                     data = streams->ReadFormatData(connection, &format, &size);
 
-                connection->OnAdvise(topic, item, data, size, format);
+                if ( data )
+                    connection->OnAdvise(topic, item, data, size, format);
+                else
+                    error = true;
             }
             break;
 
@@ -732,10 +739,13 @@ void wxTCPEventHandler::Client_OnRequest(wxSocketEvent &event)
                 item = streams->ReadString();
                 wxIPCFormat format = (wxIPCFormat)streams->Read8();
 
-                size_t size;
+                size_t size wxDUMMY_INITIALIZE(0);
                 void * const data = streams->ReadData(connection, &size);
 
-                connection->OnPoke(topic, item, data, size, format);
+                if ( data )
+                    connection->OnPoke(topic, item, data, size, format);
+                else
+                    error = true;
             }
             break;
 
@@ -789,9 +799,12 @@ void wxTCPEventHandler::Client_OnRequest(wxSocketEvent &event)
 
         default:
             wxLogDebug("Unknown message code %d received.", msg);
-            IPCOutput(streams).Write8(IPC_FAIL);
+            error = true;
             break;
     }
+
+    if ( error )
+        IPCOutput(streams).Write8(IPC_FAIL);
 }
 
 void wxTCPEventHandler::Server_OnRequest(wxSocketEvent &event)