Shifts out the G1 character set with the \x18 cancel control code.
Shifts out the G1 character set with the \x18 cancel control code.

If the cancel \x18 conttrol code is sent, makes sure to also shift out
the G1 character set if it was shifted in.  This fixes an issue with
printing binary content on CoreOS and CentOS machines, where they would
sent a \x0e control code, but instead of sending a closing \x0f
they would send \x18 to cancel everything.

Change-Id: If7c0f5fe2d929ee71f6975bffc6a77fd83a9a9a5
Reviewed-on: https://chromium-review.googlesource.com/271322
Reviewed-by: Rob Ginda <4419ac4e35d191308e944202d542b192188656d1@chromium.org>
Tested-by: Rob Ginda <4419ac4e35d191308e944202d542b192188656d1@chromium.org>

chromium/hterm,chromium/hterm,chromium/hterm,chromium/hterm