mirror of
				https://github.com/vdr-projects/vdr.git
				synced 2025-03-01 10:50:46 +00:00 
			
		
		
		
	cSkins::Message() now blocks calls from background threads
This commit is contained in:
		@@ -2731,3 +2731,6 @@ Dave Pickles <dave@pickles.me.uk>
 | 
			
		||||
 | 
			
		||||
Holger Dengler <holger.dengler@gmx.de>
 | 
			
		||||
 for making the isnumber() function check the given pointer for NULL
 | 
			
		||||
 | 
			
		||||
Michael Eiler <eiler.mike@gmail.com>
 | 
			
		||||
 - reporting a crash in case cSkins::Message() is called from a background thread
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										4
									
								
								HISTORY
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								HISTORY
									
									
									
									
									
								
							@@ -6650,10 +6650,12 @@ Video Disk Recorder Revision History
 | 
			
		||||
- Added support for "content identifier descriptor" and "default authority descriptor"
 | 
			
		||||
  to 'libsi' (thanks to Dave Pickles).
 | 
			
		||||
 | 
			
		||||
2011-07-31: Version 1.7.20
 | 
			
		||||
2011-08-06: Version 1.7.20
 | 
			
		||||
 | 
			
		||||
- Added some missing 'const' to tChannelID (reported by Sundararaj Reel).
 | 
			
		||||
- The isnumber() function now checks the given pointer for NULL (thanks to Holger
 | 
			
		||||
  Dengler).
 | 
			
		||||
- Now checking Setup.InitialChannel for NULL before using it (reported by
 | 
			
		||||
  Christoph Haubrich).
 | 
			
		||||
- cSkins::Message() now blocks calls from background threads (thanks to Michael
 | 
			
		||||
  Eiler for reporting a crash in such a scenario).
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										6
									
								
								skins.c
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								skins.c
									
									
									
									
									
								
							@@ -4,7 +4,7 @@
 | 
			
		||||
 * See the main source file 'vdr.c' for copyright information and
 | 
			
		||||
 * how to reach the author.
 | 
			
		||||
 *
 | 
			
		||||
 * $Id: skins.c 2.1 2009/06/06 15:12:31 kls Exp $
 | 
			
		||||
 * $Id: skins.c 2.2 2011/08/06 09:41:57 kls Exp $
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
#include "skins.h"
 | 
			
		||||
@@ -223,6 +223,10 @@ bool cSkins::SetCurrent(const char *Name)
 | 
			
		||||
 | 
			
		||||
eKeys cSkins::Message(eMessageType Type, const char *s, int Seconds)
 | 
			
		||||
{
 | 
			
		||||
  if (!cThread::IsMainThread()) {
 | 
			
		||||
     dsyslog("cSkins::Message() called from background thread - ignored! (Use cSkins::QueueMessage() instead)");
 | 
			
		||||
     return kNone;
 | 
			
		||||
     }
 | 
			
		||||
  switch (Type) {
 | 
			
		||||
    case mtInfo:    isyslog("info: %s", s); break;
 | 
			
		||||
    case mtWarning: isyslog("warning: %s", s); break;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user