aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/net.c5
-rw-r--r--src/net/util.c1
2 files changed, 5 insertions, 1 deletions
diff --git a/src/net.c b/src/net.c
index c9fdc08..d2f4e17 100644
--- a/src/net.c
+++ b/src/net.c
@@ -859,7 +859,10 @@ void* handle_client(void *_arg){
parray_t* par = params->arr[id].value;
for(int z = 0; z != par->len; z++){
- luaI_tsets(L, new_param_idx, par->P[z].key->c, (char*)par->P[z].value);
+ char* v = ((char*)par->P[z].value);
+ for(int u = 0; v[u] != '\0'; u++)
+ if(v[u] == '%') v[u] = '/';
+ luaI_tsets(L, new_param_idx, par->P[z].key->c, v);
}
parray_clear(par, FREE);
diff --git a/src/net/util.c b/src/net/util.c
index bada160..62b394c 100644
--- a/src/net/util.c
+++ b/src/net/util.c
@@ -546,6 +546,7 @@ int percent_decode(str* input, str** _output){
return 1;
}
+ if(c == '/') c = '%';
str_pushl(output, ((char*)&c), 1);
str_free(hex);
i += 2;