[#7102] Ruby 1.3.4-990611 — Yukihiro Matsumoto <matz@...>

Ruby 1.3.4-990611 is out, check out:

20 messages 1999/06/11

[#7223] Ruby 1.3.4-990625 — Yukihiro Matsumoto <matz@...>

Ruby 1.3.4-990625 is out, check out:

14 messages 1999/06/25
[#7224] -Wl,-rpath on Linux (Re: Ruby 1.3.4-990625) — Ryo HAYASAKA <hayasaka@...21.u-aizu.ac.jp> 1999/06/25

早坂@会津大学です。

[ruby-dev:7107] Re: Etc.group

From: Tadayoshi Funaba <tadf@...>
Date: 1999-06-11 17:14:39 UTC
List: ruby-dev #7107
ふなばです。

>>> Fri, 11 Jun 1999 15:19:48 +0900 の刻に 「matz」、すなわち
>>> matz@netlab.co.jp(Yukihiro Matsumoto) 氏曰く

matz> |Etc.group を普通のメソッドとして呼び出しつづけるとコアダンプします。
matz> |1.2.x でも同様のよう。

matz> あ、確かに。修正します。でもここは例外よりはQnilを返すように
matz> した方がよさそうですね。

あ、そうそう。僕もそう思ったんですが、とりあえず、Etc.passwd のほうの
仕様に合せたんです。

というわけで、Etc.passwd も、そうしていただけるといいなと思います。


--- ext/etc/etc.c.orig	Fri Jun 11 15:29:59 1999
+++ ext/etc/etc.c	Fri Jun 11 23:27:00 1999
@@ -125,7 +125,7 @@
 etc_passwd(obj)
     VALUE obj;
 {
-#if defined(HAVE_GETPWENT)
+#ifdef HAVE_GETPWENT
     struct passwd *pw;
 
     if (rb_iterator_p()) {
@@ -136,12 +136,11 @@
 	endpwent();
 	return obj;
     }
-    pw = getpwent();
-    if (pw == 0) rb_raise(rb_eRuntimeError, "can't fetch next -- /etc/passwd");
-    return setup_passwd(pw);
-#else 
-    return Qnil;
+    if (pw = getpwent()) {
+	return setup_passwd(pw);
+    }
 #endif
+    return Qnil;
 }
 
 #ifdef HAVE_GETGRENT


0.step(72,3){|i|$><<'J huhesartc  kRaeunrbo,yt'[i%25..i%25]}

ふなば ただよし

In This Thread