Alex Hunsaker <badalex@gmail.com> writes:
> PFA that copies if its readonly and its not a scalar. Also I fixed up
> Tom's complaint about having sv2cstr() inside do_util_elog's PG_TRY
> block.
On reflection I don't believe that just moving that call will improve
matters. sv2cstr also contains a palloc, and if that throws an error,
it had better do so within a PG error context not the Perl one.
Making things safer will most likely require refactoring sv2cstr to
keep the Perl and PG operations entirely separate.
regards, tom lane