Skip to content

Comments

Handle hex escapes and other variable length escape sequences#4

Open
levinalex wants to merge 2 commits intodeoxxa:masterfrom
levinalex:handle-hex-escapes
Open

Handle hex escapes and other variable length escape sequences#4
levinalex wants to merge 2 commits intodeoxxa:masterfrom
levinalex:handle-hex-escapes

Conversation

@levinalex
Copy link

@levinalex levinalex commented Oct 11, 2018

HL7v2 messages can contain variable-length hex escapes, which are encoded as \....\ like for example in the form of Hex-Escapes (\Xabdce12\) This extends message parsing so these escape sequences are forwarded into the parsed message unchanged.

In current master, the code assumes that all escape sequences are fixed-length, which e.g. parses things like Foo\X1234\ as Foo\X1234 (eating the trailing escape character in the process)

This MR silently fixes cases where escape sequences are unterminated by inserting a trailing escape character at the end when required. Not sure this is better than returning an error in that case.

Fixes parsing of HL7 Hex-Escape sequences (\X....\) and other variable-length escape sequences that are not handled by the parser code.

This will break with an array overflow in case escape sequences are not paired correctly.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants