[#23657] [Bug #1550] String#lstrip! raises RuntimeError on Frozen String Despite Making No Changes — Run Paint Run Run <redmine@...>

Bug #1550: String#lstrip! raises RuntimeError on Frozen String Despite Making No Changes

13 messages 2009/06/01

[#23729] [Bug #1583] Time + String no Longer Raises TypeError? — Run Paint Run Run <redmine@...>

Bug #1583: Time + String no Longer Raises TypeError?

14 messages 2009/06/05

[#23770] [Bug #1595] rake unusable on windows install — Robert Gonzalez <redmine@...>

Bug #1595: rake unusable on windows install

10 messages 2009/06/09

[#23869] [Bug #1640] [PATCH] Documentation for the Rational Class — Run Paint Run Run <redmine@...>

Bug #1640: [PATCH] Documentation for the Rational Class

12 messages 2009/06/16

[#23903] [Bug #1648] Rational#div Raises NoMethodError for Invalid Argument — Run Paint Run Run <redmine@...>

Bug #1648: Rational#div Raises NoMethodError for Invalid Argument

9 messages 2009/06/17

[#23977] [ANN] meeting log of RubyDeveloperKaigi20090622 — "Yugui (Yuki Sonoda)" <yugui@...>

Hi,

41 messages 2009/06/23
[#23979] Re: [ANN] meeting log of RubyDeveloperKaigi20090622 — Run Paint Run Run <runrun@...> 2009/06/23

Thanks for the update. :-)

[#24173] Re: [ANN] meeting log of RubyDeveloperKaigi20090622 — "NARUSE, Yui" <naruse@...> 2009/07/07

Sorry for late response,

[#24174] Re: [ANN] meeting log of RubyDeveloperKaigi20090622 — Luis Lavena <luislavena@...> 2009/07/07

On Tue, Jul 7, 2009 at 12:12 AM, NARUSE, Yui<naruse@airemix.jp> wrote:

[#24242] Re: [ANN] meeting log of RubyDeveloperKaigi20090622 — Charles Oliver Nutter <headius@...> 2009/07/09

On Mon, Jul 6, 2009 at 10:18 PM, Luis Lavena<luislavena@gmail.com> wrote:

[#24010] [Bug #1685] Some windows unicode path issues remain — B Kelly <redmine@...>

Bug #1685: Some windows unicode path issues remain

26 messages 2009/06/24
[#29189] [Bug #1685] Some windows unicode path issues remain — Yuki Sonoda <redmine@...> 2010/04/01

Issue #1685 has been updated by Yuki Sonoda.

[#29200] Re: [Bug #1685] Some windows unicode path issues remain — Bill Kelly <billk@...> 2010/04/01

Yuki Sonoda wrote:

[#29892] Re: [Bug #1685] Some windows unicode path issues remain — Bill Kelly <billk@...> 2010/04/29

Hi,

[#24058] [Bug #1696] http downloads are unuseably slow — Steven Hartland <redmine@...>

Bug #1696: http downloads are unuseably slow

19 messages 2009/06/27

[#24063] [Feature #1697] Object#<=> — Marc-Andre Lafortune <redmine@...>

Feature #1697: Object#<=>

15 messages 2009/06/28

[ruby-core:23765] Re: [Bug #977] caller for all threads patch

From: Rocky Bernstein <rockyb@...>
Date: 2009-06-09 01:07:50 UTC
List: ruby-core #23765
I'm not sure I understand. The part I was responding to is the code in the
patch underlined with !!! listed below.

> +VALUE rb_thread_backtrace(VALUE thval, int lev);
> +
> +static VALUE
> +rb_thread_caller_m(int argc, VALUE *argv, VALUE thval)
> +{
> +    VALUE level;
> +    int lev;
> +
> +    rb_scan_args(argc, argv, "01", &level);
> +
> +    if (NIL_P(level))
> +     lev = 1;
> +    else
> +     lev = NUM2INT(level);
> +    if (lev < 0)
> +     rb_raise(rb_eArgError, "negative level (%d)", lev);

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
....
      rb_define_method(rb_cThread, "group", rb_thread_group, 0);
> +    rb_define_method(rb_cThread, "caller", rb_thread_caller_m, -1);

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ called caller, no?

I was suggesting that rather than raise an error here, treat this like array
indexes do and basically use size - level. (By the way,  also suggests it
might be cool to add some sort of length or size function.)

I guess I missed something, but what?


2009/6/8 SASADA Koichi <ko1@atdot.net>

> Rocky Bernstein wrote::
> > One thing I think might be cool is rather than raising an error for a
> > negative Fixnum value is to count from the other end. So caller(-1) is
> the
> > least-recent call.
> >
> > If you want me to try my hand at extending the below, let me know.
>
> Check the following code.
>
> >>>  VALUE
> >>> +rb_thread_backtrace(VALUE thval, int lev)
> >>> +{
> >>> +    rb_thread_t *th;
> >>> +    GetThreadPtr(thval, th);
> >>> +
> >>> +    if (th->status != THREAD_KILLED && GET_THREAD() != th) {
> >>> +     lev--;
> >>> +    }
> >>> +
> >>> +    return vm_backtrace(th, lev);
> >>> +}
>
> --
> // SASADA Koichi at atdot dot net
>
>

In This Thread