diff --git a/main.py b/main.py
index f6a3017..54c61b0 100644
--- a/main.py
+++ b/main.py
@@ -28,7 +28,7 @@ def application(env, re):
if len(split) > 2:
re("400 Bad Request", [])
yield "
400 Bad Request
".encode()
- yield "Only one (validate) or two (conn) arguments may be passed as path."
+ yield "Only one (validate) or two (conn) arguments may be passed as path.".encode()
return
if len(split) > 0:
@@ -52,8 +52,12 @@ def application(env, re):
if rtype.lower() in ["conn", "connection"]:
try:
- frm = cfrm or args["from"][0]
- to = cto or args["to"][0]
+ try:
+ frm = (cfrm or args["from"][0]).encode("latin-1").decode("utf-8")
+ to = (cto or args["to"][0]).encode("latin-1").decode("utf-8")
+ except UnicodeDecodeError:
+ frm = cfrm or args["from"][0]
+ to = cto or args["to"][0]
if not frm or not to:
raise ValueError()
@@ -103,7 +107,10 @@ def application(env, re):
elif rtype.lower() in ["val", "validate"]:
try:
- name = cfrm or args["name"]
+ try:
+ name = (cfrm or args["from"][0]).encode("latin-1").decode("utf-8")
+ except UnicodeDecodeError:
+ name = cfrm or args["from"][0]
if not name:
raise ValueError()