if (ul_path_readf_s32(lsmem->sysmem, &x, "%s/removable", name) == 0)
blk->removable = x == 1;
- if (ul_path_readf_string(lsmem->sysmem, &line, "%s/state", name) > 0) {
+ if (ul_path_readf_string(lsmem->sysmem, &line, "%s/state", name) > 0 && line) {
if (strcmp(line, "offline") == 0)
blk->state = MEMORY_STATE_OFFLINE;
else if (strcmp(line, "online") == 0)
blk->node = memory_block_get_node(lsmem, name);
blk->nr_zones = 0;
- if (lsmem->have_zones &&
- ul_path_readf_string(lsmem->sysmem, &line, "%s/valid_zones", name) > 0) {
+ if (lsmem->have_zones
+ && ul_path_readf_string(lsmem->sysmem, &line, "%s/valid_zones", name) > 0
+ && line) {
char *token = strtok(line, " ");
blk->nr_zones++;
token = strtok(NULL, " ");
}
-
free(line);
}
}