summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGerman M. Bravo <german.mb@deipi.com>2013-08-13 15:20:28 -0500
committerGerman M. Bravo <german.mb@deipi.com>2013-08-13 15:20:28 -0500
commit6eceabdaecf0631b55c0b51812fe43b8958e19bc (patch)
treec4a337366c81a6a5770a16d442d8df74bfd747c8
parent8c75d83957640865fc374c5d47220ddf340705e7 (diff)
downloadpyscss-6eceabdaecf0631b55c0b51812fe43b8958e19bc.tar.gz
Oops! ...this fixes last two commits
-rw-r--r--scss/expression.py2
-rw-r--r--scss/rule.py21
2 files changed, 11 insertions, 12 deletions
diff --git a/scss/expression.py b/scss/expression.py
index 64cc174..5ab779e 100644
--- a/scss/expression.py
+++ b/scss/expression.py
@@ -111,7 +111,7 @@ class Calculator(object):
if results is None:
try:
- results = self.namespace.variable(expr)
+ results = self.namespace.variable(expr, throw=True)
except KeyError:
pass
diff --git a/scss/rule.py b/scss/rule.py
index ff445a7..cd99d7a 100644
--- a/scss/rule.py
+++ b/scss/rule.py
@@ -7,10 +7,8 @@ import logging
from scss.cssdefs import _has_placeholder_re
from scss.types import Undefined
-log = logging.getLogger(__name__)
-
-FATAL_UNDEFINED = False
+log = logging.getLogger(__name__)
def normalize_var(name):
@@ -36,11 +34,7 @@ class VariableScope(object):
if key in map:
return map[key]
- if FATAL_UNDEFINED:
- raise KeyError(key)
-
- log.error("Undefined variable '%s'", key)
- return Undefined()
+ raise KeyError(key)
def __setitem__(self, key, value):
for map in self.maps:
@@ -88,10 +82,15 @@ class Namespace(object):
def derive(self):
return type(self).derive_from(self)
-
- def variable(self, name):
+ def variable(self, name, throw=False):
name = normalize_var(name)
- return self._variables[name]
+ try:
+ return self._variables[name]
+ except KeyError:
+ if throw:
+ raise
+ log.error("Undefined variable '%s'", name)
+ return Undefined()
def set_variable(self, name, value):
name = normalize_var(name)