diff --git a/trunk/src/app/srs_app_server.cpp b/trunk/src/app/srs_app_server.cpp index e56d2042ae..9efdba41d7 100755 --- a/trunk/src/app/srs_app_server.cpp +++ b/trunk/src/app/srs_app_server.cpp @@ -690,6 +690,7 @@ int SrsServer::acquire_pid_file() if(errno == EACCES || errno == EAGAIN) { ret = ERROR_SYSTEM_PID_ALREADY_RUNNING; srs_error("srs is already running! ret=%#x", ret); + ::close(fd); return ret; } diff --git a/trunk/src/app/srs_app_utility.cpp b/trunk/src/app/srs_app_utility.cpp index 66107cc6c0..d6ac34701f 100644 --- a/trunk/src/app/srs_app_utility.cpp +++ b/trunk/src/app/srs_app_utility.cpp @@ -71,6 +71,7 @@ int srs_socket_connect(string server, int port, int64_t timeout, st_netfd_t* pst if(stfd == NULL){ ret = ERROR_ST_OPEN_SOCKET; srs_error("st_netfd_open_socket failed. ret=%d", ret); + ::close(sock); return ret; } @@ -94,12 +95,14 @@ int srs_socket_connect(string server, int port, int64_t timeout, st_netfd_t* pst srs_info("connect ok. server=%s, ip=%s, port=%d", server.c_str(), ip.c_str(), port); *pstfd = stfd; + ::close(sock); return ret; failed: if (stfd) { srs_close_stfd(stfd); } + ::close(sock); return ret; } diff --git a/trunk/src/kernel/srs_kernel_codec.cpp b/trunk/src/kernel/srs_kernel_codec.cpp index 42d577204c..75001d241d 100644 --- a/trunk/src/kernel/srs_kernel_codec.cpp +++ b/trunk/src/kernel/srs_kernel_codec.cpp @@ -169,7 +169,7 @@ string srs_codec_avc_level2str(SrsAvcLevel level) // 1 = 11 kHz = 11025 Hz // 2 = 22 kHz = 22050 Hz // 3 = 44 kHz = 44100 Hz -int flv_sample_rates[] = {5512, 11025, 22050, 44100}; +int flv_sample_rates[] = {5512, 11025, 22050, 44100, 0}; // the sample rates in the codec, // in the sequence header. diff --git a/trunk/src/kernel/srs_kernel_utility.cpp b/trunk/src/kernel/srs_kernel_utility.cpp index 276c321233..60eef5ddb6 100644 --- a/trunk/src/kernel/srs_kernel_utility.cpp +++ b/trunk/src/kernel/srs_kernel_utility.cpp @@ -652,7 +652,7 @@ int srs_av_base64_decode(u_int8_t* out, const char* in_str, int out_size) // no sign extension const u_int8_t *in = (const u_int8_t*)in_str; unsigned bits = 0xff; - unsigned v; + unsigned v = 0; while (end - dst > 3) { BASE64_DEC_STEP(0);