summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-09-21 21:02:13 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2007-09-21 21:02:13 +0000
commit50e31fd50437be0be95a603eed2a16407ef14cd2 (patch)
treec8f12ae3be6aaf595248312f8df2020bcfd3ff7e
parent5ef9e44d309648682f558dc32b443c5743ba7229 (diff)
downloadruby-50e31fd50437be0be95a603eed2a16407ef14cd2.tar.gz
ruby-50e31fd50437be0be95a603eed2a16407ef14cd2.tar.xz
ruby-50e31fd50437be0be95a603eed2a16407ef14cd2.zip
* lib/optparse.rb (OptionParser::List::summarize): use each_line if
defined rather than each. [ruby-Patches-14096] git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@13483 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--lib/optparse.rb4
2 files changed, 8 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 349606a25..944ca0ea2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Sat Sep 22 06:02:11 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * lib/optparse.rb (OptionParser::List::summarize): use each_line if
+ defined rather than each. [ruby-Patches-14096]
+
Sat Sep 22 05:19:49 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/stringio/stringio.c (strio_init): separate from strio_initialize
diff --git a/lib/optparse.rb b/lib/optparse.rb
index 854805a82..6fddb81a7 100644
--- a/lib/optparse.rb
+++ b/lib/optparse.rb
@@ -632,8 +632,10 @@ class OptionParser
list.each do |opt|
if opt.respond_to?(:summarize) # perhaps OptionParser::Switch
opt.summarize(*args, &block)
- elsif !opt or opt.empty?
+ elsif !opt
yield("")
+ elsif opt.respond_to?(:each_line)
+ opt.each_line(&block)
else
opt.each(&block)
end