diff --git a/openstack/compute/v2/images/requests_test.go b/openstack/compute/v2/images/requests_test.go
index 93a97bd..21e8296 100644
--- a/openstack/compute/v2/images/requests_test.go
+++ b/openstack/compute/v2/images/requests_test.go
@@ -37,8 +37,7 @@
 							"created": "2014-09-23T12:54:52Z",
 							"minDisk": 0,
 							"progress": 100,
-							"minRam": 0,
-							"metadata": {}
+							"minRam": 0
 						},
 						{
 							"status": "ACTIVE",
@@ -49,8 +48,7 @@
 							"created": "2014-09-23T12:51:42Z",
 							"minDisk": 0,
 							"progress": 100,
-							"minRam": 0,
-							"metadata": {}
+							"minRam": 0
 						}
 					]
 				}
@@ -130,8 +128,7 @@
 					"created": "2014-09-23T12:54:52Z",
 					"minDisk": 0,
 					"progress": 100,
-					"minRam": 0,
-					"metadata": {}
+					"minRam": 0
 				}
 			}
 		`)
diff --git a/openstack/compute/v2/images/results.go b/openstack/compute/v2/images/results.go
index 40e814d..482e7d6 100644
--- a/openstack/compute/v2/images/results.go
+++ b/openstack/compute/v2/images/results.go
@@ -51,6 +51,8 @@
 	Status   string
 
 	Updated string
+	
+	Metadata map[string]string
 }
 
 // ImagePage contains a single page of results from a List operation.
diff --git a/openstack/compute/v2/servers/results_test.go b/openstack/compute/v2/servers/results_test.go
index 2dba484..9ee5579 100644
--- a/openstack/compute/v2/servers/results_test.go
+++ b/openstack/compute/v2/servers/results_test.go
@@ -10,6 +10,7 @@
 
 	"github.com/rackspace/gophercloud"
 	th "github.com/rackspace/gophercloud/testhelper"
+	"github.com/rackspace/gophercloud/testhelper/client"
 	"golang.org/x/crypto/ssh"
 )
 
@@ -97,3 +98,14 @@
 	th.AssertNoErr(t, err)
 	th.AssertEquals(t, "ruZKK0tqxRfYm5t7lSJq", pwd)
 }
+
+func TestListAddressesAllPages(t *testing.T) {
+	th.SetupHTTP()
+	defer th.TeardownHTTP()
+	HandleAddressListSuccessfully(t)
+
+	allPages, err := ListAddresses(client.ServiceClient(), "asdfasdfasdf").AllPages()
+	th.AssertNoErr(t, err)
+	_, err = ExtractAddresses(allPages)
+	th.AssertNoErr(t, err)
+}
diff --git a/pagination/pager.go b/pagination/pager.go
index a7593ac..6f1ca04 100644
--- a/pagination/pager.go
+++ b/pagination/pager.go
@@ -138,6 +138,11 @@
 	// that type.
 	pageType := reflect.TypeOf(testPage)
 
+	// if it's a single page, just return the testPage (first page)
+	if _, found := pageType.FieldByName("SinglePageBase"); found {
+		return testPage, nil
+	}
+
 	// Switch on the page body type. Recognized types are `map[string]interface{}`,
 	// `[]byte`, and `[]interface{}`.
 	switch testPage.GetBody().(type) {
@@ -153,7 +158,14 @@
 					key = k
 				}
 			}
-			pagesSlice = append(pagesSlice, b[key].([]interface{})...)
+			switch keyType := b[key].(type) {
+			case map[string]interface{}:
+				pagesSlice = append(pagesSlice, keyType)
+			case []interface{}:
+				pagesSlice = append(pagesSlice, b[key].([]interface{})...)
+			default:
+				return false, fmt.Errorf("Unsupported page body type: %+v", keyType)
+			}
 			return true, nil
 		})
 		if err != nil {
diff --git a/rackspace/compute/v2/images/fixtures.go b/rackspace/compute/v2/images/fixtures.go
index ccfbdc6..cb8bda3 100644
--- a/rackspace/compute/v2/images/fixtures.go
+++ b/rackspace/compute/v2/images/fixtures.go
@@ -180,6 +180,29 @@
 	MinRAM:   512,
 	Progress: 100,
 	Status:   "ACTIVE",
+	Metadata: map[string]string{
+		"auto_disk_config":                      "True",
+		"cache_in_nova":                         "True",
+		"com.rackspace__1__build_core":          "1",
+		"com.rackspace__1__build_managed":       "1",
+		"com.rackspace__1__build_rackconnect":   "1",
+		"com.rackspace__1__options":             "0",
+		"com.rackspace__1__platform_target":     "PublicCloud",
+		"com.rackspace__1__release_build_date":  "2014-10-01_12-31-03",
+		"com.rackspace__1__release_id":          "1007",
+		"com.rackspace__1__release_version":     "6",
+		"com.rackspace__1__source":              "kickstart",
+		"com.rackspace__1__visible_core":        "1",
+		"com.rackspace__1__visible_managed":     "1",
+		"com.rackspace__1__visible_rackconnect": "1",
+		"image_type":                            "base",
+		"org.openstack__1__architecture":        "x64",
+		"org.openstack__1__os_distro":           "com.ubuntu",
+		"org.openstack__1__os_version":          "14.04",
+		"os_distro":                             "ubuntu",
+		"os_type":                               "linux",
+		"vm_mode":                               "xen",
+	},
 }
 
 // UbuntuImage is the second Image structure that should be parsed from ListOutput and
@@ -193,6 +216,29 @@
 	MinRAM:   512,
 	Progress: 100,
 	Status:   "ACTIVE",
+	Metadata: map[string]string{
+		"auto_disk_config":                      "True",
+		"cache_in_nova":                         "True",
+		"com.rackspace__1__build_core":          "1",
+		"com.rackspace__1__build_managed":       "1",
+		"com.rackspace__1__build_rackconnect":   "1",
+		"com.rackspace__1__options":             "0",
+		"com.rackspace__1__platform_target":     "PublicCloud",
+		"com.rackspace__1__release_build_date":  "2014-10-01_12-31-03",
+		"com.rackspace__1__release_id":          "1007",
+		"com.rackspace__1__release_version":     "6",
+		"com.rackspace__1__source":              "kickstart",
+		"com.rackspace__1__visible_core":        "1",
+		"com.rackspace__1__visible_managed":     "1",
+		"com.rackspace__1__visible_rackconnect": "1",
+		"image_type":                            "base",
+		"org.openstack__1__architecture":        "x64",
+		"org.openstack__1__os_distro":           "com.ubuntu",
+		"org.openstack__1__os_version":          "14.04",
+		"os_distro":                             "ubuntu",
+		"os_type":                               "linux",
+		"vm_mode":                               "xen",
+	},
 }
 
 // ExpectedImageSlice is the collection of images that should be parsed from ListOutput,
