summaryrefslogtreecommitdiff
path: root/addons/web/controllers/main.py
diff options
context:
space:
mode:
authorChristophe Simonis <chs@openerp.com>2014-03-07 16:14:31 +0100
committerChristophe Simonis <chs@openerp.com>2014-03-07 16:14:31 +0100
commit36f2ff879a8726a86c7bab87ceec4657dbbf93b6 (patch)
tree768658563d258ea7afb17b59b531c91f4e5170f3 /addons/web/controllers/main.py
parentd448a63c267b8c69388fe8aaea9882cfdb614036 (diff)
[FIX] web: use jinja2.FileSystemLoader instead of PackageLoader on windows
bzr revid: chs@openerp.com-20140307151431-5k24u6lnlypv1s64
Diffstat (limited to 'addons/web/controllers/main.py')
-rw-r--r--addons/web/controllers/main.py13
1 files changed, 9 insertions, 4 deletions
diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py
index a9f56a2099c..43b109560a8 100644
--- a/addons/web/controllers/main.py
+++ b/addons/web/controllers/main.py
@@ -14,6 +14,7 @@ import hashlib
import os
import re
import simplejson
+import sys
import time
import urllib2
import zlib
@@ -37,10 +38,14 @@ from openerp.http import request, serialize_exception as _serialize_exception
_logger = logging.getLogger(__name__)
-env = jinja2.Environment(
- loader=jinja2.PackageLoader('openerp.addons.web', "views"),
- autoescape=True
-)
+if hasattr(sys, 'frozen'):
+ # When running on compiled windows binary, we don't have access to package loader.
+ path = os.path.realpath(os.path.join(os.path.dirname(__file__), '..', 'views'))
+ loader = jinja2.FileSystemLoader(path)
+else:
+ loader = jinja2.PackageLoader('openerp.addons.web', "views")
+
+env = jinja2.Environment(loader=loader, autoescape=True)
env.filters["json"] = simplejson.dumps
#----------------------------------------------------------