mirror of
				https://github.com/vdr-projects/vdr.git
				synced 2025-03-01 10:50:46 +00:00 
			
		
		
		
	Fixed handling remote timers
This commit is contained in:
		| @@ -2829,6 +2829,8 @@ Johann Friedrichs <johann.friedrichs@web.de> | ||||
|  for fixing loading the setup.conf file in case a parameter contains the '#' character | ||||
|  for reporting that the "Resume" button in the main menu was active even if the | ||||
|  respective recording did not exist | ||||
|  for fixing a double deletion of a cTimer in case HandleRemoteModifications() returned | ||||
|  false | ||||
|  | ||||
| Timo Helkio <timolavi@mbnet.fi> | ||||
|  for reporting a hangup when replaying a TS recording with subtitles activated | ||||
|   | ||||
							
								
								
									
										7
									
								
								HISTORY
									
									
									
									
									
								
							
							
						
						
									
										7
									
								
								HISTORY
									
									
									
									
									
								
							| @@ -8991,7 +8991,7 @@ Video Disk Recorder Revision History | ||||
|   current channel is listed. | ||||
| - Fixed a possible crash when pulling the CAM while decrypting a channel with MTD. | ||||
|  | ||||
| 2017-05-18: Version 2.3.5 | ||||
| 2017-05-20: Version 2.3.5 | ||||
|  | ||||
| - CAMs are now sent a generated EIT packet that contains a single 'present event' for | ||||
|   the current SID, in order to avoid any parental rating dialogs. | ||||
| @@ -9030,3 +9030,8 @@ Video Disk Recorder Revision History | ||||
|   Spingler). | ||||
| - Reduced the time before a CAM is marked as known to decrypt a particular channel to | ||||
|   3 seconds. | ||||
| - When the connection to a peer VDR is terminated, any remote timers of that peer | ||||
|   are no longer shown on the local VDR. | ||||
| - No longer setting a new timer's remote host name if "SVDRP peering" is turned off. | ||||
| - Fixed a double deletion of a cTimer in case HandleRemoteModifications() returned | ||||
|   false (thanks to Johann Friedrichs). | ||||
|   | ||||
							
								
								
									
										10
									
								
								menu.c
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								menu.c
									
									
									
									
									
								
							| @@ -4,7 +4,7 @@ | ||||
|  * See the main source file 'vdr.c' for copyright information and | ||||
|  * how to reach the author. | ||||
|  * | ||||
|  * $Id: menu.c 4.27 2017/05/17 09:15:51 kls Exp $ | ||||
|  * $Id: menu.c 4.28 2017/05/20 13:00:21 kls Exp $ | ||||
|  */ | ||||
|  | ||||
| #include "menu.h" | ||||
| @@ -1328,7 +1328,7 @@ eOSState cMenuTimers::New(void) | ||||
|   if (HasSubMenu()) | ||||
|      return osContinue; | ||||
|   cTimer *Timer = new cTimer; | ||||
|   if (*Setup.SVDRPDefaultHost) | ||||
|   if (Setup.SVDRPPeering && *Setup.SVDRPDefaultHost) | ||||
|      Timer->SetRemote(Setup.SVDRPDefaultHost); | ||||
|   return AddSubMenu(new cMenuEditTimer(Timer, true)); | ||||
| } | ||||
| @@ -1660,7 +1660,7 @@ eOSState cMenuWhatsOn::Record(void) | ||||
|              return AddSubMenu(new cMenuEditTimer(Timer)); | ||||
|           } | ||||
|        cTimer *Timer = new cTimer(item->event); | ||||
|        if (*Setup.SVDRPDefaultHost) | ||||
|        if (Setup.SVDRPPeering && *Setup.SVDRPDefaultHost) | ||||
|           Timer->SetRemote(Setup.SVDRPDefaultHost); | ||||
|        if (cTimer *t = Timers->GetTimer(Timer)) { | ||||
|           delete Timer; | ||||
| @@ -1674,7 +1674,6 @@ eOSState cMenuWhatsOn::Record(void) | ||||
|        if (!HandleRemoteModifications(Timer)) { | ||||
|           // must add the timer before HandleRemoteModifications to get proper log messages with timer ids | ||||
|           Timers->Del(Timer); | ||||
|           delete Timer; | ||||
|           } | ||||
|      } | ||||
|      if (HasSubMenu()) | ||||
| @@ -1944,7 +1943,7 @@ eOSState cMenuSchedule::Record(void) | ||||
|              return AddSubMenu(new cMenuEditTimer(Timer)); | ||||
|           } | ||||
|        cTimer *Timer = new cTimer(item->event); | ||||
|        if (*Setup.SVDRPDefaultHost) | ||||
|        if (Setup.SVDRPPeering && *Setup.SVDRPDefaultHost) | ||||
|           Timer->SetRemote(Setup.SVDRPDefaultHost); | ||||
|        if (cTimer *t = Timers->GetTimer(Timer)) { | ||||
|           delete Timer; | ||||
| @@ -1958,7 +1957,6 @@ eOSState cMenuSchedule::Record(void) | ||||
|        if (!HandleRemoteModifications(Timer)) { | ||||
|           // must add the timer before HandleRemoteModifications to get proper log messages with timer ids | ||||
|           Timers->Del(Timer); | ||||
|           delete Timer; | ||||
|           } | ||||
|      } | ||||
|      if (HasSubMenu()) | ||||
|   | ||||
							
								
								
									
										4
									
								
								svdrp.c
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								svdrp.c
									
									
									
									
									
								
							| @@ -10,7 +10,7 @@ | ||||
|  * and interact with the Video Disk Recorder - or write a full featured | ||||
|  * graphical interface that sits on top of an SVDRP connection. | ||||
|  * | ||||
|  * $Id: svdrp.c 4.17 2017/04/22 11:57:31 kls Exp $ | ||||
|  * $Id: svdrp.c 4.18 2017/05/18 15:51:24 kls Exp $ | ||||
|  */ | ||||
|  | ||||
| #include "svdrp.h" | ||||
| @@ -384,6 +384,8 @@ void cSVDRPClient::Close(void) | ||||
|      SVDRPClientPoller.Del(file, false); | ||||
|      file.Close(); | ||||
|      socket.Close(); | ||||
|      LOCK_TIMERS_WRITE; | ||||
|      Timers->DelRemoteTimers(serverName); | ||||
|      } | ||||
| } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user