1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-02-13 11:51:57 +00:00

fix mem leak in recv message error, always free msg

This commit is contained in:
winlin 2014-05-02 12:44:38 +08:00
parent 52d1fa8df5
commit 5b98a27256
3 changed files with 5 additions and 1 deletions

View file

@ -454,7 +454,6 @@ int SrsRtmpClient::connect_app(string app, string tc_url)
if (true) {
SrsConnectAppPacket* pkt = new SrsConnectAppPacket();
pkt->command_object = SrsAmf0Any::object();
pkt->command_object->set("app", SrsAmf0Any::str(app.c_str()));
pkt->command_object->set("swfUrl", SrsAmf0Any::str());
pkt->command_object->set("tcUrl", SrsAmf0Any::str(tc_url.c_str()));

View file

@ -382,6 +382,7 @@ int SrsProtocol::recv_message(SrsMessage** pmsg)
if (ret != ERROR_SOCKET_TIMEOUT && !srs_is_client_gracefully_close(ret)) {
srs_error("recv interlaced message failed. ret=%d", ret);
}
srs_freep(msg);
return ret;
}
srs_verbose("entire msg received");

View file

@ -477,6 +477,10 @@ protected:
public:
std::string command_name;
double transaction_id;
/**
* alloc in packet constructor,
* so, directly use it, never alloc again.
*/
SrsAmf0Object* command_object;
public:
SrsConnectAppPacket();