From 8351fa8e935b13bd1b0c1088edc5eaec51d92722 Mon Sep 17 00:00:00 2001 From: obligaron Date: Tue, 14 Jan 2025 22:25:22 +0100 Subject: [PATCH] [Perl] Optimise error handling for unclosed DocStrings --- CHANGELOG.md | 1 + perl/lib/Gherkin/TokenMatcher.pm | 3 +++ 2 files changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 77a057cfb..07b82b0be 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,7 @@ This document is formatted according to the principles of [Keep A CHANGELOG](htt ### Fixed - [.NET] Fix NuGet package generation - [c] Optimise error handling for empty datatable rows +- [Perl] Optimise error handling for unclosed DocStrings ## [31.0.0] - 2025-01-29 ### Added diff --git a/perl/lib/Gherkin/TokenMatcher.pm b/perl/lib/Gherkin/TokenMatcher.pm index f69afa167..d2eac7332 100644 --- a/perl/lib/Gherkin/TokenMatcher.pm +++ b/perl/lib/Gherkin/TokenMatcher.pm @@ -238,6 +238,9 @@ sub match_StepLine { sub match_DocStringSeparator { my ( $self, $token ) = @_; + if ($token->is_eof) { + return 0; + } if ( !$self->_active_doc_string_separator ) { return $self->_match_DocStringSeparator( $token, '"""', 1 ) || $self->_match_DocStringSeparator( $token, '```', 1 );