netdev: Support null netdev argument in netdev_ref().
authorEthan Jackson <ethan@nicira.com>
Tue, 25 Jun 2013 00:23:15 +0000 (17:23 -0700)
committerEthan Jackson <ethan@nicira.com>
Fri, 28 Jun 2013 01:23:40 +0000 (18:23 -0700)
This will be convenient in future patches.

Signed-off-by: Ethan Jackson <ethan@nicira.com>
Acked-by: Ben Pfaff <blp@nicira.com>
lib/netdev.c

index 653f5bc..d255dcc 100644 (file)
@@ -277,14 +277,17 @@ netdev_open(const char *name, const char *type, struct netdev **netdevp)
     return 0;
 }
 
-/* Returns a reference to 'netdev_' for the caller to own. */
+/* Returns a reference to 'netdev_' for the caller to own. Returns null if
+ * 'netdev_' is null. */
 struct netdev *
 netdev_ref(const struct netdev *netdev_)
 {
     struct netdev *netdev = CONST_CAST(struct netdev *, netdev_);
 
-    ovs_assert(netdev->ref_cnt > 0);
-    netdev->ref_cnt++;
+    if (netdev) {
+        ovs_assert(netdev->ref_cnt > 0);
+        netdev->ref_cnt++;
+    }
     return netdev;
 }