diff --git a/ansi/parser_decode.go b/ansi/parser_decode.go index ba6ebd2a..0ed802cb 100644 --- a/ansi/parser_decode.go +++ b/ansi/parser_decode.go @@ -437,7 +437,11 @@ type Param int // Param returns the parameter at the given index. // It returns -1 if the parameter does not exist. func (s Param) Param() int { - return int(s) & parser.ParamMask + p := int(s) & parser.ParamMask + if p == parser.MissingParam { + return -1 + } + return p } // HasMore returns true if the parameter has more sub-parameters.