@@ -301,6 +301,8 @@ int8_t ws_cfg_network_size_set(protocol_interface_info_entry_t *cur, ws_gen_cfg_
301301        set_function (& nw_size_cfg );
302302    }
303303
304+     uint8_t  cfg_network_size  =  cfg -> network_size ;
305+ 
304306    /* If no longer in an automatic network size mode, frees automatic configuration, 
305307       so that new configuration is set */ 
306308    if  (nw_size_external_cfg  &&  old_network_size  ==  NETWORK_SIZE_AUTOMATIC ) {
@@ -309,7 +311,7 @@ int8_t ws_cfg_network_size_set(protocol_interface_info_entry_t *cur, ws_gen_cfg_
309311    }
310312
311313    uint8_t  set_flags  =  0 ;
312-     if  (cfg -> network_size  ==  NETWORK_SIZE_AUTOMATIC ) {
314+     if  (cfg_network_size  ==  NETWORK_SIZE_AUTOMATIC ) {
313315        set_flags  =  CFG_FLAGS_DISABLE_VAL_SET ;
314316    }
315317    /* Sets values if changed or network size has been previously automatic (to make sure 
@@ -336,7 +338,7 @@ int8_t ws_cfg_network_size_set(protocol_interface_info_entry_t *cur, ws_gen_cfg_
336338    }
337339
338340    // If is in an automatic network size mode, updates automatic configuration 
339-     if  (cfg -> network_size  ==  NETWORK_SIZE_AUTOMATIC  &&  cur ) {
341+     if  (cfg_network_size  ==  NETWORK_SIZE_AUTOMATIC  &&  cur ) {
340342        ws_cfg_network_size_configure (cur , cur -> ws_info -> pan_information .pan_size );
341343    }
342344    return  CFG_SETTINGS_OK ;
@@ -693,6 +695,7 @@ int8_t ws_cfg_gen_set(protocol_interface_info_entry_t *cur, ws_gen_cfg_t *cfg, w
693695    }
694696    ws_cfg_trace ((ws_cfgs_t  * ) cfg , (ws_cfgs_t  * ) new_cfg , sizeof (ws_gen_cfg_t ), "gen" );
695697
698+     cfg -> network_size  =  new_cfg -> network_size ;
696699    if  (& cfg -> network_name  !=  & new_cfg -> network_name ) {
697700        strncpy (cfg -> network_name , new_cfg -> network_name , 32 );
698701    }
0 commit comments