[#42194] Enhancing Numeric#step — "Akinori MUSHA" <knu@...>

 Numeric#step の仕様の拡張を提案します。

26 messages 2010/09/08
[#42196] Re: Enhancing Numeric#step — Yukihiro Matsumoto <matz@...> 2010/09/08

まつもと ゆきひろです

[#42200] Re: Enhancing Numeric#step — "Akinori MUSHA" <knu@...> 2010/09/08

At Wed, 8 Sep 2010 22:46:57 +0900,

[#42204] Re: Enhancing Numeric#step — Yukihiro Matsumoto <matz@...> 2010/09/09

まつもと ゆきひろです

[#42232] 1.9.2 readline can't handle cursorkeys, mbcs chars etc (msvcrt) — arton <artonx@...>

artonです。

11 messages 2010/09/10

[#42269] [Ruby 1.9-Bug#3836] Kernel.system, spawnがスペースを含むパスで動作しない — Hiroki Najima <redmine@...>

チケット #3836 が更新されました。 (by Hiroki Najima)

12 messages 2010/09/16
[#42270] WindowsでのKernel.systemの挙動、一貫性について — NAJIMA Hiroki <h.najima@...> 2010/09/16

名島(Nazy)と申します。

[#42310] ビジースレッドがあるとコンテキストスイッチが起きづらくなる — kuwamoto shintaro <beuniv@...>

こんにちは。

9 messages 2010/09/29
[#42315] [bug:trunk] ビジースレッドがあるとコンテキストスイッチが起きづらくなる — "U.Nakamura" <usa@...> 2010/09/30

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

[ruby-dev:42225] [Ruby 1.9-Bug#3816][Assigned] OpenSSL::BN#prime?の引数の取り扱いがおかしい

From: Yui NARUSE <redmine@...>
Date: 2010-09-10 07:20:47 UTC
List: ruby-dev #42225
Bug #3816: OpenSSL::BN#prime?の引数の取り扱いがおかしい
http://redmine.ruby-lang.org/issues/show/3816

起票者: Yui NARUSE
ステータス: Assigned, 優先度: Normal
担当者: Hiroshi NAKAMURA
ruby -v: ruby 1.9.3dev (2010-09-10 trunk 29213) [x86_64-freebsd8.1]

OpenSSL::BN#prime?を引数なしで呼ぶと以下の通り例外が出ます。

irb(main):001:0> require'openssl'=> trueirb(main):002:0> OpenSSL::BN.new("461166461445805738999").prime?
TypeError: no implicit conversion from nil to integer
        from (irb):2:in `prime?'
        from (irb):2
        from /home/naruse/local/ruby_1_9_2/bin/irb:12:in `<main>'

コードを見るに、rb_scan_args の引数との比較が誤っているように見えるので、引数ありでもおかしいでしょう。
以下の変更で直ります。

diff --git a/ext/openssl/ossl_bn.c b/ext/openssl/ossl_bn.c
index bec5135..6adc59f 100644
--- a/ext/openssl/ossl_bn.c
+++ b/ext/openssl/ossl_bn.c
@@ -669,7 +669,7 @@ ossl_bn_is_prime(int argc, VALUE *argv, VALUE self)
     VALUE vchecks;
     int checks = BN_prime_checks;

-    if (rb_scan_args(argc, argv, "01", &vchecks) == 0) {
+    if (rb_scan_args(argc, argv, "01", &vchecks) == 1) {
        checks = NUM2INT(vchecks);
     }
     GetBN(self, bn);


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

In This Thread

Prev Next