mirror of
				https://github.com/vdr-projects/vdr.git
				synced 2025-03-01 10:50:46 +00:00 
			
		
		
		
	Using strgetlast() in more places
This commit is contained in:
		
							
								
								
									
										3
									
								
								HISTORY
									
									
									
									
									
								
							
							
						
						
									
										3
									
								
								HISTORY
									
									
									
									
									
								
							| @@ -9569,8 +9569,9 @@ Video Disk Recorder Revision History | ||||
| - Events in the past are no longer marked as having a timer in the Schedules | ||||
|   menu. | ||||
|  | ||||
| 2020-12-31: | ||||
| 2021-01-01: | ||||
|  | ||||
| - Fixed strreplace() to handle NULL strings (reported by J<>rgen Schneider). | ||||
| - Somewhere down the road the 'x' bit of Doxyfile.filter got lost, so the | ||||
|   Makefile now makes sure it is set before calling doxygen. | ||||
| - Using strgetlast() in more places. | ||||
|   | ||||
							
								
								
									
										14
									
								
								menu.c
									
									
									
									
									
								
							
							
						
						
									
										14
									
								
								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 5.1 2020/12/26 15:49:01 kls Exp $ | ||||
|  * $Id: menu.c 5.2 2021/01/01 15:26:27 kls Exp $ | ||||
|  */ | ||||
|  | ||||
| #include "menu.h" | ||||
| @@ -1094,11 +1094,7 @@ void cMenuEditTimer::SetPatternItem(bool Initial) | ||||
|         return; | ||||
|         } | ||||
|      if (!*data.pattern) { | ||||
|         char *p = strrchr(data.file, FOLDERDELIMCHAR); | ||||
|         if (p) | ||||
|            p++; | ||||
|         else | ||||
|            p = data.file; | ||||
|         char *p = strgetlast(data.file, FOLDERDELIMCHAR); | ||||
|         strn0cpy(data.pattern, p, sizeof(data.pattern)); | ||||
|         } | ||||
|      Ins(pattern = new cMenuEditStrItem( tr("Pattern"), data.pattern, sizeof(data.pattern)), true, file); | ||||
| @@ -1120,11 +1116,7 @@ eOSState cMenuEditTimer::SetFolder(void) | ||||
| { | ||||
|   if (cMenuFolder *mf = dynamic_cast<cMenuFolder *>(SubMenu())) { | ||||
|      cString Folder = mf->GetFolder(); | ||||
|      char *p = strrchr(data.file, FOLDERDELIMCHAR); | ||||
|      if (p) | ||||
|         p++; | ||||
|      else | ||||
|         p = data.file; | ||||
|      char *p = strgetlast(data.file, FOLDERDELIMCHAR); | ||||
|      if (!isempty(*Folder)) | ||||
|         strn0cpy(data.file, cString::sprintf("%s%c%s", *Folder, FOLDERDELIMCHAR, p), sizeof(data.file)); | ||||
|      else if (p != data.file) | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|  * See the main source file 'vdr.c' for copyright information and | ||||
|  * how to reach the author. | ||||
|  * | ||||
|  * $Id: recording.c 5.1 2020/12/26 15:49:01 kls Exp $ | ||||
|  * $Id: recording.c 5.2 2021/01/01 15:26:27 kls Exp $ | ||||
|  */ | ||||
|  | ||||
| #include "recording.h" | ||||
| @@ -1050,9 +1050,7 @@ cString cRecording::Folder(void) const | ||||
|  | ||||
| cString cRecording::BaseName(void) const | ||||
| { | ||||
|   if (char *s = strrchr(name, FOLDERDELIMCHAR)) | ||||
|      return cString(s + 1); | ||||
|   return name; | ||||
|   return strgetlast(name, FOLDERDELIMCHAR); | ||||
| } | ||||
|  | ||||
| const char *cRecording::FileName(void) const | ||||
| @@ -1158,8 +1156,7 @@ int cRecording::HierarchyLevels(void) const | ||||
|  | ||||
| bool cRecording::IsEdited(void) const | ||||
| { | ||||
|   const char *s = strrchr(name, FOLDERDELIMCHAR); | ||||
|   s = !s ? name : s + 1; | ||||
|   const char *s = strgetlast(name, FOLDERDELIMCHAR); | ||||
|   return *s == '%'; | ||||
| } | ||||
|  | ||||
|   | ||||
							
								
								
									
										3
									
								
								tools.h
									
									
									
									
									
								
							
							
						
						
									
										3
									
								
								tools.h
									
									
									
									
									
								
							| @@ -4,7 +4,7 @@ | ||||
|  * See the main source file 'vdr.c' for copyright information and | ||||
|  * how to reach the author. | ||||
|  * | ||||
|  * $Id: tools.h 5.1 2020/12/26 15:49:01 kls Exp $ | ||||
|  * $Id: tools.h 5.2 2021/01/01 15:26:27 kls Exp $ | ||||
|  */ | ||||
|  | ||||
| #ifndef __TOOLS_H | ||||
| @@ -234,6 +234,7 @@ char *strreplace(char *s, const char *s1, const char *s2); ///< re-allocates 's' | ||||
| const char *strchrn(const char *s, char c, size_t n); ///< returns a pointer to the n'th occurrence (counting from 1) of c in s, or NULL if no such character was found. If n is 0, s is returned. | ||||
| int strcountchr(const char *s, char c); ///< returns the number of occurrences of 'c' in 's'. | ||||
| const char *strgetlast(const char *s, char c); // returns the part of 's' after the last occurrence of 'c', or 's' if there is no 'c'. | ||||
| inline char *strgetlast(char *s, char c) { return const_cast<char *>(strgetlast(static_cast<const char *>(s), c)); } // returns the part of 's' after the last occurrence of 'c', or 's' if there is no 'c'. | ||||
| inline char *skipspace(const char *s) | ||||
| { | ||||
|   if ((uchar)*s > ' ') // most strings don't have any leading space, so handle this case as fast as possible | ||||
|   | ||||
		Reference in New Issue
	
	Block a user