diff --git a/mapstructure.go b/mapstructure.go
index 8729e96..f953a8b 100644
--- a/mapstructure.go
+++ b/mapstructure.go
@@ -48,7 +48,7 @@
 		return errors.New("val must be an addressable struct")
 	}
 
-	return decode("root", m, val)
+	return decode("", m, val)
 }
 
 // Decodes an unknown data type into a specific reflection value.
@@ -236,7 +236,12 @@
 			panic("field is not valid")
 		}
 
-		fieldName = fmt.Sprintf("%s.%s", name, fieldName)
+		// If the name is empty string, then we're at the root, and we
+		// don't dot-join the fields.
+		if name != "" {
+			fieldName = fmt.Sprintf("%s.%s", name, fieldName)
+		}
+
 		if err := decode(fieldName, rawMapVal.Interface(), field); err != nil {
 			errors = appendErrors(errors, err)
 		}
diff --git a/mapstructure_examples_test.go b/mapstructure_examples_test.go
index 847074a..e7449c5 100644
--- a/mapstructure_examples_test.go
+++ b/mapstructure_examples_test.go
@@ -55,9 +55,9 @@
 	// Output:
 	// 5 error(s) decoding:
 	//
-	// * 'root.Name' expected type 'string', got 'int'
-	// * 'root.Age' expected type 'int', got 'string'
-	// * 'root.Emails[0]' expected type 'string', got 'int'
-	// * 'root.Emails[1]' expected type 'string', got 'int'
-	// * 'root.Emails[2]' expected type 'string', got 'int'
+	// * 'Name' expected type 'string', got 'int'
+	// * 'Age' expected type 'int', got 'string'
+	// * 'Emails[0]' expected type 'string', got 'int'
+	// * 'Emails[1]' expected type 'string', got 'int'
+	// * 'Emails[2]' expected type 'string', got 'int'
 }
diff --git a/mapstructure_test.go b/mapstructure_test.go
index 713e621..c417762 100644
--- a/mapstructure_test.go
+++ b/mapstructure_test.go
@@ -293,7 +293,7 @@
 		t.FailNow()
 	}
 
-	if derr.Errors[0] != "'root.Vstring' expected type 'string', got 'int'" {
+	if derr.Errors[0] != "'Vstring' expected type 'string', got 'int'" {
 		t.Errorf("got unexpected error: %s", err)
 	}
 }
