Peter Eisentraut wrote:
> [EMAIL PROTECTED] wrote:
> > I think we had this discussion already. strncpy() copies N bytes,
> > whereas strlcpy() copies only as many bytes as necessary. For short
> > strings with larger buffers, strlcpy() wins. It's understood that
> > in many cases in PostgreSQL, the expectation is for short strings,
> > and it is not required for the later bytes to be '\0'.
> You may also speculate that strncpy() is more optimized in some C
> libraries than strlcpy(). However, the changed cases are all
> uninteresting in terms of performance or fall under the short strings
> in long buffers case.
> The remaining uses of StrNCpy() are either inner loops which need to be
> investigated, or it's not clear whether the zero-filling of strncpy()
> is required, or it's in a library were the libpgport linkages needs to
> be added.
> The main idea here is to get this programming style out because it's
> become clear that people are very confused about how to use some of the
> other functions correctly.
Sorry, I was confusing this with MemSet. Thanks for the clarification.
Bruce Momjian <[EMAIL PROTECTED]> http://momjian.us
+ If your life is a hard drive, Christ can be your backup. +
---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
choose an index scan if your joining column's datatypes do not