diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2017-02-04 22:57:44 +0200 |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2017-02-04 22:57:44 +0200 |
commit | 44a28ecbe2c09fe5ec4959c254fdfe5b6a9fe322 (patch) | |
tree | 007442e524d9584fe16f0d80ad2b8933809f3b1b /Tools/pybench/With.py | |
parent | 2296b978597ce62ec2185b78a43811610af2c0ea (diff) | |
parent | efe8c92c7a269af2f9ded960735e74d62d791330 (diff) | |
download | cpython-44a28ecbe2c09fe5ec4959c254fdfe5b6a9fe322.tar.gz |
Issue #29444: Fixed out-of-bounds buffer access in the group() method of
the match object. Based on patch by WGH.
Diffstat (limited to 'Tools/pybench/With.py')
-rw-r--r-- | Tools/pybench/With.py | 189 |
1 files changed, 0 insertions, 189 deletions
diff --git a/Tools/pybench/With.py b/Tools/pybench/With.py deleted file mode 100644 index 30cd3c2c8a..0000000000 --- a/Tools/pybench/With.py +++ /dev/null @@ -1,189 +0,0 @@ -from pybench import Test - -class WithFinally(Test): - - version = 2.0 - operations = 20 - rounds = 80000 - - class ContextManager(object): - def __enter__(self): - pass - def __exit__(self, exc, val, tb): - pass - - def test(self): - - cm = self.ContextManager() - - for i in range(self.rounds): - with cm: pass - with cm: pass - with cm: pass - with cm: pass - with cm: pass - with cm: pass - with cm: pass - with cm: pass - with cm: pass - with cm: pass - with cm: pass - with cm: pass - with cm: pass - with cm: pass - with cm: pass - with cm: pass - with cm: pass - with cm: pass - with cm: pass - with cm: pass - - def calibrate(self): - - cm = self.ContextManager() - - for i in range(self.rounds): - pass - - -class TryFinally(Test): - - version = 2.0 - operations = 20 - rounds = 80000 - - class ContextManager(object): - def __enter__(self): - pass - def __exit__(self): - # "Context manager" objects used just for their cleanup - # actions in finally blocks usually don't have parameters. - pass - - def test(self): - - cm = self.ContextManager() - - for i in range(self.rounds): - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - cm.__enter__() - try: pass - finally: cm.__exit__() - - def calibrate(self): - - cm = self.ContextManager() - - for i in range(self.rounds): - pass - - -class WithRaiseExcept(Test): - - version = 2.0 - operations = 2 + 3 + 3 - rounds = 100000 - - class BlockExceptions(object): - def __enter__(self): - pass - def __exit__(self, exc, val, tb): - return True - - def test(self): - - error = ValueError - be = self.BlockExceptions() - - for i in range(self.rounds): - with be: raise error - with be: raise error - with be: raise error("something") - with be: raise error("something") - with be: raise error("something") - with be: raise error("something") - with be: raise error("something") - with be: raise error("something") - - def calibrate(self): - - error = ValueError - be = self.BlockExceptions() - - for i in range(self.rounds): - pass |