Just allocate the size of the involved variable. Eliminate redundant
data type specs where inconsistency would go unnoticed.
Link the device context earlier to the device instance while we are
here. Immediately after allocation of the dynamic memory so that the
relation remains obvious.
- devc = g_malloc0(sizeof(struct dev_context));
- sdi = g_malloc0(sizeof(struct sr_dev_inst));
-
+ devc = g_malloc0(sizeof(*devc));
sr_sw_limits_init(&devc->limits);
devc->profile = p;
sr_sw_limits_init(&devc->limits);
devc->profile = p;
+ sdi = g_malloc0(sizeof(*sdi));
+ sdi->priv = devc;
sdi->status = SR_ST_INACTIVE;
sdi->vendor = g_strdup("RDTech");
sdi->model = g_strdup(p->model_name);
sdi->version = NULL;
sdi->inst_type = SR_INST_SERIAL;
sdi->conn = serial;
sdi->status = SR_ST_INACTIVE;
sdi->vendor = g_strdup("RDTech");
sdi->model = g_strdup(p->model_name);
sdi->version = NULL;
sdi->inst_type = SR_INST_SERIAL;
sdi->conn = serial;
for (ch_idx = 0; (name = p->channels[ch_idx].name); ch_idx++)
sr_channel_new(sdi, ch_idx, SR_CHANNEL_ANALOG, TRUE, name);
for (ch_idx = 0; (name = p->channels[ch_idx].name); ch_idx++)
sr_channel_new(sdi, ch_idx, SR_CHANNEL_ANALOG, TRUE, name);