mirror of
				https://github.com/ossrs/srs.git
				synced 2025-03-09 15:49:59 +00:00 
			
		
		
		
	For #1634, fix quit by accident SIGTERM while killing FFMPEG. 3.0.124
This commit is contained in:
		
							parent
							
								
									d5bbf84439
								
							
						
					
					
						commit
						927c0c8e39
					
				
					 4 changed files with 11 additions and 4 deletions
				
			
		|  | @ -146,6 +146,7 @@ For previous versions, please read: | ||||||
| 
 | 
 | ||||||
| ## V3 changes | ## V3 changes | ||||||
| 
 | 
 | ||||||
|  | * v3.0, 2020-03-11, For [#1634][bug #1634], fix quit by accident SIGTERM while killing FFMPEG. 3.0.124 | ||||||
| * <strong>v3.0, 2020-03-05, [3.0 beta2(3.0.123)][r3.0b2] released. 122170 lines.</strong> | * <strong>v3.0, 2020-03-05, [3.0 beta2(3.0.123)][r3.0b2] released. 122170 lines.</strong> | ||||||
| * v3.0, 2020-02-21, For [#1598][bug #1598], support SLB health checking by TCP. 3.0.123 | * v3.0, 2020-02-21, For [#1598][bug #1598], support SLB health checking by TCP. 3.0.123 | ||||||
| * v3.0, 2020-02-21, Fix bug for librtmp client ipv4/ipv6 socket. 3.0.122 | * v3.0, 2020-02-21, Fix bug for librtmp client ipv4/ipv6 socket. 3.0.122 | ||||||
|  | @ -1660,6 +1661,7 @@ Winlin | ||||||
| [bug #1601]: https://github.com/ossrs/srs/issues/1601 | [bug #1601]: https://github.com/ossrs/srs/issues/1601 | ||||||
| [bug #1579]: https://github.com/ossrs/srs/issues/1579 | [bug #1579]: https://github.com/ossrs/srs/issues/1579 | ||||||
| [bug #1598]: https://github.com/ossrs/srs/issues/1598 | [bug #1598]: https://github.com/ossrs/srs/issues/1598 | ||||||
|  | [bug #1634]: https://github.com/ossrs/srs/issues/1634 | ||||||
| [bug #xxxxxxxxxxxxx]: https://github.com/ossrs/srs/issues/xxxxxxxxxxxxx | [bug #xxxxxxxxxxxxx]: https://github.com/ossrs/srs/issues/xxxxxxxxxxxxx | ||||||
| 
 | 
 | ||||||
| [exo #828]: https://github.com/google/ExoPlayer/pull/828 | [exo #828]: https://github.com/google/ExoPlayer/pull/828 | ||||||
|  |  | ||||||
|  | @ -248,6 +248,10 @@ srs_error_t SrsProcess::start() | ||||||
|      |      | ||||||
|     // parent.
 |     // parent.
 | ||||||
|     if (pid > 0) { |     if (pid > 0) { | ||||||
|  |         // Wait for a while for process to really started.
 | ||||||
|  |         // @see https://github.com/ossrs/srs/issues/1634#issuecomment-597568840
 | ||||||
|  |         srs_usleep(10 * SRS_UTIME_MILLISECONDS); | ||||||
|  | 
 | ||||||
|         is_started = true; |         is_started = true; | ||||||
|         srs_trace("fored process, pid=%d, bin=%s, stdout=%s, stderr=%s, argv=%s", |         srs_trace("fored process, pid=%d, bin=%s, stdout=%s, stderr=%s, argv=%s", | ||||||
|                   pid, bin.c_str(), stdout_file.c_str(), stderr_file.c_str(), actual_cli.c_str()); |                   pid, bin.c_str(), stdout_file.c_str(), stderr_file.c_str(), actual_cli.c_str()); | ||||||
|  |  | ||||||
|  | @ -892,6 +892,7 @@ srs_error_t SrsServer::cycle() | ||||||
| void SrsServer::on_signal(int signo) | void SrsServer::on_signal(int signo) | ||||||
| { | { | ||||||
|     if (signo == SRS_SIGNAL_RELOAD) { |     if (signo == SRS_SIGNAL_RELOAD) { | ||||||
|  |         srs_trace("reload config, signo=%d", signo); | ||||||
|         signal_reload = true; |         signal_reload = true; | ||||||
|         return; |         return; | ||||||
|     } |     } | ||||||
|  | @ -899,7 +900,7 @@ void SrsServer::on_signal(int signo) | ||||||
| #ifndef SRS_AUTO_GPERF_MC | #ifndef SRS_AUTO_GPERF_MC | ||||||
|     if (signo == SRS_SIGNAL_REOPEN_LOG) { |     if (signo == SRS_SIGNAL_REOPEN_LOG) { | ||||||
|         _srs_log->reopen(); |         _srs_log->reopen(); | ||||||
|         srs_warn("reopen log file"); |         srs_warn("reopen log file, signo=%d", signo); | ||||||
|         return; |         return; | ||||||
|     } |     } | ||||||
| #endif | #endif | ||||||
|  | @ -907,7 +908,7 @@ void SrsServer::on_signal(int signo) | ||||||
| #ifdef SRS_AUTO_GPERF_MC | #ifdef SRS_AUTO_GPERF_MC | ||||||
|     if (signo == SRS_SIGNAL_REOPEN_LOG) { |     if (signo == SRS_SIGNAL_REOPEN_LOG) { | ||||||
|         signal_gmc_stop = true; |         signal_gmc_stop = true; | ||||||
|         srs_warn("for gmc, the SIGUSR1 used as SIGINT"); |         srs_warn("for gmc, the SIGUSR1 used as SIGINT, signo=%d", signo); | ||||||
|         return; |         return; | ||||||
|     } |     } | ||||||
| #endif | #endif | ||||||
|  | @ -919,7 +920,7 @@ void SrsServer::on_signal(int signo) | ||||||
|      |      | ||||||
|     if (signo == SIGINT) { |     if (signo == SIGINT) { | ||||||
| #ifdef SRS_AUTO_GPERF_MC | #ifdef SRS_AUTO_GPERF_MC | ||||||
|         srs_trace("gmc is on, main cycle will terminate normally."); |         srs_trace("gmc is on, main cycle will terminate normally, signo=%d", signo); | ||||||
|         signal_gmc_stop = true; |         signal_gmc_stop = true; | ||||||
| #else | #else | ||||||
|         #ifdef SRS_AUTO_MEM_WATCH |         #ifdef SRS_AUTO_MEM_WATCH | ||||||
|  |  | ||||||
|  | @ -24,6 +24,6 @@ | ||||||
| #ifndef SRS_CORE_VERSION3_HPP | #ifndef SRS_CORE_VERSION3_HPP | ||||||
| #define SRS_CORE_VERSION3_HPP | #define SRS_CORE_VERSION3_HPP | ||||||
| 
 | 
 | ||||||
| #define SRS_VERSION3_REVISION 123 | #define SRS_VERSION3_REVISION 124 | ||||||
| 
 | 
 | ||||||
| #endif | #endif | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue