From 6228c0439697d2a42f179b45f395baaa238f6f72 Mon Sep 17 00:00:00 2001 From: ttate Date: Fri, 23 Nov 2001 09:53:54 +0000 Subject: Curses::getstr and Window#getstr use getnstr() and wgetnstr() if they are available. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1855 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/curses/curses.c | 12 ++++++++++-- ext/curses/extconf.rb | 2 +- 2 files changed, 11 insertions(+), 3 deletions(-) (limited to 'ext/curses') diff --git a/ext/curses/curses.c b/ext/curses/curses.c index bb40c2c35f..5959445f8e 100644 --- a/ext/curses/curses.c +++ b/ext/curses/curses.c @@ -7,10 +7,10 @@ * modified by Yukihiro Matsumoto (matz@netlab.co.jp), * Toki Yoshinori, * Hitoshi Takahashi, - * and Takaaki Tateishi (ttate@jaist.ac.jp) + * and Takaaki Tateishi (ttate@kt.jaist.ac.jp) * * maintainers: - * - Takaaki Tateishi (ttate@jaist.ac.jp) + * - Takaaki Tateishi (ttate@kt.jaist.ac.jp) */ #ifdef HAVE_NCURSES_H @@ -396,7 +396,11 @@ curses_getstr(obj) char rtn[1024]; /* This should be big enough.. I hope */ rb_read_check(stdin); +#ifdef GETNSTR + getnstr(rtn,1023); +#else getstr(rtn); +#endif return rb_tainted_str_new2(rtn); } @@ -1020,7 +1024,11 @@ window_getstr(obj) GetWINDOW(obj, winp); rb_read_check(stdin); +#ifdef WGETNSTR + wgetnstr(winp->window, rtn, 1023); +#else wgetstr(winp->window, rtn); +#endif return rb_tainted_str_new2(rtn); } diff --git a/ext/curses/extconf.rb b/ext/curses/extconf.rb index ccd6ff515e..0e824e3ca8 100644 --- a/ext/curses/extconf.rb +++ b/ext/curses/extconf.rb @@ -20,7 +20,7 @@ else end if make - for f in %w(isendwin ungetch beep doupdate flash deleteln wdeleteln keypad keyname init_color) + for f in %w(isendwin ungetch beep getnstr wgetnstr doupdate flash deleteln wdeleteln keypad keyname init_color) have_func(f) end create_makefile("curses") -- cgit v1.2.3