mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
for bug #235, fix the return code bug.
This commit is contained in:
parent
818000dd18
commit
e167c97786
1 changed files with 16 additions and 22 deletions
|
@ -320,12 +320,8 @@ namespace _srs_internal
|
||||||
|
|
||||||
key_block::~key_block()
|
key_block::~key_block()
|
||||||
{
|
{
|
||||||
if (random0) {
|
srs_freep(random0);
|
||||||
srs_freep(random0);
|
srs_freep(random1);
|
||||||
}
|
|
||||||
if (random1) {
|
|
||||||
srs_freep(random1);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int key_block::parse(SrsStream* stream)
|
int key_block::parse(SrsStream* stream)
|
||||||
|
@ -342,15 +338,12 @@ namespace _srs_internal
|
||||||
// reset stream to read others.
|
// reset stream to read others.
|
||||||
stream->skip(-764);
|
stream->skip(-764);
|
||||||
|
|
||||||
// TODO: FIXME: free it.
|
|
||||||
random0 = NULL;
|
|
||||||
random1 = NULL;
|
|
||||||
|
|
||||||
int valid_offset = calc_valid_offset();
|
int valid_offset = calc_valid_offset();
|
||||||
srs_assert(valid_offset >= 0);
|
srs_assert(valid_offset >= 0);
|
||||||
|
|
||||||
random0_size = valid_offset;
|
random0_size = valid_offset;
|
||||||
if (random0_size > 0) {
|
if (random0_size > 0) {
|
||||||
|
srs_freep(random0);
|
||||||
random0 = new char[random0_size];
|
random0 = new char[random0_size];
|
||||||
stream->read_bytes(random0, random0_size);
|
stream->read_bytes(random0, random0_size);
|
||||||
}
|
}
|
||||||
|
@ -359,6 +352,7 @@ namespace _srs_internal
|
||||||
|
|
||||||
random1_size = 764 - valid_offset - 128 - 4;
|
random1_size = 764 - valid_offset - 128 - 4;
|
||||||
if (random1_size > 0) {
|
if (random1_size > 0) {
|
||||||
|
srs_freep(random1);
|
||||||
random1 = new char[random1_size];
|
random1 = new char[random1_size];
|
||||||
stream->read_bytes(random1, random1_size);
|
stream->read_bytes(random1, random1_size);
|
||||||
}
|
}
|
||||||
|
@ -408,12 +402,8 @@ namespace _srs_internal
|
||||||
|
|
||||||
digest_block::~digest_block()
|
digest_block::~digest_block()
|
||||||
{
|
{
|
||||||
if (random0) {
|
srs_freep(random0);
|
||||||
srs_freep(random0);
|
srs_freep(random1);
|
||||||
}
|
|
||||||
if (random1) {
|
|
||||||
srs_freep(random1);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int digest_block::parse(SrsStream* stream)
|
int digest_block::parse(SrsStream* stream)
|
||||||
|
@ -425,15 +415,12 @@ namespace _srs_internal
|
||||||
|
|
||||||
offset = stream->read_4bytes();
|
offset = stream->read_4bytes();
|
||||||
|
|
||||||
// TODO: FIXME: free it.
|
|
||||||
random0 = NULL;
|
|
||||||
random1 = NULL;
|
|
||||||
|
|
||||||
int valid_offset = calc_valid_offset();
|
int valid_offset = calc_valid_offset();
|
||||||
srs_assert(valid_offset >= 0);
|
srs_assert(valid_offset >= 0);
|
||||||
|
|
||||||
random0_size = valid_offset;
|
random0_size = valid_offset;
|
||||||
if (random0_size > 0) {
|
if (random0_size > 0) {
|
||||||
|
srs_freep(random0);
|
||||||
random0 = new char[random0_size];
|
random0 = new char[random0_size];
|
||||||
stream->read_bytes(random0, random0_size);
|
stream->read_bytes(random0, random0_size);
|
||||||
}
|
}
|
||||||
|
@ -442,6 +429,7 @@ namespace _srs_internal
|
||||||
|
|
||||||
random1_size = 764 - 4 - valid_offset - 32;
|
random1_size = 764 - 4 - valid_offset - 32;
|
||||||
if (random1_size > 0) {
|
if (random1_size > 0) {
|
||||||
|
srs_freep(random1);
|
||||||
random1 = new char[random1_size];
|
random1 = new char[random1_size];
|
||||||
stream->read_bytes(random1, random1_size);
|
stream->read_bytes(random1, random1_size);
|
||||||
}
|
}
|
||||||
|
@ -741,9 +729,10 @@ namespace _srs_internal
|
||||||
|
|
||||||
int c1s1_strategy_schema0::copy_to(c1s1* owner, char* bytes, int size, bool with_digest)
|
int c1s1_strategy_schema0::copy_to(c1s1* owner, char* bytes, int size, bool with_digest)
|
||||||
{
|
{
|
||||||
SrsStream stream;
|
|
||||||
int ret = ERROR_SUCCESS;
|
int ret = ERROR_SUCCESS;
|
||||||
|
|
||||||
|
SrsStream stream;
|
||||||
|
|
||||||
if ((ret = stream.initialize(bytes, size)) != ERROR_SUCCESS) {
|
if ((ret = stream.initialize(bytes, size)) != ERROR_SUCCESS) {
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
@ -753,6 +742,8 @@ namespace _srs_internal
|
||||||
copy_digest(&stream, with_digest);
|
copy_digest(&stream, with_digest);
|
||||||
|
|
||||||
srs_assert(stream.empty());
|
srs_assert(stream.empty());
|
||||||
|
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
c1s1_strategy_schema1::c1s1_strategy_schema1()
|
c1s1_strategy_schema1::c1s1_strategy_schema1()
|
||||||
|
@ -801,9 +792,10 @@ namespace _srs_internal
|
||||||
|
|
||||||
int c1s1_strategy_schema1::copy_to(c1s1* owner, char* bytes, int size, bool with_digest)
|
int c1s1_strategy_schema1::copy_to(c1s1* owner, char* bytes, int size, bool with_digest)
|
||||||
{
|
{
|
||||||
SrsStream stream;
|
|
||||||
int ret = ERROR_SUCCESS;
|
int ret = ERROR_SUCCESS;
|
||||||
|
|
||||||
|
SrsStream stream;
|
||||||
|
|
||||||
if ((ret = stream.initialize(bytes, size)) != ERROR_SUCCESS) {
|
if ((ret = stream.initialize(bytes, size)) != ERROR_SUCCESS) {
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
@ -813,6 +805,8 @@ namespace _srs_internal
|
||||||
copy_key(&stream);
|
copy_key(&stream);
|
||||||
|
|
||||||
srs_assert(stream.empty());
|
srs_assert(stream.empty());
|
||||||
|
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: FIXME: move to the right position.
|
// TODO: FIXME: move to the right position.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue