Fix invalid output of single-quoted scalars in cases when a single
quote is not escaped when preceeded by whitespaces or line breaks.
(Fix #17).
diff --git a/lib/yaml/emitter.py b/lib/yaml/emitter.py
index a34c452..95f59db 100644
--- a/lib/yaml/emitter.py
+++ b/lib/yaml/emitter.py
@@ -922,13 +922,13 @@
                             data = data.encode(self.encoding)
                         self.stream.write(data)
                         start = end
-                    if ch == u'\'':
-                        data = u'\'\''
-                        self.column += 2
-                        if self.encoding:
-                            data = data.encode(self.encoding)
-                        self.stream.write(data)
-                        start = end + 1
+            if ch == u'\'':
+                data = u'\'\''
+                self.column += 2
+                if self.encoding:
+                    data = data.encode(self.encoding)
+                self.stream.write(data)
+                start = end + 1
             if ch is not None:
                 spaces = (ch == u' ')
                 breaks = (ch in u'\n\x85\u2028\u2029')
diff --git a/tests/data/invalid-single-quote-bug.code b/tests/data/invalid-single-quote-bug.code
new file mode 100644
index 0000000..5558945
--- /dev/null
+++ b/tests/data/invalid-single-quote-bug.code
@@ -0,0 +1 @@
+["foo 'bar'", "foo\n'bar'"]
diff --git a/tests/data/invalid-single-quote-bug.data b/tests/data/invalid-single-quote-bug.data
new file mode 100644
index 0000000..76ef7ae
--- /dev/null
+++ b/tests/data/invalid-single-quote-bug.data
@@ -0,0 +1,2 @@
+- "foo 'bar'"
+- "foo\n'bar'"