summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBurt P <pburt0@gmail.com>2018-10-24 00:41:16 -0500
committerLeandro A. F. Pereira <leandro@hardinfo.org>2018-11-04 15:02:27 -0800
commitf6299d9fad21c065d1e4c0f1093770835fb73adf (patch)
treeb0cd1293efe336e40c0dc804fc1aa15285368b4d
parent81026a56d57b3e8ee00f2f43003a90cde30664f3 (diff)
params: html_ok -> markup_ok
The html_ok param added in 970174b0897d40b804808632784ffa1544d9da93 is misleading. It turns out that it is not HTML, but Pango Markup that is used by GTK, and a subset of that happens to also work as HTML4 for the HTML report generation. This change renames html_ok to markup_ok in ProgramParameters and adds a comment explaining what common set of tags may be used. Also, if report generation happens as a fallback after GUI initialization failed, then also disable markup, unless report will be generated as HTML. Pango markup info at: https://developer.gnome.org/pango/stable/PangoMarkupFormat.html Signed-off-by: Burt P <pburt0@gmail.com>
-rw-r--r--hardinfo/hardinfo.c18
-rw-r--r--hardinfo/util.c4
-rw-r--r--includes/hardinfo.h9
-rw-r--r--modules/devices/printers.c2
-rw-r--r--modules/devices/resources.c6
-rw-r--r--modules/network.c2
6 files changed, 26 insertions, 15 deletions
diff --git a/hardinfo/hardinfo.c b/hardinfo/hardinfo.c
index e1783315..d1d228b3 100644
--- a/hardinfo/hardinfo.c
+++ b/hardinfo/hardinfo.c
@@ -92,13 +92,17 @@ int main(int argc, char **argv)
}
if (!params.create_report && !params.run_benchmark) {
- /* we only try to open the UI if the user didn't ask for a report. */
- params.gui_running = ui_init(&argc, &argv);
-
- /* as a fallback, if GTK+ initialization failed, run in report
- generation mode. */
- if (!params.gui_running)
- params.create_report = TRUE;
+ /* we only try to open the UI if the user didn't ask for a report. */
+ params.gui_running = ui_init(&argc, &argv);
+
+ /* as a fallback, if GTK+ initialization failed, run in report
+ generation mode. */
+ if (!params.gui_running) {
+ params.create_report = TRUE;
+ /* ... it is possible to -f html without -r */
+ if (params.report_format != REPORT_FORMAT_HTML)
+ params.markup_ok = FALSE;
+ }
}
if (params.use_modules) {
diff --git a/hardinfo/util.c b/hardinfo/util.c
index c58e2e1a..4acb28be 100644
--- a/hardinfo/util.c
+++ b/hardinfo/util.c
@@ -508,9 +508,9 @@ void parameters_init(int *argc, char ***argv, ProgramParameters * param)
* report html: yes
* report text: no
* anything else? */
- param->html_ok = TRUE;
+ param->markup_ok = TRUE;
if (param->create_report && param->report_format != REPORT_FORMAT_HTML)
- param->html_ok = FALSE;
+ param->markup_ok = FALSE;
gchar *confdir = g_build_filename(g_get_user_config_dir(), "hardinfo", NULL);
if (!g_file_test(confdir, G_FILE_TEST_EXISTS)) {
diff --git a/includes/hardinfo.h b/includes/hardinfo.h
index ee886251..ab5507bd 100644
--- a/includes/hardinfo.h
+++ b/includes/hardinfo.h
@@ -53,7 +53,14 @@ struct _ProgramParameters {
gboolean autoload_deps;
gboolean run_xmlrpc_server;
gboolean skip_benchmarks;
- gboolean html_ok; /* ok to use html in the value part of a key/value */
+
+ /*
+ * OK to use the common parts of HTML(4.0) and Pango Markup
+ * in the value part of a key/value.
+ * Including the (b,big,i,s,sub,sup,small,tt,u) tags.
+ * https://developer.gnome.org/pango/stable/PangoMarkupFormat.html
+ */
+ gboolean markup_ok;
gint report_format;
diff --git a/modules/devices/printers.c b/modules/devices/printers.c
index df02a6a2..15b720ba 100644
--- a/modules/devices/printers.c
+++ b/modules/devices/printers.c
@@ -216,7 +216,7 @@ scan_printers_do(void)
printer_list,
prn_id,
dests[i].name,
- dests[i].is_default ? ((params.html_ok) ? "<i>Default</i>" : "(Default)") : "");
+ dests[i].is_default ? ((params.markup_ok) ? "<i>Default</i>" : "(Default)") : "");
printer_icons = h_strdup_cprintf("\nIcon$%s$%s=printer.png",
printer_icons,
prn_id,
diff --git a/modules/devices/resources.c b/modules/devices/resources.c
index 70de2b0d..0e8d728f 100644
--- a/modules/devices/resources.c
+++ b/modules/devices/resources.c
@@ -43,7 +43,7 @@ static gchar *_resource_obtain_name(gchar *name)
if (g_regex_match(_regex_pci, name, 0, NULL)) {
temp = module_call_method_param("devices::getPCIDeviceDescription", name);
if (temp) {
- if (params.html_ok)
+ if (params.markup_ok)
return g_strdup_printf("<b><small>PCI</small></b> %s", (gchar *)idle_free(temp));
else
return g_strdup_printf("PCI %s", (gchar *)idle_free(temp));
@@ -51,7 +51,7 @@ static gchar *_resource_obtain_name(gchar *name)
} else if (g_regex_match(_regex_module, name, 0, NULL)) {
temp = module_call_method_param("computer::getKernelModuleDescription", name);
if (temp) {
- if (params.html_ok)
+ if (params.markup_ok)
return g_strdup_printf("<b><small>Module</small></b> %s", (gchar *)idle_free(temp));
else
return g_strdup_printf("Module %s", (gchar *)idle_free(temp));
@@ -98,7 +98,7 @@ void scan_device_resources(gboolean reload)
if (strstr(temp[0], "0000-0000"))
zero_to_zero_addr++;
- if (params.html_ok)
+ if (params.markup_ok)
_resources = h_strdup_cprintf("<tt>%s</tt>=%s\n", _resources,
temp[0], name);
else
diff --git a/modules/network.c b/modules/network.c
index fa61ddca..01c4955a 100644
--- a/modules/network.c
+++ b/modules/network.c
@@ -107,7 +107,7 @@ void scan_statistics(gboolean reload)
while (*tmp && isspace(*tmp)) tmp++;
/* the bolded-space/dot used here is a hardinfo shell hack */
- if (params.html_ok)
+ if (params.markup_ok)
__statistics = h_strdup_cprintf("<b> </b>#%d=%s\n",
__statistics,
line++, tmp);