From cdfae10d404dab840461642abdc873ed9f75cfe3 Mon Sep 17 00:00:00 2001
From: Kload <kload@kload.fr>
Date: Sun, 30 Jun 2013 12:11:30 +0000
Subject: [PATCH] bugfix

---
 yunohost.tac | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/yunohost.tac b/yunohost.tac
index e671322c..b4dd0da8 100755
--- a/yunohost.tac
+++ b/yunohost.tac
@@ -73,8 +73,12 @@ def http_exec(request):
         for key, value in request.args.items():
            if key in args:
                # Validate args
-               if 'pattern' in args[key]: validate(args[key]['pattern'], value)
-               if 'nargs' not in args[key] or ('nargs' != '*' and 'nargs' != '+'): value = value[0]
+               if 'pattern' in args[key]:
+                   validate(args[key]['pattern'], value)
+               if 'nargs' not in args[key] or ('nargs' != '*' and 'nargs' != '+'):
+                   value = value[0]
+               if 'choices' in args[key] and value not in args[key]['choices']:
+                   raise YunoHostError(22, _('Invalid argument') + ' ' + value)
                if 'action' in args[key] and args[key]['action'] == 'store_true':
                    yes = ['true', 'True', 'yes', 'Yes']
                    value = value in yes