From 3bd5a83eff69a261cf34f17424b3152ea11130d0 Mon Sep 17 00:00:00 2001 From: Beniamino Galvani Date: Mon, 31 Jul 2017 09:51:45 +0200 Subject: [PATCH] platform: fix failed assertion with cloned route platform-linux: event-notification: NEWROUTE, seq 5: fd02::2/128 via fd01::1 dev 17 metric 0 mss 0 rt-src rt-unspec src ::/0 cloned mtu 1400 NetworkManager:ERROR:src/platform/nmp-object.h:614:ASSERT_nmp_cache_ops: assertion failed: (obj_old || obj_new) Fixes: 9440eefb6dc4939752bf049d1669a0a4d37213c2 --- src/platform/nm-linux-platform.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c index d888dd002e..8ee2321fd3 100644 --- a/src/platform/nm-linux-platform.c +++ b/src/platform/nm-linux-platform.c @@ -3836,9 +3836,11 @@ event_valid_msg (NMPlatform *platform, struct nl_msg *msg, gboolean handle_event case RTM_NEWROUTE: case RTM_GETLINK: cache_op = nmp_cache_update_netlink (cache, obj, &obj_old, &obj_new); - cache_on_change (platform, cache_op, obj_old, obj_new); - cache_post (platform, msghdr, cache_op, obj, obj_old, obj_new); - nm_platform_cache_update_emit_signal (platform, cache_op, obj_old, obj_new); + if (cache_op != NMP_CACHE_OPS_UNCHANGED) { + cache_on_change (platform, cache_op, obj_old, obj_new); + cache_post (platform, msghdr, cache_op, obj, obj_old, obj_new); + nm_platform_cache_update_emit_signal (platform, cache_op, obj_old, obj_new); + } break; case RTM_DELLINK: