MBED_DEMOS / Mbed 2 deprecated mbed_mqtt_endpoint_ublox_cellular

Dependencies:   C027_Support C12832 StatusReporter LM75B MQTT-ansond c027_radios endpoint_core endpoint_mqtt mbed-rtos mbed

Revision:
72:ffd155ec8b93
Parent:
71:221500a073df
Child:
89:6e7dd4cba216
diff -r 221500a073df -r ffd155ec8b93 MQTTTransport.cpp
--- a/MQTTTransport.cpp	Tue Mar 04 04:49:17 2014 +0000
+++ b/MQTTTransport.cpp	Tue Mar 04 05:27:00 2014 +0000
@@ -118,14 +118,20 @@
          memset(buffer,0,MAX_MQTT_MESSAGE_LENGTH+1); 
          memcpy(buffer,payload,payload_length); 
          int count = 0; for(int i=0;i<payload_length;++i) if (payload[i] == ':') ++count;
-         for(int i=0;i<payload_length;++i) if (buffer[i] == ':') buffer[i] = ' ';     
+         for(int i=0;i<payload_length;++i) {
+             if (buffer[i] == ':') {
+                 if (i < (payload_length-1)) buffer[i] = ' ';
+                 else buffer[i] = '\0';
+             }
+         }     
          if (count == 1) sscanf(buffer,"%s %s",message_type,message_verb);
          if (count == 2) sscanf(buffer,"%s %s %s",message_type,message_verb,message_value);
          if (count == 3) sscanf(buffer,"%s %s %s %s",message_type,message_verb,message_value,message_opt);
                         
          // DEBUG
-         this->logger()->log("Raw Payload: %s",buffer);
-         this->logger()->log("Parsed Payload: Type: [%s] Name: [%s] Verb: [%s] Value: [%s]",message_type,message_name,message_verb,message_value);
+         //this->logger()->log("Raw Payload: %s, length: %d",payload,payload_length);
+         //this->logger()->log("Buffer: %s, length: %d",buffer,strlen(buffer));
+         //this->logger()->log("Parsed Payload: Type: [%s] Name: [%s] Verb: [%s] Value: [%s]",message_type,message_name,message_verb,message_value);
                           
          // load endpoints
          if (message_type != NULL && strcmp(message_type,IOC_ENDPOINT_VERB) == 0) {                 // Endpoint