[Pkg-wmaker-commits] [wmix] 38/44: Improve monitor selection code

Doug Torrance dtorrance-guest at moszumanska.debian.org
Fri Sep 29 10:40:15 UTC 2017


This is an automated email from the git hooks/post-receive script.

dtorrance-guest pushed a commit to branch upstream
in repository wmix.

commit 3a639caa55188f7567231c2172de8ceb88941e8b
Author: Johannes Holmberg <johannes at update.uu.se>
Date:   Wed Sep 16 21:19:45 2015 -0400

    Improve monitor selection code
    
    - Default to monitor 0 instead of failing if a crazy number is given
    - Allow monitor to be specified by osdmonitor in the config file
---
 config.c | 40 ++++++++++++++++++++++++----------------
 1 file changed, 24 insertions(+), 16 deletions(-)

diff --git a/config.c b/config.c
index 22de1b3..8c9490d 100644
--- a/config.c
+++ b/config.c
@@ -111,6 +111,25 @@ void config_release(void)
 	}
 }
 
+void parse_monitor_value(char *value)
+{
+	char *end;
+	long mon = strtol(value, &end, 10);
+	if (end == value + strlen(value)) {
+		if ((mon > INT_MAX) || (mon < -1)) {
+			fprintf(stderr, "wmix:warning: unreasonable monitor number provided, falling back to default\n");
+			config.osd_monitor_number = 0;
+		} else {
+			if (mon == -1)
+				config.osd = 0;
+			else
+				config.osd_monitor_number = (int)mon;
+		}
+	} else {
+		config.osd_monitor_name = strdup(value);
+	}
+}
+
 /*
  * Parse Command-Line options
  *
@@ -183,22 +202,8 @@ void parse_cli_options(int argc, char **argv)
 			config.mixer_device = strdup(optarg);
 			break;
 
-		case 'o': ;
-			char *end;
-			long mon = strtol(optarg, &end, 10);
-			if (end == optarg + strlen(optarg)) {
-				if ((mon > INT_MAX) || (mon < -1)) {
-					fprintf(stderr, "wmix:error: unreasonable monitor number provided\n");
-					error_found = true;
-				} else {
-					if (mon == -1)
-						config.osd = 0;
-					else
-						config.osd_monitor_number = (int)mon;
-				}
-			} else {
-				config.osd_monitor_name = strdup(optarg);
-			}
+		case 'o':
+			parse_monitor_value(optarg);
 			break;
 
 		case 'v':
@@ -355,6 +360,9 @@ void config_read(void)
 				free(config.osd_color);
 			config.osd_color = strdup(value);
 
+		} else if (strcmp(keyword, "osdmonitor") == 0) {
+			parse_monitor_value(value);
+
 		} else if (strcmp(keyword, "scrolltext") == 0) {
 			config.scrolltext = atoi(value);
 

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-wmaker/wmix.git



More information about the Pkg-wmaker-commits mailing list