tantalor / emend

Google App Engine site for tracking and sharing grammatical mistakes found on the web.

Home Page:http://www.emendapp.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

URLs with " character makes display of edit crash

h3h opened this issue · comments

When I emend a URL that has a literal " character, I can make the edit and submit it to Emend, but Emend then crashes when trying to display the edit.

See e.g.:

http://emend.appspot.com/sites/www.jonescountysheriff.com/edits/0
http://emend.appspot.com/sites/www.jonescountysheriff.com/edits/1

Here's the stack trace:

Traceback (most recent call last):
  File "/base/python_lib/versions/1/google/appengine/ext/webapp/__init__.py", line 501, in __call__
    handler.get(*groups)
  File "/base/data/home/apps/emend/1.333996311935794145/util/handler.py", line 69, in get
    self.render(path)
  File "/base/data/home/apps/emend/1.333996311935794145/util/handler.py", line 224, in render
    rendered = template.render(path, self.response_dict())
  File "/base/python_lib/versions/1/google/appengine/ext/webapp/template.py", line 81, in render
    return t.render(Context(template_dict))
  File "/base/python_lib/versions/1/google/appengine/ext/webapp/template.py", line 121, in wrap_render
    return orig_render(context)
  File "/base/python_lib/versions/1/django/template/__init__.py", line 168, in render
    return self.nodelist.render(context)
  File "/base/python_lib/versions/1/django/template/__init__.py", line 705, in render
    bits.append(self.render_node(node, context))
  File "/base/python_lib/versions/1/django/template/__init__.py", line 718, in render_node
    return(node.render(context))
  File "/base/python_lib/versions/1/django/template/loader_tags.py", line 82, in render
    return compiled_parent.render(context)
  File "/base/python_lib/versions/1/django/template/__init__.py", line 168, in render
    return self.nodelist.render(context)
  File "/base/python_lib/versions/1/django/template/__init__.py", line 705, in render
    bits.append(self.render_node(node, context))
  File "/base/python_lib/versions/1/django/template/__init__.py", line 718, in render_node
    return(node.render(context))
  File "/base/python_lib/versions/1/django/template/loader_tags.py", line 23, in render
    result = self.nodelist.render(context)
  File "/base/python_lib/versions/1/django/template/__init__.py", line 705, in render
    bits.append(self.render_node(node, context))
  File "/base/python_lib/versions/1/django/template/__init__.py", line 718, in render_node
    return(node.render(context))
  File "/base/python_lib/versions/1/django/template/__init__.py", line 767, in render
    output = self.filter_expression.resolve(context)
  File "/base/python_lib/versions/1/django/template/__init__.py", line 579, in resolve
    obj = func(obj, *arg_vals)
  File "/base/data/home/apps/emend/1.333996311935794145/template.py", line 11, in truncate
    value = str(value)
UnicodeEncodeError: 'ascii' codec can't encode character u'\u201c' in position 49: ordinal not in range(128)