Use Unsafe rather than Dangerous to be consistent

This commit is contained in:
Kovid Goyal 2022-09-02 13:34:48 +05:30
parent 081390b5a2
commit a7f6105393
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C
4 changed files with 11 additions and 11 deletions

View File

@ -72,7 +72,7 @@ func do_chunked_io(io_data *rc_io_data) (serialized_response []byte, err error)
queue_escape_code := func(data []byte) { queue_escape_code := func(data []byte) {
lp.QueueWriteString(cmd_escape_code_prefix) lp.QueueWriteString(cmd_escape_code_prefix)
lp.QueueWriteBytesDangerous(data) lp.UnsafeQueueWriteBytes(data)
lp.QueueWriteString(cmd_escape_code_suffix) lp.QueueWriteString(cmd_escape_code_suffix)
} }

View File

@ -172,7 +172,7 @@ func (self *Loop) QueueWriteString(data string) IdType {
// This is dangerous as it is upto the calling code // This is dangerous as it is upto the calling code
// to ensure the data in the underlying array does not change // to ensure the data in the underlying array does not change
func (self *Loop) QueueWriteBytesDangerous(data []byte) IdType { func (self *Loop) UnsafeQueueWriteBytes(data []byte) IdType {
self.write_msg_id_counter++ self.write_msg_id_counter++
msg := write_msg{bytes: data, id: self.write_msg_id_counter} msg := write_msg{bytes: data, id: self.write_msg_id_counter}
self.add_write_to_pending_queue(&msg) self.add_write_to_pending_queue(&msg)
@ -182,7 +182,7 @@ func (self *Loop) QueueWriteBytesDangerous(data []byte) IdType {
func (self *Loop) QueueWriteBytesCopy(data []byte) IdType { func (self *Loop) QueueWriteBytesCopy(data []byte) IdType {
d := make([]byte, len(data)) d := make([]byte, len(data))
copy(d, data) copy(d, data)
return self.QueueWriteBytesDangerous(d) return self.UnsafeQueueWriteBytes(d)
} }
func (self *Loop) ExitCode() int { func (self *Loop) ExitCode() int {

View File

@ -229,7 +229,7 @@ func (self *Loop) run() (err error) {
} else { } else {
return err return err
} }
self.QueueWriteBytesDangerous(self.terminal_options.SetStateEscapeCodes()) self.QueueWriteString(self.terminal_options.SetStateEscapeCodes())
needs_reset_escape_codes := true needs_reset_escape_codes := true
defer func() { defer func() {
@ -241,7 +241,7 @@ func (self *Loop) run() (err error) {
self.QueueWriteString(finalizer) self.QueueWriteString(finalizer)
} }
if needs_reset_escape_codes { if needs_reset_escape_codes {
self.QueueWriteBytesDangerous(self.terminal_options.ResetStateEscapeCodes()) self.QueueWriteString(self.terminal_options.ResetStateEscapeCodes())
} }
// flush queued data and wait for it to be written for a timeout, then wait for writer to shutdown // flush queued data and wait for it to be written for a timeout, then wait for writer to shutdown
flush_writer(w_w, tty_write_channel, write_done_channel, self.pending_writes, 2*time.Second) flush_writer(w_w, tty_write_channel, write_done_channel, self.pending_writes, 2*time.Second)
@ -262,7 +262,7 @@ func (self *Loop) run() (err error) {
} }
self.on_SIGTSTP = func() error { self.on_SIGTSTP = func() error {
write_id := self.QueueWriteBytesDangerous(self.terminal_options.ResetStateEscapeCodes()) write_id := self.QueueWriteString(self.terminal_options.ResetStateEscapeCodes())
needs_reset_escape_codes = false needs_reset_escape_codes = false
err := self.wait_for_write_to_complete(write_id, tty_write_channel, write_done_channel, 2*time.Second) err := self.wait_for_write_to_complete(write_id, tty_write_channel, write_done_channel, 2*time.Second)
if err != nil { if err != nil {
@ -276,7 +276,7 @@ func (self *Loop) run() (err error) {
if err != nil { if err != nil {
return err return err
} }
write_id = self.QueueWriteBytesDangerous(self.terminal_options.SetStateEscapeCodes()) write_id = self.QueueWriteString(self.terminal_options.SetStateEscapeCodes())
needs_reset_escape_codes = true needs_reset_escape_codes = true
err = self.wait_for_write_to_complete(write_id, tty_write_channel, write_done_channel, 2*time.Second) err = self.wait_for_write_to_complete(write_id, tty_write_channel, write_done_channel, 2*time.Second)
if err != nil { if err != nil {

View File

@ -92,7 +92,7 @@ func reset_modes(sb *strings.Builder, modes ...Mode) {
} }
} }
func (self *TerminalStateOptions) SetStateEscapeCodes() []byte { func (self *TerminalStateOptions) SetStateEscapeCodes() string {
var sb strings.Builder var sb strings.Builder
sb.Grow(256) sb.Grow(256)
sb.WriteString(S7C1T) sb.WriteString(S7C1T)
@ -128,10 +128,10 @@ func (self *TerminalStateOptions) SetStateEscapeCodes() []byte {
sb.WriteString(MOUSE_MOVE_TRACKING.EscapeCodeToSet()) sb.WriteString(MOUSE_MOVE_TRACKING.EscapeCodeToSet())
} }
} }
return []byte(sb.String()) return sb.String()
} }
func (self *TerminalStateOptions) ResetStateEscapeCodes() []byte { func (self *TerminalStateOptions) ResetStateEscapeCodes() string {
var sb strings.Builder var sb strings.Builder
sb.Grow(64) sb.Grow(64)
sb.WriteString("\033[<u") sb.WriteString("\033[<u")
@ -145,5 +145,5 @@ func (self *TerminalStateOptions) ResetStateEscapeCodes() []byte {
sb.WriteString(RESTORE_CURSOR) sb.WriteString(RESTORE_CURSOR)
} }
sb.WriteString(RESTORE_COLORS) sb.WriteString(RESTORE_COLORS)
return []byte(sb.String()) return sb.String()
} }