summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKirill Kuzminykh <cykooz@gmail.com>2017-03-02 22:40:36 +0300
committerKirill Kuzminykh <cykooz@gmail.com>2017-03-02 22:40:36 +0300
commit71e92df9249274796224ae6d72ca83f0bca942d7 (patch)
tree52a594dab0a42e6a2091f847e40b1cae4fc7203b
parentb1cad5ee8c8bdf8dd5819e77366c36869d53edbb (diff)
downloadpyramid-71e92df9249274796224ae6d72ca83f0bca942d7.tar.gz
pyramid-71e92df9249274796224ae6d72ca83f0bca942d7.tar.bz2
pyramid-71e92df9249274796224ae6d72ca83f0bca942d7.zip
Reverted couple useless fixes of memory leaks.
-rw-r--r--pyramid/config/views.py2
-rw-r--r--pyramid/registry.py4
-rw-r--r--pyramid/tests/test_tweens.py4
-rw-r--r--pyramid/tweens.py2
4 files changed, 5 insertions, 7 deletions
diff --git a/pyramid/config/views.py b/pyramid/config/views.py
index b6996b6d2..65c9da585 100644
--- a/pyramid/config/views.py
+++ b/pyramid/config/views.py
@@ -933,7 +933,7 @@ class ViewsConfiguratorMixin(object):
if not exception_only and isexc:
derived_view = runtime_exc_view(derived_view, derived_exc_view)
- derived_view.__discriminator__ = lambda *arg: view_intr.discriminator
+ derived_view.__discriminator__ = lambda *arg: discriminator
# __discriminator__ is used by superdynamic systems
# that require it for introspection after manual view lookup;
# see also MultiView.__discriminator__
diff --git a/pyramid/registry.py b/pyramid/registry.py
index 20b3643e9..7589dfcac 100644
--- a/pyramid/registry.py
+++ b/pyramid/registry.py
@@ -276,7 +276,9 @@ class Deferred(object):
@reify
def value(self):
- return self.func()
+ result = self.func()
+ del self.func
+ return result
def resolve(self):
return self.value
diff --git a/pyramid/tests/test_tweens.py b/pyramid/tests/test_tweens.py
index d2053e6b8..c8eada34c 100644
--- a/pyramid/tests/test_tweens.py
+++ b/pyramid/tests/test_tweens.py
@@ -31,7 +31,6 @@ class Test_excview_tween_factory(unittest.TestCase):
raise HTTPNotFound
tween = self._makeOne(handler)
request = Request.blank('/')
- request.registry = self.config.registry
result = tween(request)
self.assertEqual(result.status, '404 Not Found')
@@ -45,7 +44,6 @@ class Test_excview_tween_factory(unittest.TestCase):
raise ValueError
tween = self._makeOne(handler)
request = Request.blank('/')
- request.registry = self.config.registry
result = tween(request)
self.assertTrue(b'foo' in result.body)
@@ -57,7 +55,6 @@ class Test_excview_tween_factory(unittest.TestCase):
raise ValueError
tween = self._makeOne(handler)
request = Request.blank('/')
- request.registry = self.config.registry
request.method = 'POST'
self.assertRaises(ValueError, lambda: tween(request))
@@ -67,7 +64,6 @@ class Test_excview_tween_factory(unittest.TestCase):
raise ValueError
tween = self._makeOne(handler)
request = Request.blank('/')
- request.registry = self.config.registry
self.assertRaises(ValueError, lambda: tween(request))
class DummyRequest:
diff --git a/pyramid/tweens.py b/pyramid/tweens.py
index 19daf9e5e..a842b1133 100644
--- a/pyramid/tweens.py
+++ b/pyramid/tweens.py
@@ -42,7 +42,7 @@ def excview_tween_factory(handler, registry):
provides = providedBy(exc)
try:
response = _call_view(
- request.registry,
+ registry,
request,
exc,
provides,