Initialize various maps

This commit is contained in:
Kovid Goyal 2022-08-24 20:47:00 +05:30
parent cd54fefa99
commit 818f68ec53
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C
3 changed files with 13 additions and 2 deletions

View File

@ -151,6 +151,9 @@ type ParsedShortcut struct {
var parsed_shortcut_cache map[string]ParsedShortcut
func ParseShortcut(spec string) *ParsedShortcut {
if parsed_shortcut_cache == nil {
parsed_shortcut_cache = make(map[string]ParsedShortcut, 128)
}
if val, ok := parsed_shortcut_cache[spec]; ok {
return &val
}

View File

@ -209,7 +209,7 @@ func (self *Loop) Run() (err error) {
return nil
}
var selector Select
selector := CreateSelect(8)
selector.RegisterRead(int(signal_read_file.Fd()))
selector.RegisterRead(tty_fd)
@ -318,10 +318,10 @@ func (self *Loop) write_to_tty() error {
}
func (self *Loop) flush() error {
var selector Select
if self.controlling_term == nil {
return nil
}
selector := CreateSelect(1)
selector.RegisterWrite(self.controlling_term.Fd())
deadline := time.Now().Add(2 * time.Second)
for len(self.write_buf) > 0 {

View File

@ -13,6 +13,14 @@ type Select struct {
read_fds, write_fds, err_fds map[int]bool
}
func CreateSelect(expected_number_of_fds int) *Select {
var ans Select
ans.read_fds = make(map[int]bool, expected_number_of_fds)
ans.write_fds = make(map[int]bool, expected_number_of_fds)
ans.err_fds = make(map[int]bool, expected_number_of_fds)
return &ans
}
func (self *Select) register(fd int, fdset *map[int]bool) {
(*fdset)[fd] = true
}