[#13087] importing forwardable — "Akinori MUSHA" <knu@...>

 石塚さんの forwardable.rb を標準添付ライブラリにするべく、

11 messages 2001/05/02

[#13169] SizedQueue#pop causes deadlock — "Okada Jun" <yun@...>

岡田です。

18 messages 2001/05/13
[#13171] Re: SizedQueue#pop causes deadlock — "Akinori MUSHA" <knu@...> 2001/05/13

At Sun, 13 May 2001 14:11:18 +0900,

[#13176] Re: SizedQueue#pop causes deadlock — matz@... (Yukihiro Matsumoto) 2001/05/13

まつもと ゆきひろです

[#13177] Re: SizedQueue#pop causes deadlock — "Akinori MUSHA" <knu@...> 2001/05/13

At Mon, 14 May 2001 00:24:45 +0900,

[#13187] Re: SizedQueue#pop causes deadlock — matz@... (Yukihiro Matsumoto) 2001/05/13

まつもと ゆきひろです

[#13202] Re: [ruby-list:29672] Re: Enumerator — "Akinori MUSHA" <knu@...>

 ruby-dev に移ります。

26 messages 2001/05/15
[#13208] Re: [ruby-list:29672] Re: Enumerator — matz@... (Yukihiro Matsumoto) 2001/05/15

まつもと ゆきひろです

[#13259] Enumerator -- Round 2 — "Akinori MUSHA" <knu@...>

 もう一度、 Enumerable/Enumerator についてみなさんのご意見を

29 messages 2001/05/20
[#13260] Re: Enumerator -- Round 2 — matz@... (Yukihiro Matsumoto) 2001/05/20

まつもと ゆきひろです

[#13265] Re: Enumerator -- Round 2 — "Akinori MUSHA" <knu@...> 2001/05/21

At Mon, 21 May 2001 06:04:32 +0900,

[#13268] Re: Enumerator -- Round 2 — Shin-ichiro HARA <sinara@...> 2001/05/21

原です。

[#13270] Re: Enumerator -- Round 2 — "Akinori MUSHA" <knu@...> 2001/05/21

At Mon, 21 May 2001 15:00:11 +0900,

[#13289] Re: Enumerator -- Round 2 — Shin-ichiro HARA <sinara@...> 2001/05/22

原です。

[#13290] Re: Enumerator -- Round 2 — "Akinori MUSHA" <knu@...> 2001/05/22

At Tue, 22 May 2001 19:02:10 +0900,

[#13291] Re: Enumerator -- Round 2 — Shin-ichiro HARA <sinara@...> 2001/05/22

原です。

[#13293] Re: Enumerator -- Round 2 — "Akinori MUSHA" <knu@...> 2001/05/22

At Tue, 22 May 2001 20:57:02 +0900,

[#13305] Re: Enumerator -- Round 2 — Shin-ichiro HARA <sinara@...> 2001/05/24

原です。

[#13322] Re: Enumerator -- Round 2 — "Akinori MUSHA" <knu@...> 2001/05/24

At Thu, 24 May 2001 15:44:14 +0900,

[#13277] ext/dbm in ruby 1.7 — Kazuhiro NISHIYAMA <zn@...>

ruby 1.7のext/dbmですが、

16 messages 2001/05/21
[#13280] Re: ext/dbm in ruby 1.7 — matz@... (Yukihiro Matsumoto) 2001/05/21

まつもと ゆきひろです

[#13292] Integer("X") rescue -1 が parse error — YASUI Kentarow <kenyasui@...>

安井です。

18 messages 2001/05/22
[#13294] Re: Integer("X") rescue -1 が parse error — matz@... (Yukihiro Matsumoto) 2001/05/22

まつもと ゆきひろです

[#13295] Re: Integer("X") rescue -1 が parse error — "Akinori MUSHA" <knu@...> 2001/05/23

At Wed, 23 May 2001 08:59:50 +0900,

[#13300] 1.6.4 preview3 (Re: Re: Integer("X") rescue -1 が parse error) — matz@... (Yukihiro Matsumoto) 2001/05/24

[#13304] Re: 1.6.4 preview3 (Re: Re: Integer("X") rescue -1 が parse error) — "Akinori MUSHA" <knu@...> 2001/05/24

At Thu, 24 May 2001 14:15:04 +0900,

[#13428] mswin32/ming32 system patch (experimental) — "U.Nakamura" <usa@...>

こんにちは、なかむら(う)です。

19 messages 2001/05/31
[#13435] Re: mswin32/ming32 system patch (experimental) — nobu.nakada@... 2001/06/01

なかだです。

[#13442] Re: mswin32/ming32 system patch (experimental) — "U.Nakamura" <usa@...> 2001/06/01

こんにちは、なかむら(う)です。

[#13446] Re: mswin32/ming32 system patch (experimental) — "U.Nakamura" <usa@...> 2001/06/02

こんにちは、なかむら(う)です。

[#13450] Re: mswin32/ming32 system patch (experimental) — nobu.nakada@... 2001/06/04

なかだです。

[ruby-dev:13095] Re: patch for ext/gdbm

From: Koji Arai <JCA02266@...>
Date: 2001-05-03 08:41:47 UTC
List: ruby-dev #13095
新井です。

パッチの小だしばかりして大変申し訳ないのですが・・・

GDBM#indexes が存在しないキーに対してゴミを返すようです。

  def test_indexes
    keys = %w(foo bar baz)
    values = %w(FOO BAR BAZ)
    @gdbm[keys[0]], @gdbm[keys[1]], @gdbm[keys[2]] = values

    assert_equals(values.reverse, @gdbm.indexes(*keys.reverse))
    assert_equals([nil], @gdbm.indexes("foobarbaz"))
  end

  =>TestGDBM#test_indexes F.
    Time: 0.043805
    FAILURES!!!
    Test Results:
     Run: 1/1(6 asserts) Failures: 1 Errors: 0
    Failures: 1
    testgdbm.rb:287:in `test_indexes'(TestGDBM): expected:<[nil]> but was:<[0]> (RUNIT::AssertionFailedError)
	    from testgdbm.rb:638


Index: ext/gdbm/gdbm.c
===================================================================
RCS file: /src/ruby/ext/gdbm/gdbm.c,v
retrieving revision 1.15
diff -u -p -u -r1.15 gdbm.c
--- ext/gdbm/gdbm.c	2001/05/02 04:22:18	1.15
+++ ext/gdbm/gdbm.c	2001/05/03 08:24:52
@@ -185,6 +185,18 @@ rb_gdbm_fetch2(dbm, keystr)
 }
 
 static VALUE
+rb_gdbm_fetch3(obj, keystr)
+    VALUE obj, keystr;
+{
+    struct dbmdata *dbmp;
+    GDBM_FILE dbm;
+
+    GetDBM(obj, dbmp);
+    dbm = dbmp->di_dbm;
+    return rb_gdbm_fetch2(dbm, keystr);
+}
+
+static VALUE
 rb_gdbm_firstkey(dbm)
     GDBM_FILE dbm;
 {
@@ -235,21 +247,12 @@ static VALUE
 fgdbm_fetch(obj, keystr, ifnone)
     VALUE obj, keystr, ifnone;
 {
-    datum key;
-    struct dbmdata *dbmp;
-    GDBM_FILE dbm;
     VALUE valstr;
 
-    StringValue(keystr);
-    key.dptr = RSTRING(keystr)->ptr;
-    key.dsize = RSTRING(keystr)->len;
-
-    GetDBM(obj, dbmp);
-    dbm = dbmp->di_dbm;
-    valstr = rb_gdbm_fetch(dbm, key);
+    valstr = rb_gdbm_fetch3(obj, keystr);
     if (NIL_P(valstr)) {
 	if (ifnone == Qnil && rb_block_given_p())
-	    return rb_yield(rb_tainted_str_new(key.dptr, key.dsize));
+	    return rb_yield(keystr);
 	return ifnone;
     }
     return valstr;
@@ -259,7 +262,7 @@ static VALUE
 fgdbm_aref(obj, keystr)
     VALUE obj, keystr;
 {
-    return fgdbm_fetch(obj, keystr, Qnil);
+    return rb_gdbm_fetch3(obj, keystr);
 }
 
 static VALUE
@@ -314,7 +317,7 @@ fgdbm_indexes(argc, argv, obj)
 
     new = rb_ary_new2(argc);
     for (i=0; i<argc; i++) {
-	rb_ary_push(new, fgdbm_fetch(obj, argv[i]));
+	rb_ary_push(new, rb_gdbm_fetch3(obj, argv[i]));
     }
 
     return new;

--
新井康司 (Koji Arai)

In This Thread

Prev Next