mirror of
				https://git.proxmox.com/git/qemu
				synced 2025-10-31 07:39:44 +00:00 
			
		
		
		
	error: New error_printf() and error_vprintf()
This commit is contained in:
		
							parent
							
								
									2f7920166d
								
							
						
					
					
						commit
						ba0fe87acd
					
				
							
								
								
									
										51
									
								
								qemu-error.c
									
									
									
									
									
								
							
							
						
						
									
										51
									
								
								qemu-error.c
									
									
									
									
									
								
							| @ -1,18 +1,53 @@ | ||||
| /*
 | ||||
|  * Error reporting | ||||
|  * | ||||
|  * Copyright (C) 2010 Red Hat Inc. | ||||
|  * | ||||
|  * Authors: | ||||
|  *  Markus Armbruster <armbru@redhat.com>, | ||||
|  * | ||||
|  * This work is licensed under the terms of the GNU GPL, version 2 or later. | ||||
|  * See the COPYING file in the top-level directory. | ||||
|  */ | ||||
| 
 | ||||
| #include <stdio.h> | ||||
| #include "monitor.h" | ||||
| #include "sysemu.h" | ||||
| 
 | ||||
| /*
 | ||||
|  * Print to current monitor if we have one, else to stderr. | ||||
|  * TODO should return int, so callers can calculate width, but that | ||||
|  * requires surgery to monitor_vprintf().  Left for another day. | ||||
|  */ | ||||
| void error_vprintf(const char *fmt, va_list ap) | ||||
| { | ||||
|     if (cur_mon) { | ||||
|         monitor_vprintf(cur_mon, fmt, ap); | ||||
|     } else { | ||||
|         vfprintf(stderr, fmt, ap); | ||||
|     } | ||||
| } | ||||
| 
 | ||||
| /*
 | ||||
|  * Print to current monitor if we have one, else to stderr. | ||||
|  * TODO just like error_vprintf() | ||||
|  */ | ||||
| void error_printf(const char *fmt, ...) | ||||
| { | ||||
|     va_list ap; | ||||
| 
 | ||||
|     va_start(ap, fmt); | ||||
|     error_vprintf(fmt, ap); | ||||
|     va_end(ap); | ||||
| } | ||||
| 
 | ||||
| void qemu_error(const char *fmt, ...) | ||||
| { | ||||
|     va_list args; | ||||
|     va_list ap; | ||||
| 
 | ||||
|     va_start(args, fmt); | ||||
|     if (cur_mon) { | ||||
|         monitor_vprintf(cur_mon, fmt, args); | ||||
|     } else { | ||||
|         vfprintf(stderr, fmt, args); | ||||
|     } | ||||
|     va_end(args); | ||||
|     va_start(ap, fmt); | ||||
|     error_vprintf(fmt, ap); | ||||
|     va_end(ap); | ||||
| } | ||||
| 
 | ||||
| void qemu_error_internal(const char *file, int linenr, const char *func, | ||||
|  | ||||
							
								
								
									
										14
									
								
								qemu-error.h
									
									
									
									
									
								
							
							
						
						
									
										14
									
								
								qemu-error.h
									
									
									
									
									
								
							| @ -1,6 +1,20 @@ | ||||
| /*
 | ||||
|  * Error reporting | ||||
|  * | ||||
|  * Copyright (C) 2010 Red Hat Inc. | ||||
|  * | ||||
|  * Authors: | ||||
|  *  Markus Armbruster <armbru@redhat.com>, | ||||
|  * | ||||
|  * This work is licensed under the terms of the GNU GPL, version 2 or later. | ||||
|  * See the COPYING file in the top-level directory. | ||||
|  */ | ||||
| 
 | ||||
| #ifndef QEMU_ERROR_H | ||||
| #define QEMU_ERROR_H | ||||
| 
 | ||||
| void error_vprintf(const char *fmt, va_list ap); | ||||
| void error_printf(const char *fmt, ...) __attribute__ ((format(printf, 1, 2))); | ||||
| void qemu_error(const char *fmt, ...) __attribute__ ((format(printf, 1, 2))); | ||||
| void qemu_error_internal(const char *file, int linenr, const char *func, | ||||
|                          const char *fmt, ...) | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Markus Armbruster
						Markus Armbruster