svnno****@sourc*****
svnno****@sourc*****
2009年 8月 16日 (日) 02:55:54 JST
Revision: 976 http://sourceforge.jp/projects/hiki/svn/view?view=rev&revision=976 Author: fdiary Date: 2009-08-16 02:55:54 +0900 (Sun, 16 Aug 2009) Log Message: ----------- * hiki/command.rb (cmd_diff): use unified_diff if word_diff raises an exception, because word_diff can raise Encoding::CompatibilityError in Ruby-1.9. this change should be temporary and should be removed when docdiff becomes Ruby-1.9 ready. Modified Paths: -------------- hiki/trunk/ChangeLog hiki/trunk/hiki/command.rb Modified: hiki/trunk/ChangeLog =================================================================== --- hiki/trunk/ChangeLog 2009-08-15 17:53:45 UTC (rev 975) +++ hiki/trunk/ChangeLog 2009-08-15 17:55:54 UTC (rev 976) @@ -1,4 +1,10 @@ 2009-08-15 Kazuhiko <kazuh****@fdiar*****> + * hiki/command.rb (cmd_diff): use unified_diff if word_diff raises + an exception, because word_diff can raise + Encoding::CompatibilityError in Ruby-1.9. this change should be + temporary and should be removed when docdiff becomes Ruby-1.9 + ready. + * hiki/util.rb (unified_diff): escape output in this method just same as word_diff() does. * misc/plugin/rss.rb (rss_body): remove escape because Modified: hiki/trunk/hiki/command.rb =================================================================== --- hiki/trunk/hiki/command.rb 2009-08-15 17:53:45 UTC (rev 975) +++ hiki/trunk/hiki/command.rb 2009-08-15 17:55:54 UTC (rev 976) @@ -354,7 +354,13 @@ def cmd_diff old =****@db*****_backup( @p ) || '' new =****@db*****( @p ) || '' - differ = word_diff( old, new ).gsub( /\n/, "<br>\n" ) + begin + differ = word_diff( old, new ).gsub( /\n/, "<br>\n" ) + rescue + # FIXME word_diff() can raise Encoding::CompatibilityError in + # Ruby-1.9. + differ = unified_diff( old, new ).gsub( /\n/, "<br>\n" ) + end data = get_common_data( @db, @plugin, @conf )