diff options
Diffstat (limited to 'modules')
-rw-r--r-- | modules/devices/monitors.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/modules/devices/monitors.c b/modules/devices/monitors.c index 71f506c2..37093b31 100644 --- a/modules/devices/monitors.c +++ b/modules/devices/monitors.c @@ -179,7 +179,7 @@ static gchar *make_edid_section(monitor *m) { const gchar *iface = e->interface ? _(edid_interface(e->interface)) : _("(Unspecified)"); gchar *d_list, *ext_list, *dtd_list, *cea_list, - *etb_list, *std_list; + *etb_list, *std_list, *svd_list; etb_list = NULL; for(i = 0; i < e->etb_count; i++) { @@ -228,6 +228,14 @@ static gchar *make_edid_section(monitor *m) { } if (!cea_list) cea_list = g_strdup_printf("%s=\n", _("(Empty List)")); + svd_list = NULL; + for(i = 0; i < e->svd_count; i++) { + char *desc = edid_output_describe(&e->svds[i].out); + svd_list = appfnl(svd_list, "svd%d=%s", i, desc); + g_free(desc); + } + if (!svd_list) svd_list = g_strdup_printf("%s=\n", _("(Empty List)")); + gchar *hex = edid_dump_hex(e, 0, 1); gchar *hex_esc = gg_key_file_parse_string_as_value(hex, '|'); g_free(hex); @@ -263,6 +271,7 @@ static gchar *make_edid_section(monitor *m) { "[%s]\n%s\n" "[%s]\n%s\n" "[%s]\n%s\n" + "[%s]\n%s\n" "[%s]\n%s=%s\n" , _("Signal Type"), e->a_or_d ? _("Digital") : _("Analog"), @@ -289,6 +298,7 @@ static gchar *make_edid_section(monitor *m) { _("Standard Timings (STD)"), std_list, _("E-EDID Extension Blocks"), ext_list, _("EIA/CEA-861 Data Blocks"), cea_list, + _("EIA/CEA-861 Short Video Descriptors"), svd_list, _("Hex Dump"), _("Data"), hex ); g_free(bpcc); @@ -300,6 +310,7 @@ static gchar *make_edid_section(monitor *m) { g_free(std_list); g_free(dtd_list); g_free(cea_list); + g_free(svd_list); g_free(hex); //printf("ret: %s\n", ret); return ret; |