Re: [PATCH] ecpg: use memcpy in a few length-based copies - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Re: [PATCH] ecpg: use memcpy in a few length-based copies
Date
Msg-id d3384f44-412a-47b4-b5b9-cdc64a336d2f@eisentraut.org
Whole thread
In response to [PATCH] ecpg: use memcpy in a few length-based copies  (Haibo Yan <tristan.yim@gmail.com>)
Responses Re: [PATCH] ecpg: use memcpy in a few length-based copies
List pgsql-hackers
On 08.07.26 21:24, Haibo Yan wrote:
> I noticed a few places in ecpg that use strncpy() even though the code already
> knows how many bytes to copy.
> 
> For example, some paths copy N bytes into a temporary buffer and then add the
> terminating NUL explicitly.  There is also one small substring copy in
> pgtypeslib/datetime.c.  memcpy() seems a better fit for those cases.

Why is it better?  At least strncpy() enforces that the target is a char 
array, which memcpy() doesn't.

At a quick glance, strlcpy() might be more suitable in some of the cases 
you found.




pgsql-hackers by date:

Previous
From: Kyotaro Horiguchi
Date:
Subject: Re: Possible replace of strncpy on xactdesc.c
Next
From: Bertrand Drouvot
Date:
Subject: Re: Fix races conditions in DropRole() and GrantRole()