mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
Cover shared ptr message.
This commit is contained in:
parent
9cdd506b4f
commit
dd4ccfab79
3 changed files with 48 additions and 5 deletions
|
@ -175,6 +175,7 @@
|
|||
#define ERROR_OpenSslCreateHMAC 2050
|
||||
#define ERROR_RTMP_STREAM_NAME_EMPTY 2051
|
||||
#define ERROR_HTTP_HIJACK 2052
|
||||
#define ERROR_RTMP_MESSAGE_CREATE 2053
|
||||
//
|
||||
// The system control message,
|
||||
// It's not an error, but special control logic.
|
||||
|
|
|
@ -250,12 +250,12 @@ srs_error_t SrsSharedPtrMessage::create(SrsCommonMessage* msg)
|
|||
srs_error_t SrsSharedPtrMessage::create(SrsMessageHeader* pheader, char* payload, int size)
|
||||
{
|
||||
srs_error_t err = srs_success;
|
||||
|
||||
if (ptr) {
|
||||
srs_assert(false);
|
||||
return srs_error_new(ERROR_SYSTEM_ASSERT_FAILED, "should not set the payload twice");
|
||||
|
||||
if (size < 0) {
|
||||
return srs_error_new(ERROR_RTMP_MESSAGE_CREATE, "create message size=%d", size);
|
||||
}
|
||||
|
||||
|
||||
srs_assert(!ptr);
|
||||
ptr = new SrsSharedPtrPayload();
|
||||
|
||||
// direct attach the data.
|
||||
|
|
|
@ -3467,6 +3467,48 @@ VOID TEST(KernelFLVTest, CoverAll)
|
|||
#endif
|
||||
}
|
||||
|
||||
VOID TEST(KernelFLVTest, CoverSharedPtrMessage)
|
||||
{
|
||||
srs_error_t err;
|
||||
|
||||
if (true) {
|
||||
SrsMessageHeader h;
|
||||
SrsSharedPtrMessage m;
|
||||
HELPER_EXPECT_SUCCESS(m.create(&h, new char[1], 1));
|
||||
}
|
||||
|
||||
if (true) {
|
||||
SrsMessageHeader h;
|
||||
SrsSharedPtrMessage m;
|
||||
HELPER_EXPECT_SUCCESS(m.create(&h, NULL, 0));
|
||||
}
|
||||
|
||||
if (true) {
|
||||
SrsMessageHeader h;
|
||||
SrsSharedPtrMessage m;
|
||||
HELPER_EXPECT_FAILED(m.create(&h, NULL, -1));
|
||||
}
|
||||
|
||||
if (true) {
|
||||
SrsCommonMessage cm;
|
||||
cm.size = -1;
|
||||
|
||||
SrsSharedPtrMessage m;
|
||||
HELPER_EXPECT_FAILED(m.create(&cm));
|
||||
}
|
||||
|
||||
if (true) {
|
||||
SrsMessageHeader h;
|
||||
h.perfer_cid = 1;
|
||||
|
||||
SrsSharedPtrMessage m;
|
||||
HELPER_EXPECT_SUCCESS(m.create(&h, NULL, 0));
|
||||
|
||||
EXPECT_FALSE(m.check(1));
|
||||
EXPECT_TRUE(m.check(1));
|
||||
}
|
||||
}
|
||||
|
||||
VOID TEST(KernelLogTest, CoverAll)
|
||||
{
|
||||
if (true) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue