Jackmcbarn has uploaded a new change for review. https://gerrit.wikimedia.org/r/180380
Change subject: Only use mw.ustring when necessary ...................................................................... Only use mw.ustring when necessary mw.ustring is really really slow. I've discovered that in a lot of modules on enwiki, upwards of 2/3 of the total runtime gets used when mw.html calls mw.ustring.gsub. This change checks whether any Unicode characters are present, and if not, calls string.gsub instead. Change-Id: Ia50061584be3901ae7428354c449236225c318db --- M engines/LuaCommon/lualib/mw.html.lua 1 file changed, 4 insertions(+), 3 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Scribunto refs/changes/80/180380/1 diff --git a/engines/LuaCommon/lualib/mw.html.lua b/engines/LuaCommon/lualib/mw.html.lua index c143266..371e4a0 100644 --- a/engines/LuaCommon/lualib/mw.html.lua +++ b/engines/LuaCommon/lualib/mw.html.lua @@ -93,9 +93,10 @@ local function cssEncode( s ) -- XXX: I'm not sure this character set is complete. -- bug #68011: allow delete character (\127) - return mw.ustring.gsub( s, '[^\32-\57\60-\127]', function ( m ) - return string.format( '\\%X ', mw.ustring.codepoint( m ) ) - end ) + return ( s:find( '[^%z\1-\127]' ) and mw.ustring or string ) + .gsub( s, '[^\32-\57\60-\127]', function ( m ) + return string.format( '\\%X ', mw.ustring.codepoint( m ) ) + end ) end -- Create a builder object. This is a separate function so that we can show the -- To view, visit https://gerrit.wikimedia.org/r/180380 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ia50061584be3901ae7428354c449236225c318db Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/Scribunto Gerrit-Branch: master Gerrit-Owner: Jackmcbarn <jackmcb...@gmail.com> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits