Skip to content

Commit

Permalink
Fix reline on OpenBSD
Browse files Browse the repository at this point in the history
OpenBSD doesn't support tiparm, only tparm.  I'm not sure if the
two are compatible, but this at least this allows me to run irb
on OpenBSD.
  • Loading branch information
jeremyevans committed Jul 23, 2021
1 parent 7b1c750 commit 0ce2b34
Showing 1 changed file with 6 additions and 1 deletion.
7 changes: 6 additions & 1 deletion lib/reline/terminfo.rb
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,12 @@ module Reline::Terminfo
#extern 'char *tigetstr(char *capname)'
@tigetstr = Fiddle::Function.new(curses_dl['tigetstr'], [Fiddle::TYPE_VOIDP], Fiddle::TYPE_VOIDP)
#extern 'char *tiparm(const char *str, ...)'
@tiparm = Fiddle::Function.new(curses_dl['tiparm'], [Fiddle::TYPE_VOIDP, Fiddle::TYPE_VARIADIC], Fiddle::TYPE_VOIDP)
@tiparm = begin
Fiddle::Function.new(curses_dl['tiparm'], [Fiddle::TYPE_VOIDP, Fiddle::TYPE_VARIADIC], Fiddle::TYPE_VOIDP)
rescue
# OpenBSD lacks tiparm
Fiddle::Function.new(curses_dl['tparm'], [Fiddle::TYPE_VOIDP, Fiddle::TYPE_VARIADIC], Fiddle::TYPE_VOIDP)
end
# TODO: add int tigetflag(char *capname) and int tigetnum(char *capname)

def self.setupterm(term, fildes)
Expand Down

0 comments on commit 0ce2b34

Please sign in to comment.