Re: BUG #18231: String conversion function is adding special characters in Postgres 15 - Mailing list pgsql-bugs

From Heikki Linnakangas
Subject Re: BUG #18231: String conversion function is adding special characters in Postgres 15
Date
Msg-id f07f1a9a-5a9d-4917-a514-8d858d94edb7@iki.fi
Whole thread Raw
In response to BUG #18231: String conversion function is adding special characters in Postgres 15  (PG Bug reporting form <noreply@postgresql.org>)
List pgsql-bugs
On 07/12/2023 11:16, PG Bug reporting form wrote:
> The following bug has been logged on the website:
> 
> Bug reference:      18231
> Logged by:          anvesh work
> Email address:      work.anvesh@gmail.com
> PostgreSQL version: 15.0
> Operating system:   Windows 10
> Description:
> 
> I have a function which was working fine in Postgres 10 but not in Postgres
> 15.
> 
> When I traced the program, I am facing issue with the VARDATA(arg2).
> The arg2 is 2nd argument used in the calling function from PGAdmin4.
> After conversion it is returning text with special characters.
> In Postgres 10, note that 4 characters are concatenated with special
> characters, but other characters are working fine.
> Following are the lines of code:
> pgsql:
> select functionname('arg1', 'arg2', 'arg3');
> 
> My Method in C program has
>   text  *arg2 = PG_GETARG_TEXT_P(1);
>   int output = PbValue (VARDATA(arg2));
> 
> Postgres.h file:
> #define VARDATA(PTR)                        VARDATA_4B(PTR)
> #define VARDATA_4B(PTR)        (((varattrib_4b *) (PTR))->va_4byte.va_data)
> 
> 
> To resolve this, we have used memcpy for converting characters.
>   memcpy(str, VARDATA(arg2), arg_size);

I bet the problem is in your C function, but there's not enough details 
here to say where exactly. I don't understand what you mean string 
conversion or special characters, for starters.

If provide a short self-contained 10-20 lines example that demonstrates 
the problem, and send it as a reply to this list, someone might be able 
to point out what the problem is.

-- 
Heikki Linnakangas
Neon (https://neon.tech)




pgsql-bugs by date:

Previous
From: PG Bug reporting form
Date:
Subject: BUG #18231: String conversion function is adding special characters in Postgres 15
Next
From: PG Bug reporting form
Date:
Subject: BUG #18232: Function pushJsonbValueScalar has not Assert(scalarVal) on WJB_KEY, WJB_VALUE and WJB_ELEM