aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/parser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/parser.cpp')
-rw-r--r--src/parser.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/parser.cpp b/src/parser.cpp
index 344920f..80bd3b5 100644
--- a/src/parser.cpp
+++ b/src/parser.cpp
@@ -1497,9 +1497,17 @@ StateCondCommand::custom(gchar chr) throw (Error)
BEGIN_EXEC(&States::start);
result = g_ascii_isdigit((gchar)value);
break;
- case 'E':
+ case 'S':
+ case 'T':
+ BEGIN_EXEC(&States::start);
+ result = IS_SUCCESS(value);
+ break;
case 'F':
case 'U':
+ BEGIN_EXEC(&States::start);
+ result = IS_FAILURE(value);
+ break;
+ case 'E':
case '=':
BEGIN_EXEC(&States::start);
result = value == 0;
@@ -1510,8 +1518,6 @@ StateCondCommand::custom(gchar chr) throw (Error)
result = value > 0;
break;
case 'L':
- case 'S':
- case 'T':
case '<':
BEGIN_EXEC(&States::start);
result = value < 0;