diff --git a/flexradio/sdr1k.c b/flexradio/sdr1k.c index ad67486bb..de70dd6aa 100644 --- a/flexradio/sdr1k.c +++ b/flexradio/sdr1k.c @@ -199,20 +199,20 @@ int sdr1k_init(RIG *rig) { struct sdr1k_priv_data *priv; - priv = (struct sdr1k_priv_data *)malloc(sizeof(struct sdr1k_priv_data)); + rig->state.priv = (struct sdr1k_priv_data *)malloc(sizeof(struct sdr1k_priv_data)); - if (!priv) + if (!rig->state.priv) { /* whoops! memory shortage! */ return -RIG_ENOMEM; } + priv = rig->state.priv; + priv->dds_freq = RIG_FREQ_NONE; priv->xtal = DEFAULT_XTAL; priv->pll_mult = DEFAULT_PLL_MULT; - rig->state.priv = (void *)priv; - return RIG_OK; }