summaryrefslogtreecommitdiffstats
path: root/ext
diff options
context:
space:
mode:
authoryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-07-26 15:21:44 +0000
committeryugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-07-26 15:21:44 +0000
commit8ec23d9f1ffe65b7373229f6af920e6b29ac8c5e (patch)
tree6cbbf1da9dff28375c772298be4f5cf7bf302ca5 /ext
parent69c083196895cfcc1d8857f8cf0d38f91d1e4bbe (diff)
merges r24171 and r24176 from trunk into ruby_1_9_1.
-- * ext/readline/readline.c (Init_readline): use rl_catch_sigwinch only when existing. * ext/readline/extconf.rb: check existance of rl_catch_sigwinch, and workaround for native Win32 readline port. -- * ext/readline/readline.c (Init_readline): rl_catch_signals does not exist on some platform like Mac OS X 10.5. * ext/readline/extconf.rb: checks existance of rl_catch_signals. git-svn-id: http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_9_1@24285 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext')
-rw-r--r--ext/readline/extconf.rb2
-rw-r--r--ext/readline/readline.c6
2 files changed, 8 insertions, 0 deletions
diff --git a/ext/readline/extconf.rb b/ext/readline/extconf.rb
index 1d74e2912..d497612fa 100644
--- a/ext/readline/extconf.rb
+++ b/ext/readline/extconf.rb
@@ -61,6 +61,8 @@ have_readline_var("rl_library_version")
have_readline_var("rl_editing_mode")
# workaround for native windows.
/mswin|bccwin|mingw/ !~ RUBY_PLATFORM && have_readline_var("rl_event_hook")
+/mswin|bccwin|mingw/ !~ RUBY_PLATFORM && have_readline_var("rl_catch_sigwinch")
+/mswin|bccwin|mingw/ !~ RUBY_PLATFORM && have_readline_var("rl_catch_signals")
have_readline_func("rl_cleanup_after_signal")
have_readline_func("rl_clear_signals")
have_readline_func("rl_vi_editing_mode")
diff --git a/ext/readline/readline.c b/ext/readline/readline.c
index 124609cf5..90eaeec39 100644
--- a/ext/readline/readline.c
+++ b/ext/readline/readline.c
@@ -1305,6 +1305,12 @@ Init_readline()
#ifdef HAVE_RL_EVENT_HOOK
rl_event_hook = readline_event;
#endif
+#ifdef HAVE_RL_CATCH_SIGNALS
+ rl_catch_signals = 0;
+#endif
+#ifdef HAVE_RL_CATCH_SIGWINCH
+ rl_catch_sigwinch = 0;
+#endif
#ifdef HAVE_RL_CLEAR_SIGNALS
rl_clear_signals();
#endif