From: nobu@... Date: 2006-08-12T09:50:47+09:00 Subject: Re: [PATCH] readline Hi, At Sat, 12 Aug 2006 01:01:02 +0900, Ondrej Bilka wrote in [ruby-core:08592]: > > * no boundary check for the Array > That array is for internal use. Unless you type record separator it doesnt crash. Then, you should not set it to an instance variable. + rb_iv_set(mReadline,"@bindings",readline_bindings) ; > > * C99 style > > * no check for the new features of libreadline > What new features do you mean? > Keybindings -looked at rl 4 and there are with copyright 1987-1992. ext/readline supports libreadline 2.1 or later. And, nitpicking, indentation is broken. > when exception in block is raised ruby crashes. Too in completion proc. > Is there some macro to catch error or must i use sth like > rb_eval_string("begin proc.call rescue > RuntimeError,ScriptError $! end")? Use rb_protect(). static VALUE proc_call(proc) VALUE proc; { return rb_funcall(proc, rb_intern("call"), 0, 0); } int state; VALUE result = rb_protect(proc_call, proc, &state). -- Nobu Nakada