diff options
author | Ben Pfaff <blp@nicira.com> | 2013-08-10 20:46:21 -0700 |
---|---|---|
committer | Ben Pfaff <blp@nicira.com> | 2013-08-11 10:24:48 -0700 |
commit | d72e22c8413ae12221d30df1c00b985433e14cee (patch) | |
tree | 01105de1e191dcd0d6a2e005ed77fd47cfb50b21 /lib/netdev.c | |
parent | d33ed21806df93b394008f7d453f0fb1c185845a (diff) |
netdev: Clean up on "construct" error in netdev_open().
Reported-by: ZhengLingyun <konghuarukhr@163.com>
Signed-off-by: Ben Pfaff <blp@nicira.com>
Diffstat (limited to 'lib/netdev.c')
-rw-r--r-- | lib/netdev.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/netdev.c b/lib/netdev.c index 0e8ec582..088aea90 100644 --- a/lib/netdev.c +++ b/lib/netdev.c @@ -328,6 +328,9 @@ netdev_open(const char *name, const char *type, struct netdev **netdevp) atomic_add(&rc->ref_cnt, 1, &old_ref_cnt); } else { + free(netdev->name); + ovs_assert(list_is_empty(&netdev->saved_flags_list)); + shash_delete(&netdev_shash, netdev->node); rc->class->dealloc(netdev); } } else { |