Commit 8d320b63 authored by Magnus Hagander's avatar Magnus Hagander

Code review of strftime patch, per comments from Tom:

* Use correct buffer size MAX_L10N_DATA
* Use strlcpy instead of StrNCpy
parent f8e5b793
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
* *
* Portions Copyright (c) 2002-2009, PostgreSQL Global Development Group * Portions Copyright (c) 2002-2009, PostgreSQL Global Development Group
* *
* $PostgreSQL: pgsql/src/backend/utils/adt/pg_locale.c,v 1.44 2009/01/09 13:03:55 mha Exp $ * $PostgreSQL: pgsql/src/backend/utils/adt/pg_locale.c,v 1.45 2009/01/09 14:07:00 mha Exp $
* *
*----------------------------------------------------------------------- *-----------------------------------------------------------------------
*/ */
...@@ -476,7 +476,7 @@ strftime_win32(char *dst, size_t dstlen, const wchar_t *format, const struct tm ...@@ -476,7 +476,7 @@ strftime_win32(char *dst, size_t dstlen, const wchar_t *format, const struct tm
encoding = GetDatabaseEncoding(); encoding = GetDatabaseEncoding();
len = wcsftime(wbuf, sizeof(wbuf), format, tm); len = wcsftime(wbuf, MAX_L10N_DATA, format, tm);
if (len == 0) if (len == 0)
/* strftime call failed - return 0 with the contents of dst unspecified */ /* strftime call failed - return 0 with the contents of dst unspecified */
return 0; return 0;
...@@ -492,7 +492,7 @@ strftime_win32(char *dst, size_t dstlen, const wchar_t *format, const struct tm ...@@ -492,7 +492,7 @@ strftime_win32(char *dst, size_t dstlen, const wchar_t *format, const struct tm
char *convstr = pg_do_encoding_conversion(dst, len, PG_UTF8, encoding); char *convstr = pg_do_encoding_conversion(dst, len, PG_UTF8, encoding);
if (dst != convstr) if (dst != convstr)
{ {
StrNCpy(dst, convstr, dstlen); strlcpy(dst, convstr, dstlen);
len = strlen(dst); len = strlen(dst);
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment