From 95cd46c5ec496a02013d3918673cfae2d1922ac8 Mon Sep 17 00:00:00 2001
From: David Heinemeier Hansson <david@loudthinking.com>
Date: Fri, 22 Jul 2005 07:39:48 +0000
Subject: Fixed compile of template fails if template name contains non-word
 character #1802

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1883 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
---
 actionpack/lib/action_view/base.rb | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

(limited to 'actionpack')

diff --git a/actionpack/lib/action_view/base.rb b/actionpack/lib/action_view/base.rb
index 4869f8f555..4004ad3326 100644
--- a/actionpack/lib/action_view/base.rb
+++ b/actionpack/lib/action_view/base.rb
@@ -304,8 +304,9 @@ module ActionView #:nodoc:
             i = file_name.index(@base_path)
             l = @base_path.length
             s_file_name = i ? file_name[i+l+1,file_name.length-l-1] : file_name
-            s_file_name.gsub!(/\/|:/, '_')
-            s_file_name.sub!(/.rhtml/,'')
+            s_file_name.sub!(/.rhtml$/,'')
+            s_file_name.tr!('/:-', '_')
+            s_file_name.gsub!(/[^a-zA-Z0-9_]/){|s| s[0].to_s}
             erb_name += s_file_name
           else
             @@erb_count += 1
-- 
cgit v1.2.3