From 40a4d0fcfc46950fabece2ed34ae95f02fd63cbb Mon Sep 17 00:00:00 2001 From: Chris Forno Date: Sun, 21 Apr 2019 07:38:25 +0000 Subject: [PATCH] Fix uri_escape() in certain contexts. --- uri.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/uri.c b/uri.c index 1dfb6d2..9ee0160 100644 --- a/uri.c +++ b/uri.c @@ -570,10 +570,10 @@ uri_escape(PG_FUNCTION_ARGS) size_t chars_required; char *ret; - chars_required = (VARSIZE(arg) - 4) * (normalize_breaks ? 6 : 3) + 1; + chars_required = (VARSIZE_ANY_EXHDR(arg)) * (normalize_breaks ? 6 : 3) + 1; ret = palloc(chars_required); - uriEscapeExA(VARDATA(arg), - VARDATA(arg) + VARSIZE(arg) - 4, + uriEscapeExA(VARDATA_ANY(arg), + VARDATA_ANY(arg) + VARSIZE_ANY_EXHDR(arg), ret, space_to_plus, normalize_breaks);