mirror of
				https://github.com/vdr-projects/vdr.git
				synced 2025-03-01 10:50:46 +00:00 
			
		
		
		
	Now invalidating /video cache _after_ cutting
This commit is contained in:
		| @@ -279,6 +279,8 @@ Artur Skawina <skawina@geocities.com> | |||||||
|  for a patch that contained a fix for checking toFile in cCuttingThread::Action() |  for a patch that contained a fix for checking toFile in cCuttingThread::Action() | ||||||
|  for improving cUnbufferedFile |  for improving cUnbufferedFile | ||||||
|  for fixing calculating the cache size in cUnbufferedFile::Read() |  for fixing calculating the cache size in cUnbufferedFile::Read() | ||||||
|  |  for making the /video/.update file be touched _after_ an editing process is finished | ||||||
|  |  in order to avoid excessive disk access | ||||||
|  |  | ||||||
| Werner Fink <werner@suse.de> | Werner Fink <werner@suse.de> | ||||||
|  for making I/O more robust by handling EINTR |  for making I/O more robust by handling EINTR | ||||||
|   | |||||||
							
								
								
									
										4
									
								
								HISTORY
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								HISTORY
									
									
									
									
									
								
							| @@ -4835,7 +4835,7 @@ Video Disk Recorder Revision History | |||||||
|   only done for normal keypresses, not for repeated ones. This allows the user to |   only done for normal keypresses, not for repeated ones. This allows the user to | ||||||
|   scroll the value all the way to the limit by keeping the key pressed. |   scroll the value all the way to the limit by keeping the key pressed. | ||||||
|  |  | ||||||
| 2006-07-29: Version 1.4.1-3 | 2006-07-30: Version 1.4.1-3 | ||||||
|  |  | ||||||
| - Fixed assigning schedules to channels in case there is no initial EPG information | - Fixed assigning schedules to channels in case there is no initial EPG information | ||||||
|   (thanks to Frank Schmirler). |   (thanks to Frank Schmirler). | ||||||
| @@ -4844,3 +4844,5 @@ Video Disk Recorder Revision History | |||||||
| - Fixed cDevice::ToggleMute() (thanks to Christoph Haubrich). | - Fixed cDevice::ToggleMute() (thanks to Christoph Haubrich). | ||||||
| - Fixed deleting the last character of a string menu item in insert mode (thanks | - Fixed deleting the last character of a string menu item in insert mode (thanks | ||||||
|   to Udo Richter). |   to Udo Richter). | ||||||
|  | - The /video/.update file is now touched _after_ an editing process is finished | ||||||
|  |   in order to avoid excessive disk access (thanks to Artur Skawina). | ||||||
|   | |||||||
							
								
								
									
										5
									
								
								cutter.c
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								cutter.c
									
									
									
									
									
								
							| @@ -4,7 +4,7 @@ | |||||||
|  * See the main source file 'vdr.c' for copyright information and |  * See the main source file 'vdr.c' for copyright information and | ||||||
|  * how to reach the author. |  * how to reach the author. | ||||||
|  * |  * | ||||||
|  * $Id: cutter.c 1.15 2006/02/12 10:07:23 kls Exp $ |  * $Id: cutter.c 1.16 2006/07/30 10:22:08 kls Exp $ | ||||||
|  */ |  */ | ||||||
|  |  | ||||||
| #include "cutter.h" | #include "cutter.h" | ||||||
| @@ -171,6 +171,7 @@ void cCuttingThread::Action(void) | |||||||
|                  LastMark = true; |                  LastMark = true; | ||||||
|               } |               } | ||||||
|            } |            } | ||||||
|  |      Recordings.TouchUpdate(); | ||||||
|      } |      } | ||||||
|   else |   else | ||||||
|      esyslog("no editing marks found!"); |      esyslog("no editing marks found!"); | ||||||
| @@ -205,7 +206,7 @@ bool cCutter::Start(const char *FileName) | |||||||
|         // XXX |         // XXX | ||||||
|         editedVersionName = strdup(evn); |         editedVersionName = strdup(evn); | ||||||
|         Recording.WriteInfo(); |         Recording.WriteInfo(); | ||||||
|         Recordings.AddByName(editedVersionName); |         Recordings.AddByName(editedVersionName, false); | ||||||
|         cuttingThread = new cCuttingThread(FileName, editedVersionName); |         cuttingThread = new cCuttingThread(FileName, editedVersionName); | ||||||
|         return true; |         return true; | ||||||
|         } |         } | ||||||
|   | |||||||
| @@ -4,7 +4,7 @@ | |||||||
|  * See the main source file 'vdr.c' for copyright information and |  * See the main source file 'vdr.c' for copyright information and | ||||||
|  * how to reach the author. |  * how to reach the author. | ||||||
|  * |  * | ||||||
|  * $Id: recording.c 1.148 2006/04/29 13:22:20 kls Exp $ |  * $Id: recording.c 1.149 2006/07/30 10:23:46 kls Exp $ | ||||||
|  */ |  */ | ||||||
|  |  | ||||||
| #include "recording.h" | #include "recording.h" | ||||||
| @@ -970,7 +970,7 @@ cRecording *cRecordings::GetByName(const char *FileName) | |||||||
|   return NULL; |   return NULL; | ||||||
| } | } | ||||||
|  |  | ||||||
| void cRecordings::AddByName(const char *FileName) | void cRecordings::AddByName(const char *FileName, bool TriggerUpdate) | ||||||
| { | { | ||||||
|   LOCK_THREAD; |   LOCK_THREAD; | ||||||
|   cRecording *recording = GetByName(FileName); |   cRecording *recording = GetByName(FileName); | ||||||
| @@ -978,7 +978,8 @@ void cRecordings::AddByName(const char *FileName) | |||||||
|      recording = new cRecording(FileName); |      recording = new cRecording(FileName); | ||||||
|      Add(recording); |      Add(recording); | ||||||
|      ChangeState(); |      ChangeState(); | ||||||
|      TouchUpdate(); |      if (TriggerUpdate) | ||||||
|  |         TouchUpdate(); | ||||||
|      } |      } | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -4,7 +4,7 @@ | |||||||
|  * See the main source file 'vdr.c' for copyright information and |  * See the main source file 'vdr.c' for copyright information and | ||||||
|  * how to reach the author. |  * how to reach the author. | ||||||
|  * |  * | ||||||
|  * $Id: recording.h 1.54 2006/04/09 13:47:11 kls Exp $ |  * $Id: recording.h 1.55 2006/07/30 10:24:07 kls Exp $ | ||||||
|  */ |  */ | ||||||
|  |  | ||||||
| #ifndef __RECORDING_H | #ifndef __RECORDING_H | ||||||
| @@ -133,7 +133,7 @@ public: | |||||||
|   bool StateChanged(int &State); |   bool StateChanged(int &State); | ||||||
|   void ResetResume(const char *ResumeFileName = NULL); |   void ResetResume(const char *ResumeFileName = NULL); | ||||||
|   cRecording *GetByName(const char *FileName); |   cRecording *GetByName(const char *FileName); | ||||||
|   void AddByName(const char *FileName); |   void AddByName(const char *FileName, bool TriggerUpdate = true); | ||||||
|   void DelByName(const char *FileName); |   void DelByName(const char *FileName); | ||||||
|   int TotalFileSizeMB(void); ///< Only for deleted recordings! |   int TotalFileSizeMB(void); ///< Only for deleted recordings! | ||||||
|   }; |   }; | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user