| 
					
				 | 
			
			
				@@ -654,7 +654,7 @@ UTIL_LogOutput( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	va_list    va; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	time_t     tv = time(NULL); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	struct tm *tmval = localtime(&tv); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	int        id; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	int        id, n; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if (level < gConfig.iLogLevel || !_log_callbacks[0]) return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	if (level > LOGLEVEL_MAX) level = LOGLEVEL_MAX; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -666,8 +666,11 @@ UTIL_LogOutput( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		_loglevel_str[level]); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	va_start(va, fmt); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-	vsnprintf(_log_buffer + PAL_LOG_BUFFER_EXTRA_SIZE - 1, PAL_LOG_BUFFER_SIZE + 1, fmt, va); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	n = vsnprintf(_log_buffer + PAL_LOG_BUFFER_EXTRA_SIZE - 1, PAL_LOG_BUFFER_SIZE, fmt, va); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	va_end(va); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	n = (n == -1) ? PAL_LOG_BUFFER_EXTRA_SIZE + PAL_LOG_BUFFER_SIZE - 1 : n + PAL_LOG_BUFFER_EXTRA_SIZE; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	_log_buffer[n--] = '\0'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	if (_log_buffer[n] != '\n') _log_buffer[n] = '\n'; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	for(id = 0; id < PAL_LOG_MAX_OUTPUTS && _log_callbacks[id]; id++) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	{ 
			 |