Anonymous avatar Anonymous committed 30b4038

Fix middleware when used with application generating pages without an explicit charset.

Comments (0)

Files changed (1)

fanstatic/injector.py

 
         # The wrapped application may have `needed` resources.
         if needed.has_resources():
-            response.text = needed.render_topbottom_into_html(response.text)
+            # Can't use response.text because there might not be any
+            # charset. body is not unicode.
+            result = needed.render_topbottom_into_html(response.body)
+            # Reset the body...
+            response.body = b''
+            # Write will propely unfolder the previous application and
+            # call close. Setting response.text or response.body won't do it.
+            response.write(result)
 
         # Clean up after our behinds.
         fanstatic.del_needed()
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.