aboutsummaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorSimon Quigley <tsimonq2@ubuntu.com>2017-06-19 14:38:43 -0500
committerSimon Quigley <tsimonq2@ubuntu.com>2017-06-19 14:38:43 -0500
commit7aeb5ac87c6105bd8fcc9b1fd12e37ba1550f587 (patch)
treecab8ef3e10d3a33a2033538b6088e107f0a86dcd /arch
parenta9d469b1b48a8446dc9b9fd987b6af83a60ed796 (diff)
Import Upstream version 0.4.2.2
Diffstat (limited to 'arch')
-rw-r--r--arch/common/display.h10
-rw-r--r--arch/common/languages.h4
-rw-r--r--arch/common/printers.h12
-rw-r--r--arch/common/users.h13
-rw-r--r--arch/linux/common/battery.h13
-rw-r--r--arch/linux/common/boots.h4
-rw-r--r--arch/linux/common/devmemory.h5
-rw-r--r--arch/linux/common/filesystem.h14
-rw-r--r--arch/linux/common/inputdevices.h19
-rw-r--r--arch/linux/common/modules.h17
-rw-r--r--arch/linux/common/net.h72
-rw-r--r--arch/linux/common/os.h2
-rw-r--r--arch/linux/common/pci.h41
-rw-r--r--arch/linux/common/sensors.h29
-rw-r--r--arch/linux/common/storage.h51
-rw-r--r--arch/linux/common/usb.h9
-rw-r--r--arch/linux/x86/processor.h4
17 files changed, 151 insertions, 168 deletions
diff --git a/arch/common/display.h b/arch/common/display.h
index b4fe643e..d7cf2ae6 100644
--- a/arch/common/display.h
+++ b/arch/common/display.h
@@ -82,10 +82,10 @@ get_x11_info(DisplayInfo *di)
if (g_str_has_prefix(tmp[0], "number of extensions")) {
int n;
- di->extensions = "";
+ di->extensions = g_strdup("");
for (n = atoi(tmp[1]); n; n--) {
- di->extensions = g_strconcat(di->extensions,
+ di->extensions = h_strconcat(di->extensions,
g_strstrip(*(++output_lines)),
"=\n",
NULL);
@@ -108,14 +108,14 @@ get_x11_info(DisplayInfo *di)
gint n_monitors = gdk_screen_get_n_monitors(screen);
gint i;
- di->monitors = "";
+ di->monitors = NULL;
for (i = 0; i < n_monitors; i++) {
GdkRectangle rect;
gdk_screen_get_monitor_geometry(screen, i, &rect);
- di->monitors = g_strdup_printf("%sMonitor %d=%dx%d pixels\n",
- di->monitors, i, rect.width, rect.height);
+ di->monitors = h_strdup_cprintf("Monitor %d=%dx%d pixels\n",
+ di->monitors, i, rect.width, rect.height);
}
} else {
di->monitors = "";
diff --git a/arch/common/languages.h b/arch/common/languages.h
index 786b829f..efc100fb 100644
--- a/arch/common/languages.h
+++ b/arch/common/languages.h
@@ -20,7 +20,7 @@ void
scan_languages(OperatingSystem * os)
{
FILE *locale;
- gchar buf[512], *retval = "";
+ gchar buf[512], *retval = NULL;
locale = popen("locale -va", "r");
if (!locale)
@@ -64,7 +64,7 @@ scan_languages(OperatingSystem * os)
} else {
gchar *currlocale;
- retval = g_strdup_printf("%s$%s$%s=%s\n", retval, name, name, title);
+ retval = h_strdup_cprintf("$%s$%s=%s\n", retval, name, name, title);
#define FIELD(f) f ? f : "(Unknown)"
currlocale = g_strdup_printf("[Locale Information]\n"
diff --git a/arch/common/printers.h b/arch/common/printers.h
index 3daf28e6..43ddda0a 100644
--- a/arch/common/printers.h
+++ b/arch/common/printers.h
@@ -70,12 +70,16 @@ __scan_printers(void)
if (noprinters > 0) {
printer_list = g_strdup_printf("[Printers (CUPS)]\n");
for (i = 0; i < noprinters; i++) {
- printer_list = g_strconcat(printer_list, printers[i],
- g_str_equal(default_printer, printers[i]) ?
- "=<i>(Default)</i>\n" : "=\n",
- NULL);
+ printer_list = h_strdup_cprintf("\n$PRN%d$%s=%s\n",
+ printer_list,
+ i,
+ printers[i],
+ g_str_equal(default_printer, printers[i]) ?
+ "<i>(Default)</i>" : "");
g_free(printers[i]);
}
+
+ g_free(printers);
} else {
printer_list = g_strdup("[Printers]\n"
"No printers found=\n");
diff --git a/arch/common/users.h b/arch/common/users.h
index 84cec9d9..fd8f7834 100644
--- a/arch/common/users.h
+++ b/arch/common/users.h
@@ -4,14 +4,7 @@ static gchar *sys_users = NULL,
static gboolean
remove_users(gpointer key, gpointer value, gpointer data)
{
- if (!strncmp((gchar *) key, "USER", 4)) {
- /*
- * g_free((gchar *) key);
- * g_free((GtkTreeIter *) value);
- */
- return TRUE;
- }
- return FALSE;
+ return g_str_has_prefix(key, "USER");
}
static void
@@ -52,9 +45,9 @@ scan_users_do(void)
uid = atoi(tmp[2]);
strend(tmp[4], ',');
if (uid >= 1000 && uid <= 65530) {
- human_users = g_strdup_printf("%s$%s$%s=%s\n", human_users, key, tmp[0], tmp[4]);
+ human_users = h_strdup_cprintf("$%s$%s=%s\n", human_users, key, tmp[0], tmp[4]);
} else {
- sys_users = g_strdup_printf("%s$%s$%s=%s\n", sys_users, key, tmp[0], tmp[4]);
+ sys_users = h_strdup_cprintf("$%s$%s=%s\n", sys_users, key, tmp[0], tmp[4]);
}
g_strfreev(tmp);
diff --git a/arch/linux/common/battery.h b/arch/linux/common/battery.h
index 20979e48..4a38b842 100644
--- a/arch/linux/common/battery.h
+++ b/arch/linux/common/battery.h
@@ -92,7 +92,7 @@ __scan_battery_acpi(void)
if (g_str_equal(present, "yes")) {
charge_rate = atof(remaining) / atof(capacity);
- battery_list = g_strdup_printf("%s\n[Battery: %s]\n"
+ battery_list = h_strdup_cprintf("\n[Battery: %s]\n"
"State=%s (load: %s)\n"
"Capacity=%s / %s (%.2f%%)\n"
"Battery Technology=%s (%s)\n"
@@ -174,7 +174,7 @@ __scan_battery_apm(void)
}
if (stotal && sremaining) {
- battery_list = g_strdup_printf("%s\n[Battery (APM)]\n"
+ battery_list = h_strdup_cprintf("\n[Battery (APM)]\n"
"Charge=%d%%\n"
"Remaining Charge=%s of %s\n"
"Using=%s\n"
@@ -186,7 +186,7 @@ __scan_battery_apm(void)
ac_status[ac_bat],
apm_drv_ver, apm_bios_ver);
} else {
- battery_list = g_strdup_printf("%s\n[Battery (APM)]\n"
+ battery_list = h_strdup_cprintf("\n[Battery (APM)]\n"
"Charge=%d%%\n"
"Using=%s\n"
"APM driver version=%s\n"
@@ -209,4 +209,11 @@ __scan_battery(void)
__scan_battery_acpi();
__scan_battery_apm();
+
+ if (*battery_list == '\0') {
+ g_free(battery_list);
+
+ battery_list = g_strdup("[No batteries]\n"
+ "No batteries found on this system=\n");
+ }
}
diff --git a/arch/linux/common/boots.h b/arch/linux/common/boots.h
index c95ba321..d3428ea9 100644
--- a/arch/linux/common/boots.h
+++ b/arch/linux/common/boots.h
@@ -25,7 +25,7 @@ scan_boots_real(void)
scan_os(FALSE);
if (!computer->os->boots)
- computer->os->boots = "[Boots]\n";
+ computer->os->boots = g_strdup("[Boots]\n");
else
return;
@@ -48,7 +48,7 @@ scan_boots_real(void)
}
tmp = g_strsplit(buffer, " ", 5);
- computer->os->boots = g_strdup_printf("%s\n%s=Kernel %s",
+ computer->os->boots = h_strdup_cprintf("\n%s=Kernel %s",
computer->os->boots,
tmp[4],
tmp[3]);
diff --git a/arch/linux/common/devmemory.h b/arch/linux/common/devmemory.h
index 780ab12f..5eafe599 100644
--- a/arch/linux/common/devmemory.h
+++ b/arch/linux/common/devmemory.h
@@ -27,8 +27,9 @@ static void __scan_memory()
if (offset == -1) {
/* gah. linux 2.4 adds three lines of data we don't need in
/proc/meminfo */
- offset = strstr(idle_free(module_call_method("computer::getOSKernel")),
- "Linux 2.4") ? 3 : 0;
+ gchar *os_kernel = module_call_method("computer::getOSKernel");
+ offset = strstr(os_kernel, "Linux 2.4") ? 3 : 0;
+ g_free(os_kernel);
}
g_file_get_contents("/proc/meminfo", &meminfo, NULL, NULL);
diff --git a/arch/linux/common/filesystem.h b/arch/linux/common/filesystem.h
index 8300f278..d8166fc3 100644
--- a/arch/linux/common/filesystem.h
+++ b/arch/linux/common/filesystem.h
@@ -23,15 +23,23 @@
static gchar *fs_list = NULL;
+static gboolean
+remove_filesystem_entries(gpointer key, gpointer value, gpointer data)
+{
+ return g_str_has_prefix(key, "FS");
+}
+
static void
scan_filesystems(void)
{
FILE *mtab;
gchar buf[1024];
struct statfs sfs;
+ int count = 0;
g_free(fs_list);
fs_list = g_strdup("");
+ g_hash_table_foreach_remove(moreinfo, remove_filesystem_entries, NULL);
mtab = fopen("/etc/mtab", "r");
if (!mtab)
@@ -71,11 +79,11 @@ scan_filesystems(void)
strstr(tmp[3], "rw") ? "Read-Write" :
"Read-Only", tmp[1], strsize, strused,
stravail);
- g_hash_table_insert(moreinfo, g_strdup(tmp[0]), strhash);
+ g_hash_table_insert(moreinfo, g_strdup_printf("FS%d", ++count), strhash);
- fs_list = g_strdup_printf("%s$%s$%s=%s total, %s free\n",
+ fs_list = h_strdup_cprintf("$FS%d$%s=%s total, %s free\n",
fs_list,
- tmp[0], tmp[0], strsize, stravail);
+ count, tmp[0], strsize, stravail);
g_free(strsize);
g_free(stravail);
diff --git a/arch/linux/common/inputdevices.h b/arch/linux/common/inputdevices.h
index 1a5baff8..8d2d8427 100644
--- a/arch/linux/common/inputdevices.h
+++ b/arch/linux/common/inputdevices.h
@@ -21,11 +21,7 @@ static gchar *input_icons = NULL;
static gboolean
remove_input_devices(gpointer key, gpointer value, gpointer data)
{
- if (!strncmp((gchar *) key, "INP", 3)) {
- return TRUE;
- }
-
- return FALSE;
+ return g_str_has_prefix(key, "INP");
}
static struct {
@@ -91,10 +87,10 @@ __scan_input_devices(void)
}
tmp = g_strdup_printf("INP%d", ++n);
- input_list = g_strdup_printf("%s$%s$%s=\n",
+ input_list = h_strdup_cprintf("$%s$%s=\n",
input_list,
tmp, name);
- input_icons = g_strdup_printf("%sIcon$%s$%s=%s\n",
+ input_icons = h_strdup_cprintf("Icon$%s$%s=%s\n",
input_icons,
tmp, name,
input_devices[d].icon);
@@ -108,20 +104,17 @@ __scan_input_devices(void)
const gchar *url = vendor_get_url(name);
if (url) {
- strhash = g_strdup_printf("%s"
- "Vendor=%s (%s)\n",
+ strhash = h_strdup_cprintf("Vendor=%s (%s)\n",
strhash,
vendor_get_name(name),
url);
} else {
- strhash = g_strdup_printf("%s"
- "Vendor=%x\n",
+ strhash = h_strdup_cprintf("Vendor=%x\n",
strhash,
vendor);
}
- strhash = g_strdup_printf("%s"
- "Product=0x%x\n"
+ strhash = h_strdup_cprintf("Product=0x%x\n"
"Version=0x%x\n"
"Connected to=%s\n",
strhash, product, version, phys);
diff --git a/arch/linux/common/modules.h b/arch/linux/common/modules.h
index 9b895ee8..6fbe13bd 100644
--- a/arch/linux/common/modules.h
+++ b/arch/linux/common/modules.h
@@ -26,12 +26,7 @@
static gboolean
remove_module_devices(gpointer key, gpointer value, gpointer data)
{
- if (!strncmp((gchar *) key, "MOD", 3)) {
- g_free((gchar *) key);
- g_free((GtkTreeIter *) value);
- return TRUE;
- }
- return FALSE;
+ return g_str_has_prefix(key, "MOD");
}
static void
@@ -42,9 +37,9 @@ scan_modules_do(void)
if (module_list) {
g_free(module_list);
- module_list = NULL;
}
-
+
+ module_list = NULL;
g_hash_table_foreach_remove(moreinfo, remove_module_devices, NULL);
lsmod = popen("/sbin/lsmod", "r");
@@ -103,8 +98,8 @@ scan_modules_do(void)
}
/* append this module to the list of modules */
- module_list = g_strdup_printf("%s$%s$%s=%s\n",
- module_list ? module_list : "",
+ module_list = h_strdup_cprintf("$%s$%s=%s\n",
+ module_list,
hashkey,
modname,
description ? description : "");
@@ -134,7 +129,7 @@ scan_modules_do(void)
if (deps && strlen(deps)) {
gchar **tmp = g_strsplit(deps, ",", 0);
- strmodule = g_strconcat(strmodule,
+ strmodule = h_strconcat(strmodule,
"\n[Dependencies]\n",
g_strjoinv("=\n", tmp),
"=\n", NULL);
diff --git a/arch/linux/common/net.h b/arch/linux/common/net.h
index cd8b8706..527da1df 100644
--- a/arch/linux/common/net.h
+++ b/arch/linux/common/net.h
@@ -16,7 +16,8 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
-static gchar *network_interfaces = NULL;
+static gchar *network_interfaces = NULL,
+ *network_icons = NULL;
#include <sys/ioctl.h>
#include <net/if.h>
@@ -100,26 +101,27 @@ void get_net_info(char *if_name, NetInfo *netinfo)
static struct {
char *type;
char *label;
+ char *icon;
} netdev2type[] = {
- { "eth", "Ethernet" },
- { "lo", "Loopback" },
- { "ppp", "Point-to-Point" },
- { "ath", "Wireless" },
- { "wlan", "Wireless" },
- { "tun", "Virtual Point-to-Point (TUN)" },
- { "tap", "Ethernet (TAP)" },
- { "plip", "Parallel Line Internet Protocol" },
- { "irlan", "Infrared" },
- { "slip", "Serial Line Internet Protocol" },
- { "isdn", "Integrated Services Digital Network" },
- { "sit", "IPv6-over-IPv4 Tunnel" },
- { "vmnet8", "VMWare Virtual Network Interface (NAT)" },
- { "vmnet", "VMWare Virtual Network Interface" },
- { NULL, "Unknown" },
+ { "eth", "Ethernet", "network" },
+ { "lo", "Loopback", "network-generic" },
+ { "ppp", "Point-to-Point", "modem" },
+ { "ath", "Wireless", "wireless" },
+ { "wlan", "Wireless", "wireless" },
+ { "tun", "Virtual Point-to-Point (TUN)", "network-generic" },
+ { "tap", "Ethernet (TAP)", "network-generic" },
+ { "plip", "Parallel Line Internet Protocol", "network" },
+ { "irlan", "Infrared", "network-generic" },
+ { "slip", "Serial Line Internet Protocol", "network-generic" },
+ { "isdn", "Integrated Services Digital Network", "modem" },
+ { "sit", "IPv6-over-IPv4 Tunnel", "network-generic" },
+ { "vmnet8", "VMWare Virtual Network Interface (NAT)", "computer" },
+ { "vmnet", "VMWare Virtual Network Interface", "computer"},
+ { NULL, "Unknown", "network-generic" },
};
-static const gchar *
-net_get_iface_type(gchar *name)
+static void
+net_get_iface_type(gchar *name, gchar **type, gchar **icon)
{
int i;
@@ -128,18 +130,14 @@ net_get_iface_type(gchar *name)
break;
}
- return netdev2type[i].label;
+ *type = netdev2type[i].label;
+ *icon = netdev2type[i].icon;
}
static gboolean
remove_net_devices(gpointer key, gpointer value, gpointer data)
{
- if (!strncmp((gchar *) key, "NET", 4)) {
- g_free((gchar *) key);
- g_free((GtkTreeIter *) value);
- return TRUE;
- }
- return FALSE;
+ return g_str_has_prefix(key, "NET");
}
static void
@@ -171,7 +169,12 @@ scan_net_interfaces_24(void)
g_free(network_interfaces);
}
+ if (network_icons) {
+ g_free(network_icons);
+ }
+
network_interfaces = g_strdup("[Network Interfaces]\n");
+ network_icons = g_strdup("");
proc_net = fopen("/proc/net/dev", "r");
while (fgets(buffer, 256, proc_net)) {
@@ -179,6 +182,7 @@ scan_net_interfaces_24(void)
gint trash;
gchar ifacename[16];
gchar *buf = buffer;
+ gchar *iface_type, *iface_icon, *ip;
gint i;
buf = g_strstrip(buf);
@@ -204,14 +208,21 @@ scan_net_interfaces_24(void)
get_net_info(ifacename, &ni);
devid = g_strdup_printf("NET%s", ifacename);
- network_interfaces = g_strdup_printf("%s$%s$%s=Sent %.2fMiB, received %.2fMiB%s\n",
+
+ ip = g_strdup_printf(" (%s)", ni.ip);
+ network_interfaces = h_strdup_cprintf("$%s$%s=Sent %.2fMiB, received %.2fMiB%s\n",
network_interfaces,
devid,
ifacename,
trans_mb,
recv_mb,
- ni.ip[0] ?
- (gchar*)idle_free(g_strdup_printf(" (%s)", ni.ip)) : "");
+ ni.ip[0] ? ip: "");
+ g_free(ip);
+
+ net_get_iface_type(ifacename, &iface_type, &iface_icon);
+ network_icons = h_strdup_cprintf("Icon$%s$%s=%s.png\n",
+ network_icons, devid,
+ ifacename, iface_icon);
detailed = g_strdup_printf("[Network Adapter Properties]\n"
"Interface Type=%s\n"
@@ -220,7 +231,7 @@ scan_net_interfaces_24(void)
"[Transfer Details]\n"
"Bytes Received=%ld (%.2fMiB)\n"
"Bytes Sent=%ld (%.2fMiB)\n",
- net_get_iface_type(ifacename),
+ iface_type,
ni.mac[0], ni.mac[1],
ni.mac[2], ni.mac[3],
ni.mac[4], ni.mac[5],
@@ -229,8 +240,7 @@ scan_net_interfaces_24(void)
trans_bytes, trans_mb);
if (ni.ip[0] || ni.mask[0] || ni.broadcast[0]) {
- detailed = g_strdup_printf("%s\n"
- "[Internet Protocol (IPv4)]\n"
+ detailed = h_strdup_cprintf("\n[Internet Protocol (IPv4)]\n"
"IP Address=%s\n"
"Mask=%s\n"
"Broadcast Address=%s\n",
diff --git a/arch/linux/common/os.h b/arch/linux/common/os.h
index d30146ef..0fe06709 100644
--- a/arch/linux/common/os.h
+++ b/arch/linux/common/os.h
@@ -162,8 +162,6 @@ computer_get_os(void)
}
if (g_file_test(distro_db[i].file, G_FILE_TEST_EXISTS)) {
-
-
FILE *distro_ver;
char buf[128];
diff --git a/arch/linux/common/pci.h b/arch/linux/common/pci.h
index e50691d0..554c3dca 100644
--- a/arch/linux/common/pci.h
+++ b/arch/linux/common/pci.h
@@ -24,14 +24,8 @@ __scan_pci(void)
gchar *category = NULL, *name = NULL;
gint n = 0;
- //if (g_file_test("/usr/bin/gksudo", G_FILE_TEST_EXISTS)) {
- // lspci = popen("gksudo '/bin/lspci -v'", "r");
- //} else {
- lspci = popen(LSPCI, "r");
- //}
-
- if (!lspci) {
- return;
+ if (!(lspci = popen(LSPCI, "r"))) {
+ goto pci_error;
}
gchar *icon;
@@ -66,32 +60,24 @@ __scan_pci(void)
g_strfreev(list);
if (irq)
- strdevice = g_strdup_printf("%sIRQ=%d\n", strdevice, irq);
+ strdevice = h_strdup_cprintf("IRQ=%d\n", strdevice, irq);
if (freq)
- strdevice =
- g_strdup_printf("%sFrequency=%dMHz\n", strdevice,
- freq);
+ strdevice = h_strdup_cprintf("Frequency=%dMHz\n", strdevice, freq);
if (latency)
- strdevice =
- g_strdup_printf("%sLatency=%d\n", strdevice, latency);
+ strdevice = h_strdup_cprintf("Latency=%d\n", strdevice, latency);
- strdevice =
- g_strdup_printf("%sBus Master=%s\n", strdevice,
- bus_master ? "Yes" : "No");
+ strdevice = h_strdup_cprintf("Bus Master=%s\n", strdevice, bus_master ? "Yes" : "No");
} else if (!strncmp(buf, "Subsystem", 9)) {
WALK_UNTIL(' ');
buf++;
- strdevice =
- g_strdup_printf("%sOEM Vendor=%s\n", strdevice, buf);
+ strdevice = h_strdup_cprintf("OEM Vendor=%s\n", strdevice, buf);
} else if (!strncmp(buf, "Capabilities", 12)
&& !strstr(buf, "only to root") &&
!strstr(buf, "access denied")) {
WALK_UNTIL(' ');
WALK_UNTIL(']');
buf++;
- strdevice =
- g_strdup_printf("%sCapability#%d=%s\n", strdevice, ++x,
- buf);
+ strdevice = h_strdup_cprintf("Capability#%d=%s\n", strdevice, ++x, buf);
} else if (!strncmp(buf, "Memory at", 9) && strstr(buf, "[size=")) {
gint mem;
gchar unit;
@@ -104,7 +90,7 @@ __scan_pci(void)
WALK_UNTIL('[');
sscanf(buf, "[size=%d%c", &mem, &unit);
- strdevice = g_strdup_printf("%sMemory#%d=%d%cB (%s%s)\n",
+ strdevice = h_strdup_cprintf("Memory#%d=%d%cB (%s%s)\n",
strdevice, ++x,
mem,
(unit == ']') ? ' ' : unit,
@@ -118,7 +104,7 @@ __scan_pci(void)
sscanf(buf, "I/O ports at %x [size=%d]", &io_addr, &io_size);
strdevice =
- g_strdup_printf("%sI/O ports at#%d=0x%x - 0x%x\n",
+ h_strdup_cprintf("I/O ports at#%d=0x%x - 0x%x\n",
strdevice, ++x, io_addr,
io_addr + io_size);
} else if ((buf[0] >= '0' && buf[0] <= '9') && (buf[4] == ':' || buf[2] == ':')) {
@@ -174,22 +160,21 @@ __scan_pci(void)
const gchar *url = vendor_get_url(name);
if (url) {
- strdevice = g_strdup_printf("%s"
- "Vendor=%s (%s)\n",
+ strdevice = h_strdup_cprintf("Vendor=%s (%s)\n",
strdevice,
vendor_get_name(name),
url);
}
- pci_list = g_strdup_printf("%s$PCI%d$%s=%s\n", pci_list, n, category,
- name);
+ pci_list = h_strdup_cprintf("$PCI%d$%s=%s\n", pci_list, n, category, name);
n++;
}
}
if (pclose(lspci)) {
+pci_error:
/* error (no pci, perhaps?) */
pci_list = g_strconcat(pci_list, "No PCI devices found=\n", NULL);
} else if (strhash) {
diff --git a/arch/linux/common/sensors.h b/arch/linux/common/sensors.h
index 3303d5d2..bc84014b 100644
--- a/arch/linux/common/sensors.h
+++ b/arch/linux/common/sensors.h
@@ -147,8 +147,7 @@ static void read_sensors_hwmon(void)
gchar *path_hwmon, *path_sensor, *tmp, *driver, *name, *mon;
hwmon = 0;
- path_hwmon =
- g_strdup_printf("/sys/class/hwmon/hwmon%d/device/", hwmon);
+ path_hwmon = g_strdup_printf("/sys/class/hwmon/hwmon%d/device/", hwmon);
while (g_file_test(path_hwmon, G_FILE_TEST_EXISTS)) {
tmp = g_strdup_printf("%sdriver", path_hwmon);
driver = g_file_read_link(tmp, NULL);
@@ -162,9 +161,6 @@ static void read_sensors_hwmon(void)
read_sensor_labels(driver);
}
- sensors = g_strdup_printf("%s[Driver Info]\n"
- "Name=%s\n", sensors, driver);
-
sensors = g_strconcat(sensors, "[Cooling Fans]\n", NULL);
for (count = 1;; count++) {
path_sensor =
@@ -177,7 +173,7 @@ static void read_sensors_hwmon(void)
mon = g_strdup_printf("fan%d", count);
name = get_sensor_label(mon);
if (!g_str_equal(name, "ignore")) {
- sensors = g_strdup_printf("%s%s=%.0fRPM\n",
+ sensors = h_strdup_cprintf("%s=%.0fRPM\n",
sensors, name,
adjust_sensor(mon, atof(tmp)));
}
@@ -200,7 +196,7 @@ static void read_sensors_hwmon(void)
mon = g_strdup_printf("temp%d", count);
name = get_sensor_label(mon);
if (!g_str_equal(name, "ignore")) {
- sensors = g_strdup_printf("%s%s=%.2f\302\260C\n",
+ sensors = h_strdup_cprintf("%s=%.2f\302\260C\n",
sensors, name,
adjust_sensor(mon,
atof(tmp) /
@@ -226,7 +222,7 @@ static void read_sensors_hwmon(void)
mon = g_strdup_printf("in%d", count);
name = get_sensor_label(mon);
if (!g_str_equal(name, "ignore")) {
- sensors = g_strdup_printf("%s%s=%.3fV\n",
+ sensors = h_strdup_cprintf("%s=%.3fV\n",
sensors, name,
adjust_sensor(mon,
atof(tmp) /
@@ -258,9 +254,8 @@ static void read_sensors_acpi(void)
if ((tz = g_dir_open(path_tz, 0, NULL))) {
const gchar *entry;
+ gchar *temp = "";
- sensors =
- g_strdup_printf("%s\n[ACPI Thermal Zone]\n", sensors);
while ((entry = g_dir_read_name(tz))) {
gchar *path =
@@ -272,13 +267,18 @@ static void read_sensors_acpi(void)
sscanf(contents, "temperature: %d C", &temperature);
- sensors = g_strdup_printf("%s\n%s=%d\302\260C\n",
- sensors, entry, temperature);
+ temp = h_strdup_cprintf("\n%s=%d\302\260C\n",
+ temp, entry, temperature);
g_free(contents);
}
}
+ if (*temp != '\0')
+ sensors =
+ h_strdup_cprintf("\n[ACPI Thermal Zone]\n%s",
+ sensors, temp);
+
g_dir_close(tz);
}
}
@@ -295,7 +295,7 @@ static void read_sensors_omnibook(void)
sscanf(contents, "CPU temperature: %d C", &temperature);
- sensors = g_strdup_printf("%s\n[Omnibook]\n"
+ sensors = h_strdup_cprintf("\n[Omnibook]\n"
"CPU temperature=%d\302\260C\n",
sensors, temperature);
@@ -334,8 +334,7 @@ static void read_sensors_hddtemp(void)
* 2 -> 41
* 3 -> C
*/
- old = g_strdup_printf("%s\n"
- "%s (%s)=%s\302\260%s\n",
+ old = h_strdup_cprintf("\n%s (%s)=%s\302\260%s\n",
old,
fields[1], fields[0],
fields[2], fields[3]);
diff --git a/arch/linux/common/storage.h b/arch/linux/common/storage.h
index 836ba7ea..6700984b 100644
--- a/arch/linux/common/storage.h
+++ b/arch/linux/common/storage.h
@@ -16,15 +16,12 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
*/
-static gchar *storage_icons = "";
+static gchar *storage_icons = NULL;
static gboolean
remove_scsi_devices(gpointer key, gpointer value, gpointer data)
{
- if (!strncmp((gchar *) key, "SCSI", 4)) {
- return TRUE;
- }
- return FALSE;
+ return g_str_has_prefix(key, "SCSI");
}
/* SCSI support by Pascal F.Martin <pascalmartin@earthlink.net> */
@@ -113,8 +110,8 @@ __scan_scsi_devices(void)
}
gchar *devid = g_strdup_printf("SCSI%d", n);
- storage_list = g_strdup_printf("%s$%s$%s=\n", storage_list, devid, model);
- storage_icons = g_strdup_printf("%sIcon$%s$%s=%s.png\n", storage_icons, devid, model, icon);
+ storage_list = h_strdup_cprintf("$%s$%s=\n", storage_list, devid, model);
+ storage_icons = h_strdup_cprintf("Icon$%s$%s=%s.png\n", storage_icons, devid, model, icon);
gchar *strhash = g_strdup_printf("[Device Information]\n"
"Model=%s\n"
@@ -147,10 +144,7 @@ __scan_scsi_devices(void)
static gboolean
remove_ide_devices(gpointer key, gpointer value, gpointer data)
{
- if (!strncmp((gchar *) key, "IDE", 3)) {
- return TRUE;
- }
- return FALSE;
+ return g_str_has_prefix(key, "IDE");
}
void
@@ -165,7 +159,7 @@ __scan_ide_devices(void)
/* remove old devices from global device table */
g_hash_table_foreach_remove(moreinfo, remove_ide_devices, NULL);
- storage_list = g_strdup_printf("%s\n[IDE Disks]\n", storage_list);
+ storage_list = g_strconcat(storage_list, "\n[IDE Disks]\n", NULL);
iface = 'a';
for (i = 0; i <= 16; i++) {
@@ -211,26 +205,26 @@ __scan_ide_devices(void)
gchar *media_type = g_strstrip(strstr(buf, "Does "));
gchar **ttmp = g_strsplit(media_type, " ", 0);
- capab = g_strdup_printf("%s\nCan %s#%d=%s\n",
- capab ? capab : "",
+ capab = h_strdup_cprintf("\nCan %s#%d=%s\n",
+ capab,
ttmp[1], ++nn, ttmp[2]);
g_strfreev(ttmp);
} else if (strstr(buf, "Buffer-Underrun-Free")) {
- capab = g_strdup_printf("%s\nSupports BurnProof=%s\n",
- capab ? capab : "",
+ capab = h_strdup_cprintf("\nSupports BurnProof=%s\n",
+ capab,
strstr(buf, "Does not") ? "No" : "Yes");
} else if (strstr(buf, "multi-session")) {
- capab = g_strdup_printf("%s\nCan read multi-session CDs=%s\n",
- capab ? capab : "",
+ capab = h_strdup_cprintf("\nCan read multi-session CDs=%s\n",
+ capab,
strstr(buf, "Does not") ? "No" : "Yes");
} else if (strstr(buf, "audio CDs")) {
- capab = g_strdup_printf("%s\nCan play audio CDs=%s\n",
- capab ? capab : "",
+ capab = h_strdup_cprintf("\nCan play audio CDs=%s\n",
+ capab,
strstr(buf, "Does not") ? "No" : "Yes");
} else if (strstr(buf, "PREVENT/ALLOW")) {
- capab = g_strdup_printf("%s\nCan lock media=%s\n",
- capab ? capab : "",
+ capab = h_strdup_cprintf("\nCan lock media=%s\n",
+ capab,
strstr(buf, "Does not") ? "No" : "Yes");
}
} else if ((strstr(buf, "read") || strstr(buf, "write")) && strstr(buf, "kB/s")) {
@@ -248,7 +242,6 @@ __scan_ide_devices(void)
g_free(tmp);
}
-
g_free(device);
device = g_strdup_printf("/proc/ide/hd%c/cache", iface);
@@ -288,9 +281,9 @@ __scan_ide_devices(void)
gchar *devid = g_strdup_printf("IDE%d", n);
- storage_list = g_strdup_printf("%s$%s$%s=\n", storage_list,
+ storage_list = h_strdup_cprintf("$%s$%s=\n", storage_list,
devid, model);
- storage_icons = g_strdup_printf("%sIcon$%s$%s=%s.png\n", storage_icons, devid,
+ storage_icons = h_strdup_cprintf("Icon$%s$%s=%s.png\n", storage_icons, devid,
model, g_str_equal(media, "cdrom") ? \
"cdrom" : "hdd");
@@ -307,14 +300,14 @@ __scan_ide_devices(void)
media,
cache);
if (driver) {
- strhash = g_strdup_printf("%s%s\n", strhash, driver);
+ strhash = h_strdup_cprintf("%s\n", strhash, driver);
g_free(driver);
driver = NULL;
}
if (pgeometry && lgeometry) {
- strhash = g_strdup_printf("%s[Geometry]\n"
+ strhash = h_strdup_cprintf("[Geometry]\n"
"Physical=%s\n"
"Logical=%s\n",
strhash, pgeometry, lgeometry);
@@ -326,14 +319,14 @@ __scan_ide_devices(void)
}
if (capab) {
- strhash = g_strdup_printf("%s[Capabilities]\n%s", strhash, capab);
+ strhash = h_strdup_cprintf("[Capabilities]\n%s", strhash, capab);
g_free(capab);
capab = NULL;
}
if (speed) {
- strhash = g_strdup_printf("%s[Speeds]\n%s", strhash, speed);
+ strhash = h_strdup_cprintf("[Speeds]\n%s", strhash, speed);
g_free(speed);
speed = NULL;
diff --git a/arch/linux/common/usb.h b/arch/linux/common/usb.h
index d59f5f01..f2592648 100644
--- a/arch/linux/common/usb.h
+++ b/arch/linux/common/usb.h
@@ -19,10 +19,7 @@
static gboolean
remove_usb_devices(gpointer key, gpointer value, gpointer data)
{
- if (!strncmp((gchar *) key, "USB", 3)) {
- return TRUE;
- }
- return FALSE;
+ return g_str_has_prefix(key, "USB");
}
static gchar *usb_list = NULL;
@@ -89,10 +86,10 @@ __scan_usb(void)
if (classid == 9) { /* hub */
- usb_list = g_strdup_printf("%s[%s#%d]\n",
+ usb_list = h_strdup_cprintf("[%s#%d]\n",
usb_list, product, n);
} else { /* everything else */
- usb_list = g_strdup_printf("%s$%s$%s=\n",
+ usb_list = h_strdup_cprintf("$%s$%s=\n",
usb_list, tmp, product);
const gchar *url = vendor_get_url(manuf);
diff --git a/arch/linux/x86/processor.h b/arch/linux/x86/processor.h
index 918bac7c..fd8711af 100644
--- a/arch/linux/x86/processor.h
+++ b/arch/linux/x86/processor.h
@@ -264,7 +264,7 @@ gchar *processor_get_capabilities_from_flags(gchar * strflags)
* - Use binary search or something faster than this O(n) cruft
*/
gchar **flags, **old;
- gchar *tmp = "";
+ gchar *tmp = NULL;
gint i, j = 0;
flags = g_strsplit(strflags, " ", 0);
@@ -279,7 +279,7 @@ gchar *processor_get_capabilities_from_flags(gchar * strflags)
}
}
- tmp = g_strdup_printf("%s%s=%s\n", tmp, flags[j], meaning);
+ tmp = h_strdup_cprintf("%s=%s\n", tmp, flags[j], meaning);
j++;
}