diff --git a/rigs/dummy/dummy.c b/rigs/dummy/dummy.c index d73733310..446818112 100644 --- a/rigs/dummy/dummy.c +++ b/rigs/dummy/dummy.c @@ -222,7 +222,7 @@ static int dummy_init(RIG *rig) int i; ENTERFUNC; - priv = (struct dummy_priv_data *)malloc(sizeof(struct dummy_priv_data)); + priv = (struct dummy_priv_data *)calloc(1,sizeof(struct dummy_priv_data)); if (!priv) { @@ -234,6 +234,7 @@ static int dummy_init(RIG *rig) rig_debug(RIG_DEBUG_VERBOSE, "%s called\n", __func__); rig->state.rigport.type.rig = RIG_PORT_NONE; + priv->split = RIG_SPLIT_OFF; priv->ptt = RIG_PTT_OFF; priv->powerstat = RIG_POWER_ON; rig->state.powerstat = priv->powerstat; @@ -416,6 +417,12 @@ static int dummy_set_freq(RIG *rig, vfo_t vfo, freq_t freq) ENTERFUNC; + if (rig == NULL) + { + rig_debug(RIG_DEBUG_ERR, "%s: rig is NULL!!!\n", __func__); + return -RIG_EINVAL; + } + if (vfo == RIG_VFO_CURR) { vfo = priv->curr_vfo; } // if needed for testing enable this to emulate a rig with 100hz resolution diff --git a/src/rig.c b/src/rig.c index c74033278..b59ea33d5 100644 --- a/src/rig.c +++ b/src/rig.c @@ -548,6 +548,7 @@ RIG *HAMLIB_API rig_init(rig_model_t rig_model) pthread_mutex_init(&rs->mutex_set_transaction, NULL); #endif + rs->priv = NULL; rs->async_data_enabled = 0; rs->rigport.fd = -1; rs->pttport.fd = -1;