Skip to content

Commit

Permalink
Copy payload and topic to avoid them being destroyed after the callba…
Browse files Browse the repository at this point in the history
…ck completes
  • Loading branch information
mgdm committed Oct 22, 2016
1 parent f84cb8f commit ad49281
Showing 1 changed file with 6 additions and 2 deletions.
8 changes: 6 additions & 2 deletions mosquitto.c
Original file line number Diff line number Diff line change
Expand Up @@ -1150,10 +1150,14 @@ PHP_MOSQUITTO_API void php_mosquitto_message_callback(struct mosquitto *mosq, vo
message_object->message.mid = message->mid;
message_object->message.qos = message->qos;
message_object->message.retain = message->retain;
message_object->message.topic = message->topic;
message_object->message.payload = message->payload;
message_object->message.topic = estrdup(message->topic);
message_object->owned_topic = 1;
message_object->message.payloadlen = message->payloadlen;

message_object->message.payload = ecalloc(message->payloadlen, sizeof(char));
memcpy(message_object->message.payload, message->payload, message->payloadlen);
message_object->owned_payload = 1;

object->message_callback.params = params;
object->message_callback.param_count = 1;

Expand Down

0 comments on commit ad49281

Please sign in to comment.