[#35027] [Ruby 1.9-Bug#4352][Open] [patch] Fix eval(s, b) backtrace; make eval(s, b) consistent with eval(s) — "James M. Lawrence" <redmine@...>

Bug #4352: [patch] Fix eval(s, b) backtrace; make eval(s, b) consistent with eval(s)

16 messages 2011/02/01

[#35114] [Ruby 1.9-Bug#4373][Open] http.rb:677: [BUG] Segmentation fault — Christian Fazzini <redmine@...>

Bug #4373: http.rb:677: [BUG] Segmentation fault

59 messages 2011/02/06

[#35171] [Ruby 1.9-Bug#4386][Open] encoding: directive does not affect regex expressions — mathew murphy <redmine@...>

Bug #4386: encoding: directive does not affect regex expressions

9 messages 2011/02/09

[#35237] [Ruby 1.9-Bug#4400][Open] nested at_exit hooks run in strange order — Suraj Kurapati <redmine@...>

Bug #4400: nested at_exit hooks run in strange order

12 messages 2011/02/15

[ruby-core:35105] Re: [Ruby 1.9-Feature#4197] Improvement of the benchmark library

From: Nobuyoshi Nakada <nobu@...>
Date: 2011-02-06 02:07:12 UTC
List: ruby-core #35105
Hi,

At Sun, 6 Feb 2011 03:38:48 +0900,
Benoit Daloze wrote in [ruby-core:35103]:
> (If it is an Interrupt, I think restoring STDOUT's sync is not relevant.)

A library should not leave such globally shared states changed.

> #tap is used to return the list of the Benchmark::Tms.
> So, your patch would need to store that list in a variable, and return it.

`ensure' clause does not affect the return value.
So tap trick is not needed here.

> Also, sync would never be nil without ensure.
> This extra check shows "ensure" is complicating things in this case.
> So, I think it is overkill to use ensure here.

Consider the case interrupted during `yield'.

> On IO#sync's subject, I thought once it would be nice to have a block form of IO#sync, which could use ensure.

It's another story, please file new ticket.

-- 
Nobu Nakada

In This Thread