diff options
author | Thomas Haller <thaller@redhat.com> | 2019-03-21 08:23:54 +0100 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2019-03-24 09:21:13 +0100 |
commit | 047adae242494fb77bcc4767feb4affbab9c287f (patch) | |
tree | fea74398dc0953d2a094eb7f17f6b6d4e1bf03ad | |
parent | acf1cf61cf406729ef2704e6ace22b0367c90e77 (diff) | |
download | NetworkManager-047adae242494fb77bcc4767feb4affbab9c287f.tar.gz |
libnm/team: fix crash with nm_setting_team_remove_runner_tx_hash_by_value() having no runner_tx_hash array
-rw-r--r-- | libnm-core/nm-setting-team.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/libnm-core/nm-setting-team.c b/libnm-core/nm-setting-team.c index 42ee3eec89..f3b52308b1 100644 --- a/libnm-core/nm-setting-team.c +++ b/libnm-core/nm-setting-team.c @@ -929,13 +929,14 @@ nm_setting_team_remove_runner_tx_hash_by_value (NMSettingTeam *setting, g_return_val_if_fail (NM_IS_SETTING_TEAM (setting), FALSE); g_return_val_if_fail (txhash != NULL, FALSE); - g_return_val_if_fail (txhash[0] != '\0', FALSE); - for (i = 0; i < priv->runner_tx_hash->len; i++) { - if (nm_streq (txhash, priv->runner_tx_hash->pdata[i])) { - g_ptr_array_remove_index (priv->runner_tx_hash, i); - _notify (setting, PROP_RUNNER_TX_HASH); - return TRUE; + if (priv->runner_tx_hash) { + for (i = 0; i < priv->runner_tx_hash->len; i++) { + if (nm_streq (txhash, priv->runner_tx_hash->pdata[i])) { + g_ptr_array_remove_index (priv->runner_tx_hash, i); + _notify (setting, PROP_RUNNER_TX_HASH); + return TRUE; + } } } return FALSE; |