summaryrefslogtreecommitdiff
path: root/signal.c
AgeCommit message (Collapse)Author
2008-12-04* ext/curses/curses.c (window_getch): avoid ISPRINT() macro whichmatz
has an issue with OpenSolaris. [ruby-core:20189] * signal.c (ruby_signal): EINVAL from sigaction(2) is not a bug. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20482 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-01 * signal.c (register_sigaltstack): no need to define on non-sigaltstackusa
platform. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-27* signal.c (register_sigaltstack): stores alt stack for debugnobu
purpose. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20375 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-27* signal.c (ruby_sigaction_t): added.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20374 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-27* signal.c (ALT_STACK_SIZE): default minimum size is insufficientnobu
for method calls. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20373 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-27* gc.c (ruby_stack_check): no check if using sigaltstack.nobu
* signal.c (register_sigaltstack): minimum size is insufficient for method calls. * signal.c (sigsegv): handles stack overflow if possible. * thread.c (ruby_thread_stack_overflow): helper function to raise sysstack_error. * thread_pthread.c (ruby_stack_overflowed_p): checks for stack overflow. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20372 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-24* signal.c (register_sigaltstack): should not add externalmatz
variable (with some cosmetic changes). [ruby-dev:37158] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20341 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-23* signal.c (default_handler, Init_signal): compile error ifyugui
USE_SIGALTSTACK is not defined. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20334 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-23* signal.c (ALT_STACK_SIZE): 4KB is not enough on Mac OS X.yugui
Uses SIGSTKSZ. this fixes [ruby-core:20040]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-11-21* signal.c (register_sigaltstack): use alternative stack formatz
SIGSEGV to avoid uncaught stack overflow. based on a patch from Hiro Yoshioka <hyoshiok at miraclelinux.com> in [ruby-dev:37134]. [ruby-dev:36993] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20293 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-24* signal.c (signal_buff): made static. a patch by Tadashi Saitonobu
<shiba AT mail2.accsnet.ne.jp> at [ruby-dev:36915] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-04* dln.c: Ruby no longer supports MacOS 9 or before.yugui
* eval.c: ditto. * eval_intern.h: ditto. * ext/extmk.rb: ditto. * ext/tk/sample/tkextlib/treectrl/demo.rb: ditto. * ext/tk/stubs.c: ditto. * file.c: ditto. * hash.c: ditto. * include/ruby/defines.h: ditto. * ruby.c: ditto. * signal.c: ditto. * vm_core.h: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19680 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-04* djgpp/GNUmakefile.in: removed. Ruby no longer supports djgpp.yugui
* djgpp/README.djgpp: ditto. * djgpp/config.hin: ditto. * djgpp/config.sed: ditto. * djgpp/configure.bat: ditto. * djgpp/mkver.sed: ditto. * ext/Setup.dj: ditto. * dln.c: removed djgpp supports. * file.c: ditto. * gc.c: ditto. * io.c: ditto. * process.c: ditto. * ruby.c: ditto. * signal.c: ditto. * util.c: ditto. * vm_core.h: ditto. * lib/fileutils.rb: ditto. * lib/mkmf.rb: ditto. * ext/socket/socket.c: ditto. * test/fileutils/test_fileutils.rb: ditto. * test/ruby/test_env.rb: ditto. * test/ruby/test_path.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19678 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-23* include/ruby/node.h, node.h: move node.h from include path.ko1
This change stop to install node.h beacuase of saving ABI (node.h will be changed. Extensions should not depends on this file). * blockinlining.c, class.c, compile.c, debug.h, enum.c, gc.c, iseq.c, parse.y, ruby.c, signal.c, variable.c, vm.c, vm_core.h, vm_dump.c: ditto. * ext/ripper/depend: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-23* signal.c (signal_exec): execute rb_eval_cmd() directly.ko1
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-23* signal.c (signal_exec): fix to use rb_proc_call().ko1
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19488 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-04* vm_core.h (struct rb_vm_struct): replaced signal staff with trapnobu
staff. * signal.c (signal_buff): per process resouce now. * signal.c (trap_list): moved to VM. * signal.c (rb_get_next_signal): reverted. * signal.c (rb_trap_exit): trap_pending_list was no longer used. * thread.c (timer_thread_function): delivers buffered per-process signals to each VMs. * vm.c (rb_vm_mark): marks trap_list. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19119 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-03* include/ruby/signal.h: removed.ko1
* common.mk, class.c, eval.c, eval_intern.h, file.c, gc.c, hash.c, io.c, process.c, signal.c: vm_core.h: ditto. Some unused external global variables are also removed. (rb_prohibit_interrupt, rb_trap_immediate, rb_trap_pending, rb_thread_critical) * ext/openssl/ossl_ssl.c, ext/openssl/ossl_x509store.c, ext/readline/readline.c, ext/socket/depend, ext/socket/socket.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19080 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-16* signal.c (signal_exec, trap_handler): trap accepts a string asnobu
command. [ruby-dev:35533] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18084 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-13* gc.c (ruby_gc_stress): moved to rb_objspace_t.nobu
* gc.c (gc_stress_get, gc_stress_set): VM local attribute. * signal.c (sigsegv): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-10update Signal.list rdoc.akr
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17087 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-30* signal.c (esignal_signo): fix SignalException#signo which returnedmame
nil absolutely. * signal.c (esignal_init): always prepend "SIG" to a string that is returned by SignalException#signm. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16706 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-29* signal.c (esignal_init): handle a non-integer argument correctly,mame
allowing SignalException.new(:INT). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16688 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-26* io.c, signal.c, thread.c, thread_win32.c, include/ruby/intern.h:nobu
suppress warnings. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16204 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-26* error.c (builtin_types), signal.c (siglist), st.c (primes),nobu
struct.c (ref_func), time.c (months): constified. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16199 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-26* signal.c: sorry, commit miss.usa
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15606 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-26* 2008-02-26usa
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15605 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-14* configure.in (sigsetmask): check when signal semantics is not POSIX.nobu
* signal.c (USE_TRAP_MASK): set true if sigprocmask or sigsetmask is available. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-06* $Date$ keyword removed to avoid inclusion of locale dependentakr
string. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-20* insnhelper.ci, vm.c, vm_core.h: change interface ofko1
vm_invoke_block() to specify block ptr. [ruby-talk:266422] * cont.c, eval_jump.ci, insns.def, proc.c, signal.c, thread.c: apply above change. * bootstraptest/test_knownbug.rb: move fixed bug. * bootstraptest/test_block.rb: ditto. and add a test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14356 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-08* signal.c (posix_signal): return value.akr
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14137 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-30* signal.c (ruby_signal): use SA_SIGINFO if available.matz
[ ruby-Patches-6418 ] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14057 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-11-30* signal.c (trap_signm): SIGVTALRM no longer used for greenmatz
thread. [ruby-talk:281318] * signal.c (ruby_sig_finalize): do not install SIG_DFL handler if previous handler is sighandler(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14056 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-09-28* vm_core.h (rb_vm_struct): fix typo: bufferd -> buffered.matz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13546 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-25* encoding.c: provide basic features for M17N.matz
* parse.y: encoding aware parsing. * parse.y (pragma_encoding): encoding specification pragma. * parse.y (rb_intern3): encoding specified symbols. * string.c (rb_str_length): length based on characters. for older behavior, bytesize method added. * string.c (rb_str_index_m): index based on characters. rindex as well. * string.c (succ_char): encoding aware succeeding string. * string.c (rb_str_reverse): reverse based on characters. * string.c (rb_str_inspect): encoding aware string description. * string.c (rb_str_upcase_bang): encoding aware case conversion. downcase, capitalize, swapcase as well. * string.c (rb_str_tr_bang): tr based on characters. delete, squeeze, tr_s, count as well. * string.c (rb_str_split_m): split based on characters. * string.c (rb_str_each_line): encoding aware each_line. * string.c (rb_str_each_char): added. iteration based on characters. * string.c (rb_str_strip_bang): encoding aware whitespace stripping. lstrip, rstrip as well. * string.c (rb_str_justify): encoding aware justifying (ljust, rjust, center). * string.c (str_encoding): get encoding attribute from a string. * re.c (rb_reg_initialize): encoding aware regular expression * sprintf.c (rb_str_format): formatting (i.e. length count) based on characters. * io.c (rb_io_getc): getc to return one-character string. for older behavior, getbyte method added. * ext/stringio/stringio.c (strio_getc): ditto. * io.c (rb_io_ungetc): allow pushing arbitrary string at the current reading point. * ext/stringio/stringio.c (strio_ungetc): ditto. * ext/strscan/strscan.c: encoding support. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-12* blockinlining.c: remove "yarv" prefix.ko1
* array.c, numeric.c: ditto. * insnhelper.ci, insns.def, vm_evalbody.ci: ditto. * yarvcore.c: removed. * yarvcore.h: renamed to core.h. * cont.c, debug.c, error.c, process.c, signal.c : ditto. * ext/probeprofiler/probeprofiler.c: ditto. * id.c, id.h: added. * inits.c: ditto. * compile.c: rename internal functions. * compile.h: fix debug flag. * eval.c, object.c, vm.c: remove ruby_top_self. use rb_vm_top_self() instead. * eval_intern.h, eval_load: ditto. * gc.c: rename yarv_machine_stack_mark() to rb_gc_mark_machine_stack(). * insnhelper.h: remove unused macros. * iseq.c: add iseq_compile() to create iseq object from source string. * proc.c: rename a internal function. * template/insns.inc.tmpl: remove YARV prefix. * thread.c: * vm.c (rb_iseq_eval): added. * vm.c: move some functions from yarvcore.c. * vm_dump.c: fix to remove compiler warning. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-29* debug.c (ruby_set_debug_option): separated from main.c.nobu
* gc.c (ruby_gc_stress), signal.c (ruby_enable_coredump): prefixed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12665 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-29refine previous change.akr
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12654 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-28debug environment variable refined.akr
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12651 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-24* vm.c: some refactoring.ko1
* rename th_* to vm_*. * remove unused variables functions. * add prototypes. * blockinlining.c, compile.c, cont.c, eval.c, eval_intern.h, eval_jump.h, eval_load.c, inits.c, insns.def, iseq.c, parse.y, proc.c, process.c, signal.c, thread.c, vm.c, vm_dump.c, vm_evalbody.ci, yarvcore.c, yarvcore.h: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12603 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-17* signal.c (sigsegv): clear gc_stress flag on SEGV.ko1
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-15fix trap's doc.akr
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12556 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-15* signal.c (default_handler): func argument removed.akr
(trap_handler): support SYSTEM_DEFAULT. call default_handler internally. (sig_trap): don't call default_handler. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-15* signal.c (trap_handler): trap("SIGSEGV", "DEFAULT") may cause wrongakr
trap error because SIG_DFL may be zero. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-15re-introduce RUBY_GC_STRESS test removed by YARV.akr
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12549 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-10* include/ruby: moved public headers.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-29* signal.c (interrupt_init): needs to pass nil for Interrupt.nobu
[ruby-core:11038] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12407 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-05-29* signal.c (trap): fixed segfaults. [ruby-dev:30830]nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12406 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-04-19* eval.c (ruby_cleanup): re-send signal. [ruby-dev:30516]nobu
* eval_error.h (error_handle): no message when exiting by signal. * intern.h (rb_thread_signal_raise, ruby_default_signal): prototypes. * signal.c (esignal_init): takes a signal number and an optional signal name. * signal.c (interrupt_init): pass SIGINT always. * signal.c (ruby_default_signal): invoke system default signal handler. * signal.c (rb_f_kill): use NUM2PIDT instead of NUM2INT. * signal.c (rb_signal_exec, trap): handle SIGTERM. [ruby-dev:30505] * thread.c (rb_thread_signal_raise): now takes signal number instead of signal name. * thread.c (rb_thread_signal_exit): since rb_make_exception() calls #exception method, rb_class_new_instance() is not needed here. * yarvcore.h (struct rb_vm_struct), eval_jump.h (terminate_process): exit_code is no longer stored in VM. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12199 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-25* ruby.h: define RUBY_VM macro and remove NATIVETHREAD* macros.ko1
* intern.h: ditto. * signal.c (posix_signal): remove unused function posix_nativethread_signal(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e