Fix issue 146: empty tags should not force explicit document start
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 92a40fa..0726de9 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -7,6 +7,9 @@
     </properties>
     <body>
         <release version="1.11" date="in Mercurial" description="Maintenance">
+             <action dev="py4fun" type="fix"  issue="146">
+                Fix issue 146: empty tags should not force explicit document start (2012-09-29)
+             </action>
              <action dev="py4fun" type="fix"  issue="156">
                 Fix issue 156: setSkipMissingProperties fails for non-scalar values (2012-09-05)
              </action>
diff --git a/src/main/java/org/yaml/snakeyaml/emitter/Emitter.java b/src/main/java/org/yaml/snakeyaml/emitter/Emitter.java
index bda17a0..23198cf 100644
--- a/src/main/java/org/yaml/snakeyaml/emitter/Emitter.java
+++ b/src/main/java/org/yaml/snakeyaml/emitter/Emitter.java
@@ -328,7 +328,9 @@
                     }
                 }
                 boolean implicit = first && !ev.getExplicit() && !canonical
-                        && ev.getVersion() == null && ev.getTags() == null && !checkEmptyDocument();
+                        && ev.getVersion() == null
+                        && (ev.getTags() == null || ev.getTags().isEmpty())
+                        && !checkEmptyDocument();
                 if (!implicit) {
                     writeIndent();
                     writeIndicator("---", true, false, false);