summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Cramer <dcramer@gmail.com>2016-08-04 11:29:40 -0700
committerGitHub <noreply@github.com>2016-08-04 11:29:40 -0700
commit4a9a2b548789a8ed58619bea969f0816d4fc901a (patch)
tree80eba8b22dcab51a249f5e88d897b8e80ec2976d
parent1c84aef025944767365896c5000c46d62a9cef39 (diff)
parentc159f2f071666cf541f046446aa83904d9e6dc42 (diff)
downloadraven-4a9a2b548789a8ed58619bea969f0816d4fc901a.tar.gz
Merge pull request #796 from faulteh/django_jinja2_debug_exceptions
Django client template_debug's source_lines is just a snippet
-rw-r--r--raven/contrib/django/utils.py12
1 files changed, 8 insertions, 4 deletions
diff --git a/raven/contrib/django/utils.py b/raven/contrib/django/utils.py
index 2b431cc..e4738c3 100644
--- a/raven/contrib/django/utils.py
+++ b/raven/contrib/django/utils.py
@@ -33,12 +33,13 @@ def get_data_from_template(source, debug=None):
return rv
if debug is not None:
- start = debug['start']
- end = debug['end']
- source_lines = debug['source_lines']
lineno = debug['line']
filename = debug['name']
- culprit = filename.split('/templates/')[-1]
+ source_lines = []
+ source_lines += [''] * (debug['source_lines'][0][0])
+ for num, line in debug['source_lines']:
+ source_lines.append(line)
+ source_lines += [''] * 4
elif source:
origin, (start, end) = source
filename = culprit = getattr(origin, 'loadname', None)
@@ -59,6 +60,9 @@ def get_data_from_template(source, debug=None):
if filename is None:
filename = '<unknown filename>'
+ culprit = '<unknown filename>'
+ else:
+ culprit = filename.split('/templates/')[-1]
pre_context = _remove_numbers(source_lines[max(lineno - 3, 0):lineno])
post_context = _remove_numbers(source_lines[(lineno + 1):(lineno + 4)])