diff -u b/lib/Drupal/pgn/Serializer/Encoder/PgnEncoder.php b/lib/Drupal/pgn/Serializer/Encoder/PgnEncoder.php --- b/lib/Drupal/pgn/Serializer/Encoder/PgnEncoder.php +++ b/lib/Drupal/pgn/Serializer/Encoder/PgnEncoder.php @@ -25,7 +25,7 @@ * {@inheritdoc} */ public function encode($data, $format, array $context = array()) { - $pgn = ''; + $pgn = array(); foreach ($data as $game) { $movetext = ''; foreach($game['movetext'] as $number => $move) { @@ -40,10 +40,10 @@ foreach ($game['tags'] as $name => $value) { $tag_pair_section[] = '[' . $name . ' "' . $value . '"]'; } - $pgn .= implode("\n", $tag_pair_section) . "\n\n$movetext\n"; + $pgn[] = implode("\n", $tag_pair_section) . "\n\n$movetext\n"; } - return $pgn; + return implode("\n", $pgn); } /** only in patch2: unchanged: --- a/tests/e4f5Dh5.pgn +++ b/tests/e4f5Dh5.pgn @@ -7,3 +7,13 @@ [Result "*"] 1. e4 f5 2. Qh5+ * + +[Event "?"] +[Site "?"] +[Date "????.??.??"] +[Round "?"] +[White "?"] +[Black "?"] +[Result "*"] + +1. e4 f5 2. Qh5+ *