Mercurial > hg > mercurial-crew-with-dirclash
view hgext/win32text.py @ 5206:0f6a1bdf89fb
match: handle large regexes
Some Python versions don't handle large regexes, so when we hit an
overflow, split our regex in two.
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Sun, 19 Aug 2007 14:03:56 -0500 |
parents | e58b1c9a0dec |
children | 30762680fcd2 |
line wrap: on
line source
import mercurial.util def dumbdecode(s, cmd): return s.replace('\n', '\r\n') def dumbencode(s, cmd): return s.replace('\r\n', '\n') def clevertest(s, cmd): if '\0' in s: return False return True def cleverdecode(s, cmd): if clevertest(s, cmd): return dumbdecode(s, cmd) return s def cleverencode(s, cmd): if clevertest(s, cmd): return dumbencode(s, cmd) return s mercurial.util.filtertable.update({ 'dumbdecode:': dumbdecode, 'dumbencode:': dumbencode, 'cleverdecode:': cleverdecode, 'cleverencode:': cleverencode, })