diff --git a/src/platform/nmp-netns.h b/src/platform/nmp-netns.h index eb33f2ed64..56c1e7e83a 100644 --- a/src/platform/nmp-netns.h +++ b/src/platform/nmp-netns.h @@ -53,8 +53,12 @@ int nmp_netns_get_fd_mnt (NMPNetns *self); static inline void _nm_auto_pop_netns (NMPNetns **p) { - if (*p) + if (*p) { + int errsv = errno; + nmp_netns_pop (*p); + errno = errsv; + } } #define nm_auto_pop_netns __attribute__((cleanup(_nm_auto_pop_netns)))