Re: BUG #18231: String conversion function is adding special characters in Postgres 15

From: Heikki Linnakangas <hlinnaka(at)iki(dot)fi>
To: work(dot)anvesh(at)gmail(dot)com, pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: BUG #18231: String conversion function is adding special characters in Postgres 15
Date: 2023-12-07 10:51:18
Message-ID: f07f1a9a-5a9d-4917-a514-8d858d94edb7@iki.fi
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: 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(dot)anvesh(at)gmail(dot)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)

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message David Rowley 2023-12-07 11:04:37 Removing const-false IS NULL quals and redundant IS NOT NULL quals
Previous Message PG Bug reporting form 2023-12-07 09:16:00 BUG #18231: String conversion function is adding special characters in Postgres 15