[#29911] [Bug #3231] Digest Does Not Build — Charlie Savage <redmine@...>

Bug #3231: Digest Does Not Build

19 messages 2010/05/01

[#29920] [Feature #3232] Loops (while/until) should return last statement value if any, like if/unless — Benoit Daloze <redmine@...>

Feature #3232: Loops (while/until) should return last statement value if any, like if/unless

9 messages 2010/05/01

[#29997] years in Time.utc — Xavier Noria <fxn@...>

Does anyone have a precise statement about the years supported by

13 messages 2010/05/04

[#30010] [Bug #3248] extension 'tk' is finding tclConfig.sh and tkConfig.sh incorrectly — Luis Lavena <redmine@...>

Bug #3248: extension 'tk' is finding tclConfig.sh and tkConfig.sh incorrectly

9 messages 2010/05/05

[#30226] [Bug #3288] Segmentation fault - activesupport-3.0.0.beta3/lib/active_support/callbacks.rb:88 — Szymon Jeż <redmine@...>

Bug #3288: Segmentation fault - activesupport-3.0.0.beta3/lib/active_support/callbacks.rb:88

10 messages 2010/05/13

[#30358] tk doesn't startup well in doze — Roger Pack <rogerdpack2@...>

Currently with 1.9.x and tk 8.5,the following occurs

12 messages 2010/05/22

[ruby-core:30121] [Bug #1131] String#unpack("V") does not work correctly is linux on s390x

From: Klaus Kämpf <redmine@...>
Date: 2010-05-09 18:48:23 UTC
List: ruby-core #30121
Issue #1131 has been updated by Klaus K辰mpf.

File bnc603914_string_unpack.patch added

unpack("V") broken on all systems with sizeof(long) == 8, ppc64 is also affected.

It is caused by the following code (pack.c, pack_unpack(), case 'V')

                unsigned long tmp = 0;
                memcpy(OFF32(&tmp), s, NATINT_LEN(long,4));
                s += NATINT_LEN(long,4);
                rb_ary_push(ary, ULONG2NUM(vtohl(tmp)));

The use of OFF32 in memcpy copies the int32 value into the correct half of the 8-byte target value (tmp).
The call to vtohl() swaps the complete 8-byte value (acting like swap64), thereby bringing the 4 bytes of the int32
into the right endianess but also into the wrong half of the 8-byte target.

The fix is to either drop of OFF32 call or to replace the vtohl with swap32. I choose the latter since swap32
 is faster than vtohl.

Proposed patch attached
----------------------------------------
http://redmine.ruby-lang.org/issues/show/1131

----------------------------------------
http://redmine.ruby-lang.org

In This Thread