Removing dead code
diff --git a/openstack/networking/v2/subnets/results.go b/openstack/networking/v2/subnets/results.go
index 5c5744c..3c9ef71 100644
--- a/openstack/networking/v2/subnets/results.go
+++ b/openstack/networking/v2/subnets/results.go
@@ -1,8 +1,6 @@
 package subnets
 
 import (
-	"fmt"
-
 	"github.com/mitchellh/mapstructure"
 	"github.com/rackspace/gophercloud"
 	"github.com/rackspace/gophercloud/pagination"
@@ -23,11 +21,8 @@
 	}
 
 	err := mapstructure.Decode(r.Resp, &res)
-	if err != nil {
-		return nil, fmt.Errorf("Error decoding Neutron subnet: %v", err)
-	}
 
-	return res.Subnet, nil
+	return res.Subnet, err
 }
 
 // CreateResult represents the result of a create operation.
@@ -99,12 +94,8 @@
 // the end of a page and the pager seeks to traverse over a new one. In order
 // to do this, it needs to construct the next page's URL.
 func (p SubnetPage) NextPageURL() (string, error) {
-	type link struct {
-		Href string `mapstructure:"href"`
-		Rel  string `mapstructure:"rel"`
-	}
 	type resp struct {
-		Links []link `mapstructure:"subnets_links"`
+		Links []gophercloud.Link `mapstructure:"subnets_links"`
 	}
 
 	var r resp
@@ -113,17 +104,7 @@
 		return "", err
 	}
 
-	var url string
-	for _, l := range r.Links {
-		if l.Rel == "next" {
-			url = l.Href
-		}
-	}
-	if url == "" {
-		return "", nil
-	}
-
-	return url, nil
+	return gophercloud.ExtractNextURL(r.Links)
 }
 
 // IsEmpty checks whether a SubnetPage struct is empty.
@@ -144,9 +125,6 @@
 	}
 
 	err := mapstructure.Decode(page.(SubnetPage).Body, &resp)
-	if err != nil {
-		return nil, err
-	}
 
-	return resp.Subnets, nil
+	return resp.Subnets, err
 }