diff --git a/src/libxl/libxl_conf.c b/src/libxl/libxl_conf.c
index a109bb5cf1..b20df29510 100644
--- a/src/libxl/libxl_conf.c
+++ b/src/libxl/libxl_conf.c
@@ -1471,7 +1471,7 @@ libxlMakeNicList(virDomainDefPtr def,  libxl_domain_config *d_config)
 
     VIR_SHRINK_N(x_nics, nnics, nnics - nvnics);
     d_config->nics = x_nics;
-    d_config->num_nics = nnics;
+    d_config->num_nics = nvnics;
 
     return 0;
 
diff --git a/src/libxl/libxl_domain.c b/src/libxl/libxl_domain.c
index 632acfdd40..50f7eed127 100644
--- a/src/libxl/libxl_domain.c
+++ b/src/libxl/libxl_domain.c
@@ -315,7 +315,7 @@ libxlDomainDeviceDefPostParse(virDomainDeviceDefPtr dev,
         virDomainHostdevSubsysPCIPtr pcisrc;
 
         if (dev->type == VIR_DOMAIN_DEVICE_NET)
-            hostdev = &(dev->data.net)->data.hostdev.def;
+            hostdev = &dev->data.net->data.hostdev.def;
         else
             hostdev = dev->data.hostdev;
         pcisrc = &hostdev->source.subsys.u.pci;