1901 fn = filterfn |
1901 fn = filterfn |
1902 params = cmd[len(name) :].lstrip() |
1902 params = cmd[len(name) :].lstrip() |
1903 break |
1903 break |
1904 if not fn: |
1904 if not fn: |
1905 fn = lambda s, c, **kwargs: procutil.filter(s, c) |
1905 fn = lambda s, c, **kwargs: procutil.filter(s, c) |
|
1906 fn.__name__ = 'commandfilter' |
1906 # Wrap old filters not supporting keyword arguments |
1907 # Wrap old filters not supporting keyword arguments |
1907 if not pycompat.getargspec(fn)[2]: |
1908 if not pycompat.getargspec(fn)[2]: |
1908 oldfn = fn |
1909 oldfn = fn |
1909 fn = lambda s, c, **kwargs: oldfn(s, c) |
1910 fn = lambda s, c, **kwargs: oldfn(s, c) |
|
1911 fn.__name__ = 'compat-' + oldfn.__name__ |
1910 l.append((mf, fn, params)) |
1912 l.append((mf, fn, params)) |
1911 self._filterpats[filter] = l |
1913 self._filterpats[filter] = l |
1912 return self._filterpats[filter] |
1914 return self._filterpats[filter] |
1913 |
1915 |
1914 def _filter(self, filterpats, filename, data): |
1916 def _filter(self, filterpats, filename, data): |
1915 for mf, fn, cmd in filterpats: |
1917 for mf, fn, cmd in filterpats: |
1916 if mf(filename): |
1918 if mf(filename): |
1917 self.ui.debug(b"filtering %s through %s\n" % (filename, cmd)) |
1919 self.ui.debug( |
|
1920 b"filtering %s through %s\n" |
|
1921 % (filename, cmd or pycompat.sysbytes(fn.__name__)) |
|
1922 ) |
1918 data = fn(data, cmd, ui=self.ui, repo=self, filename=filename) |
1923 data = fn(data, cmd, ui=self.ui, repo=self, filename=filename) |
1919 break |
1924 break |
1920 |
1925 |
1921 return data |
1926 return data |
1922 |
1927 |