diff --git a/encode.go b/encode.go
index a06c4d0..c4aee87 100644
--- a/encode.go
+++ b/encode.go
@@ -250,8 +250,7 @@
 	e.emitScalar("null", "", "", C.YAML_PLAIN_SCALAR_STYLE)
 }
 
-func (e *encoder) emitScalar(value, anchor, tag string,
-	style C.yaml_scalar_style_t) {
+func (e *encoder) emitScalar(value, anchor, tag string, style C.yaml_scalar_style_t) {
 	var canchor, ctag, cvalue *C.yaml_char_t
 	var cimplicit C.int
 	var free func()
diff --git a/goyaml.go b/goyaml.go
index 4bf3c43..518ddeb 100644
--- a/goyaml.go
+++ b/goyaml.go
@@ -256,14 +256,12 @@
 	switch v.Kind() {
 	case reflect.String:
 		return len(v.String()) == 0
-	case reflect.Interface:
+	case reflect.Interface, reflect.Ptr:
 		return v.IsNil()
 	case reflect.Slice:
 		return v.Len() == 0
 	case reflect.Map:
 		return v.Len() == 0
-	case reflect.Ptr:
-		return v.IsNil()
 	case reflect.Int, reflect.Int8, reflect.Int16, reflect.Int32, reflect.Int64:
 		return v.Int() == 0
 	case reflect.Uint, reflect.Uint8, reflect.Uint16, reflect.Uint32, reflect.Uint64, reflect.Uintptr:
