diff --git a/trunk/.gitignore b/trunk/.gitignore index 6ec2ebd1d..45ec1cf0b 100644 --- a/trunk/.gitignore +++ b/trunk/.gitignore @@ -37,4 +37,5 @@ srs *.dSYM/ *.gcov *.ts - +*.h264 +*.264 diff --git a/trunk/720p.h264.264 b/trunk/720p.h264.264 deleted file mode 100644 index 571b528c6..000000000 Binary files a/trunk/720p.h264.264 and /dev/null differ diff --git a/trunk/src/app/srs_app_config.cpp b/trunk/src/app/srs_app_config.cpp index a23285146..9eac88654 100644 --- a/trunk/src/app/srs_app_config.cpp +++ b/trunk/src/app/srs_app_config.cpp @@ -3959,7 +3959,12 @@ srs_error_t SrsConfig::check_number_connections() srs_error_t SrsConfig::parse_buffer(SrsConfigBuffer* buffer) { srs_error_t err = srs_success; - + + // We use a new root to parse buffer, to allow parse multiple times. + srs_freep(root); + root = new SrsConfDirective(); + + // Parse root tree from buffer. if ((err = root->parse(buffer)) != srs_success) { return srs_error_wrap(err, "root parse"); } diff --git a/trunk/src/utest/srs_utest_config.cpp b/trunk/src/utest/srs_utest_config.cpp index f04614345..cd9044a81 100644 --- a/trunk/src/utest/srs_utest_config.cpp +++ b/trunk/src/utest/srs_utest_config.cpp @@ -1804,3 +1804,12 @@ VOID TEST(ConfigMainTest, CheckConf_vhost_ingest_id) EXPECT_TRUE(ERROR_SUCCESS != conf.parse(_MIN_OK_CONF"vhost v{ingest{} ingest{}}")); } +VOID TEST(ConfigUnitTest, CheckDefaultValues) +{ + MockSrsConfig conf; + if (true) { + EXPECT_TRUE(ERROR_SUCCESS == conf.parse(_MIN_OK_CONF)); + EXPECT_EQ(30 * SRS_UTIME_SECONDS, conf.get_bw_check_interval_ms("")); + } +} +