r600/sfn: Add a mapping table for atomics
[mesa.git] / src / gallium / auxiliary / hud / hud_diskstat.c
index 7eaaf35a7c7d484e1fa9f7322344066b0df5dfa8..b5d9710ef11e4690b6a8b50bd15489018ac56d58 100644 (file)
@@ -37,6 +37,7 @@
 #include "util/os_time.h"
 #include "os/os_thread.h"
 #include "util/u_memory.h"
+#include "util/u_string.h"
 #include <stdio.h>
 #include <unistd.h>
 #include <dirent.h>
@@ -196,8 +197,10 @@ hud_diskstat_graph_install(struct hud_pane *pane, const char *dev_name,
    else if (dsi->mode == DISKSTAT_WR) {
       snprintf(gr->name, sizeof(gr->name), "%s-Write-MB/s", dsi->name);
    }
-   else
+   else {
+      free(gr);
       return;
+   }
 
    gr->query_data = dsi;
    gr->query_new_value = query_dsi_load;
@@ -211,7 +214,7 @@ add_object_part(const char *basename, const char *name, int objmode)
 {
    struct diskstat_info *dsi = CALLOC_STRUCT(diskstat_info);
 
-   strcpy(dsi->name, name);
+   snprintf(dsi->name, sizeof(dsi->name), "%s", name);
    snprintf(dsi->sysfs_filename, sizeof(dsi->sysfs_filename), "%s/%s/stat",
       basename, name);
    dsi->mode = objmode;
@@ -224,7 +227,7 @@ add_object(const char *basename, const char *name, int objmode)
 {
    struct diskstat_info *dsi = CALLOC_STRUCT(diskstat_info);
 
-   strcpy(dsi->name, name);
+   snprintf(dsi->name, sizeof(dsi->name), "%s", name);
    snprintf(dsi->sysfs_filename, sizeof(dsi->sysfs_filename), "%s/stat",
       basename);
    dsi->mode = objmode;