Explicitly enable printing of warnings
This commit is contained in:
		
							parent
							
								
									e2d9463375
								
							
						
					
					
						commit
						03bfe1015e
					
				| @ -35,6 +35,7 @@ sxiv supports the following command-line options: | ||||
|     -p       pixelize, i.e. turn off image anti-aliasing | ||||
|     -s       scale all images to fit into window | ||||
|     -v       print version information and exit | ||||
|     -W       enable printing of warnings | ||||
|     -w WIDTHxHEIGHT | ||||
|              set window width to WIDTH and height to HEIGHT | ||||
|              (if HEIGHT is omitted, height is also set to WIDTH) | ||||
|  | ||||
							
								
								
									
										1
									
								
								image.c
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								image.c
									
									
									
									
									
								
							| @ -23,7 +23,6 @@ | ||||
| 
 | ||||
| #include "sxiv.h" | ||||
| #include "image.h" | ||||
| #include "options.h" | ||||
| 
 | ||||
| int zl_cnt; | ||||
| float zoom_min; | ||||
|  | ||||
							
								
								
									
										1
									
								
								main.c
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								main.c
									
									
									
									
									
								
							| @ -26,7 +26,6 @@ | ||||
| 
 | ||||
| #include "sxiv.h" | ||||
| #include "image.h" | ||||
| #include "options.h" | ||||
| #include "window.h" | ||||
| 
 | ||||
| void on_keypress(XEvent*); | ||||
|  | ||||
| @ -29,7 +29,7 @@ options_t _options; | ||||
| const options_t *options = (const options_t*) &_options; | ||||
| 
 | ||||
| void print_usage() { | ||||
| 	printf("usage: sxiv [-dfhpsvZ] [-w WIDTH[xHEIGHT]] [-z ZOOM] FILES...\n"); | ||||
| 	printf("usage: sxiv [-dfhpsvWZ] [-w WIDTH[xHEIGHT]] [-z ZOOM] FILES...\n"); | ||||
| } | ||||
| 
 | ||||
| void print_version() { | ||||
| @ -50,7 +50,9 @@ void parse_options(int argc, char **argv) { | ||||
| 	_options.winh = h = 0; | ||||
| 	_options.fullscreen = 0; | ||||
| 
 | ||||
| 	while ((opt = getopt(argc, argv, "dfhpsvw:Zz:")) != -1) { | ||||
| 	_options.warn = 0; | ||||
| 
 | ||||
| 	while ((opt = getopt(argc, argv, "dfhpsvWw:Zz:")) != -1) { | ||||
| 		switch (opt) { | ||||
| 			case '?': | ||||
| 				print_usage(); | ||||
| @ -73,6 +75,9 @@ void parse_options(int argc, char **argv) { | ||||
| 			case 'v': | ||||
| 				print_version(); | ||||
| 				exit(0); | ||||
| 			case 'W': | ||||
| 				_options.warn = 1; | ||||
| 				break; | ||||
| 			case 'w': | ||||
| 				if (!sscanf(optarg, "%hux%hu", &w, &h)) { | ||||
| 					fprintf(stderr, "sxiv: invalid argument for option -w: %s\n", | ||||
|  | ||||
| @ -32,6 +32,8 @@ typedef struct options_s { | ||||
| 	int winw; | ||||
| 	int winh; | ||||
| 	unsigned char fullscreen; | ||||
| 
 | ||||
| 	unsigned char warn; | ||||
| } options_t; | ||||
| 
 | ||||
| extern const options_t *options; | ||||
|  | ||||
							
								
								
									
										5
									
								
								sxiv.1
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								sxiv.1
									
									
									
									
									
								
							| @ -3,7 +3,7 @@ | ||||
| sxiv \- Simple (or small or suckless) X Image Viewer | ||||
| .SH SYNOPSIS | ||||
| .B sxiv | ||||
| .RB [ \-dfhpsvZ ] | ||||
| .RB [ \-dfhpsvWZ ] | ||||
| .RB [ \-w | ||||
| .IB WIDTH x HEIGHT | ||||
| ] | ||||
| @ -36,6 +36,9 @@ Scale all images to fit into window. | ||||
| .B \-v | ||||
| Print version information to standard output and exit. | ||||
| .TP | ||||
| .B \-W | ||||
| Enable printing of warnings to standard error stream. | ||||
| .TP | ||||
| .BI "\-w " WIDTH x HEIGHT | ||||
| Set window width to | ||||
| .I WIDTH | ||||
|  | ||||
							
								
								
									
										31
									
								
								sxiv.h
									
									
									
									
									
								
							
							
						
						
									
										31
									
								
								sxiv.h
									
									
									
									
									
								
							| @ -20,26 +20,29 @@ | ||||
| #define SXIV_H | ||||
| 
 | ||||
| #include "config.h" | ||||
| #include "options.h" | ||||
| 
 | ||||
| #define ABS(a)   ((a) < 0 ? (-(a)) : (a)) | ||||
| #define MIN(a,b) ((a) < (b) ? (a) : (b)) | ||||
| #define MAX(a,b) ((a) > (b) ? (a) : (b)) | ||||
| 
 | ||||
| #define WARN(...)                                                  \ | ||||
| 	do {                                                             \ | ||||
| 	  fprintf(stderr, "sxiv: %s:%d: warning: ", __FILE__, __LINE__); \ | ||||
| 		fprintf(stderr, __VA_ARGS__);                                  \ | ||||
| 		fprintf(stderr, "\n");                                         \ | ||||
| 	} while (0) | ||||
| #define WARN(...)                                                    \ | ||||
|   do {                                                               \ | ||||
|     if (options->warn) {                                             \ | ||||
|       fprintf(stderr, "sxiv: %s:%d: warning: ", __FILE__, __LINE__); \ | ||||
|       fprintf(stderr, __VA_ARGS__);                                  \ | ||||
|       fprintf(stderr, "\n");                                         \ | ||||
|     }                                                                \ | ||||
|   } while (0) | ||||
| 
 | ||||
| #define DIE(...)                                                   \ | ||||
|   do {                                                             \ | ||||
| 		fprintf(stderr, "sxiv: %s:%d: error: ", __FILE__, __LINE__);   \ | ||||
| 		fprintf(stderr, __VA_ARGS__);                                  \ | ||||
| 		fprintf(stderr, "\n");                                         \ | ||||
| 		cleanup();                                                     \ | ||||
| 		exit(1);                                                       \ | ||||
| 	} while (0) | ||||
| #define DIE(...)                                                     \ | ||||
|   do {                                                               \ | ||||
|     fprintf(stderr, "sxiv: %s:%d: error: ", __FILE__, __LINE__);     \ | ||||
|     fprintf(stderr, __VA_ARGS__);                                    \ | ||||
|     fprintf(stderr, "\n");                                           \ | ||||
|     cleanup();                                                       \ | ||||
|     exit(1);                                                         \ | ||||
|   } while (0) | ||||
| 
 | ||||
| void cleanup(); | ||||
| 
 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Bert
						Bert