OBJ(acpitemp, 0)
obj->data.i = open_acpi_temperature(arg);
END OBJ(acpiacadapter, 0)
+ if(arg) {
+#ifdef __linux__
+ if(strpbrk(arg, "/.") != NULL) {
+ /*
+ * a bit of paranoia. screen out funky paths
+ * i hope no device will have a '.' in its name
+ */
+ NORM_ERR("acpiacadapter: arg must not contain '/' or '.'");
+ } else
+ obj->data.opaque = strdup(arg);
+#else
+ NORM_ERR("acpiacadapter: arg is only used on linux");
+#endif
+ }
+ if(! obj->data.opaque)
+ obj->data.opaque = strdup("AC");
#endif /* !__OpenBSD__ */
END OBJ(freq, 0)
get_cpu_count();
scan_loadgraph_arg(obj, arg);
#endif /* X11 */
END OBJ(diskio, &update_diskio)
- parse_diskio_arg(obj, arg);
+ parse_diskio_arg(obj, dev_name(arg));
END OBJ(diskio_read, &update_diskio)
- parse_diskio_arg(obj, arg);
+ parse_diskio_arg(obj, dev_name(arg));
END OBJ(diskio_write, &update_diskio)
- parse_diskio_arg(obj, arg);
+ parse_diskio_arg(obj, dev_name(arg));
#ifdef X11
END OBJ(diskiograph, &update_diskio)
- parse_diskiograph_arg(obj, arg);
+ parse_diskiograph_arg(obj, dev_name(arg));
END OBJ(diskiograph_read, &update_diskio)
- parse_diskiograph_arg(obj, arg);
+ parse_diskiograph_arg(obj, dev_name(arg));
END OBJ(diskiograph_write, &update_diskio)
- parse_diskiograph_arg(obj, arg);
+ parse_diskiograph_arg(obj, dev_name(arg));
#endif /* X11 */
END OBJ(color, 0)
#ifdef X11
case OBJ_acpitemp:
close(data.i);
break;
+ case OBJ_acpiacadapter:
+ free(data.opaque);
+ break;
#endif /* !__OpenBSD__ */
#ifdef __linux__
case OBJ_i2c: