diff --git a/cmd/helm/inspect.go b/cmd/helm/inspect.go
index 2e43f0e7aeaf93b88541e75641a1b97094f51094..8d9948b6f772766a469641ed89cfe2c22a794634 100644
--- a/cmd/helm/inspect.go
+++ b/cmd/helm/inspect.go
@@ -130,11 +130,10 @@ func (i *inspectCmd) run() error {
 		fmt.Fprintln(i.out, string(cf))
 	}
 
-	if i.output == both {
-		fmt.Fprintln(i.out, "---")
-	}
-
-	if i.output == valuesOnly || i.output == both {
+	if (i.output == valuesOnly || i.output == both) && chrt.Values != nil {
+		if i.output == both {
+			fmt.Fprintln(i.out, "---")
+		}
 		fmt.Fprintln(i.out, chrt.Values.Raw)
 	}
 
diff --git a/cmd/helm/inspect_test.go b/cmd/helm/inspect_test.go
index 24c4a895e26520ac48793f6fc32185b0a2d62357..bbd9c61998bfc23080d9a4c9dbd71dc0d7d8de4f 100644
--- a/cmd/helm/inspect_test.go
+++ b/cmd/helm/inspect_test.go
@@ -61,4 +61,17 @@ func TestInspect(t *testing.T) {
 			t.Errorf("Expected\n%q\nGot\n%q\n", expect[i], got)
 		}
 	}
+
+	// Regression tests for missing values. See issue #1024.
+	b.Reset()
+	insp = &inspectCmd{
+		chartpath: "testdata/testcharts/novals",
+		output:    "values",
+		out:       b,
+	}
+	insp.run()
+	if b.Len() != 0 {
+		t.Errorf("expected empty values buffer, got %q", b.String())
+	}
+
 }
diff --git a/cmd/helm/testdata/testcharts/novals/Chart.yaml b/cmd/helm/testdata/testcharts/novals/Chart.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..ce1a81da67927f021934d269ef9a6b9c186d16fd
--- /dev/null
+++ b/cmd/helm/testdata/testcharts/novals/Chart.yaml
@@ -0,0 +1,6 @@
+description: Deploy a basic Alpine Linux pod
+home: https://k8s.io/helm
+name: novals
+sources:
+- https://github.com/kubernetes/helm
+version: 0.2.0
diff --git a/cmd/helm/testdata/testcharts/novals/README.md b/cmd/helm/testdata/testcharts/novals/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..3c32de5db6abcf366c2f162edcf822e7e1eb5e5b
--- /dev/null
+++ b/cmd/helm/testdata/testcharts/novals/README.md
@@ -0,0 +1,13 @@
+#Alpine: A simple Helm chart
+
+Run a single pod of Alpine Linux.
+
+This example was generated using the command `helm create alpine`.
+
+The `templates/` directory contains a very simple pod resource with a
+couple of parameters.
+
+The `values.yaml` file contains the default values for the
+`alpine-pod.yaml` template.
+
+You can install this example using `helm install docs/examples/alpine`.
diff --git a/cmd/helm/testdata/testcharts/novals/templates/alpine-pod.yaml b/cmd/helm/testdata/testcharts/novals/templates/alpine-pod.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..c15ab8efc0fe5c15b931ef97f52540fbfa2b623f
--- /dev/null
+++ b/cmd/helm/testdata/testcharts/novals/templates/alpine-pod.yaml
@@ -0,0 +1,26 @@
+apiVersion: v1
+kind: Pod
+metadata:
+  name: "{{.Release.Name}}-{{.Values.Name}}"
+  labels:
+    # The "heritage" label is used to track which tool deployed a given chart.
+    # It is useful for admins who want to see what releases a particular tool
+    # is responsible for.
+    heritage: {{.Release.Service | quote }}
+    # The "release" convention makes it easy to tie a release to all of the
+    # Kubernetes resources that were created as part of that release.
+    release: {{.Release.Name | quote }}
+    # This makes it easy to audit chart usage.
+    chart: "{{.Chart.Name}}-{{.Chart.Version}}"
+  annotations:
+    "helm.sh/created": {{.Release.Time.Seconds | quote }}
+spec:
+  # This shows how to use a simple value. This will look for a passed-in value
+  # called restartPolicy. If it is not found, it will use the default value.
+  # {{default "Never" .restartPolicy}} is a slightly optimized version of the
+  # more conventional syntax: {{.restartPolicy | default "Never"}}
+  restartPolicy: {{default "Never" .Values.restartPolicy}}
+  containers:
+  - name: waiter
+    image: "alpine:3.3"
+    command: ["/bin/sleep","9000"]