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 EnterpriseDB http://www.enterprisedb.com + 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 match