summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--lib/erb.rb7
2 files changed, 7 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 28f999cc0d..0ce3ee51bf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Mon Mar 24 01:24:24 2008 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
+
+ * lib/erb.rb (result): use proc instead of Thread. [ruby-dev:33692]
+
Fri Mar 21 21:26:52 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/resolv.rb (Resolv::Hosts): should not use win32/resolv on cygwin.
diff --git a/lib/erb.rb b/lib/erb.rb
index 951c3b4107..3cfbc11c30 100644
--- a/lib/erb.rb
+++ b/lib/erb.rb
@@ -729,13 +729,12 @@ class ERB
#
def result(b=TOPLEVEL_BINDING)
if @safe_level
- th = Thread.start {
+ proc {
$SAFE = @safe_level
eval(@src, b, (@filename || '(erb)'), 1)
- }
- return th.value
+ }.call
else
- return eval(@src, b, (@filename || '(erb)'), 1)
+ eval(@src, b, (@filename || '(erb)'), 1)
end
end