Simplify formatting.c - Mailing list pgsql-patches

From Bruce Momjian
Subject Simplify formatting.c
Date
Msg-id 200805200141.m4K1feb16574@momjian.us
Whole thread Raw
Responses Re: Simplify formatting.c
List pgsql-patches
Now that upper/lower/initcase do not modify the passed string, I have
simplified formatting.c with the attached patch.

--
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + If your life is a hard drive, Christ can be your backup. +
Index: src/backend/utils/adt/formatting.c
===================================================================
RCS file: /cvsroot/pgsql/src/backend/utils/adt/formatting.c,v
retrieving revision 1.140
diff -c -c -r1.140 formatting.c
*** src/backend/utils/adt/formatting.c    19 May 2008 18:08:15 -0000    1.140
--- src/backend/utils/adt/formatting.c    20 May 2008 01:37:23 -0000
***************
*** 1894,1903 ****
                  if (!tm->tm_mon)
                      break;
                  if (S_TM(n->suffix))
!                 {
!                     strcpy(workbuff, localized_full_months[tm->tm_mon - 1]);
!                     sprintf(s, "%*s", 0, str_toupper(workbuff));
!                 }
                  else
                  {
                      strcpy(workbuff, months_full[tm->tm_mon - 1]);
--- 1894,1900 ----
                  if (!tm->tm_mon)
                      break;
                  if (S_TM(n->suffix))
!                     strcpy(s, str_toupper(localized_full_months[tm->tm_mon - 1]));
                  else
                  {
                      strcpy(workbuff, months_full[tm->tm_mon - 1]);
***************
*** 1910,1923 ****
                  if (!tm->tm_mon)
                      break;
                  if (S_TM(n->suffix))
!                 {
!                     strcpy(workbuff, localized_full_months[tm->tm_mon - 1]);
!                     sprintf(s, "%*s", 0, str_initcap(workbuff));
!                 }
                  else
-                 {
                      sprintf(s, "%*s", S_FM(n->suffix) ? 0 : -9, months_full[tm->tm_mon - 1]);
-                 }
                  s += strlen(s);
                  break;
              case DCH_month:
--- 1907,1915 ----
                  if (!tm->tm_mon)
                      break;
                  if (S_TM(n->suffix))
!                     strcpy(s, str_initcap(localized_full_months[tm->tm_mon - 1]));
                  else
                      sprintf(s, "%*s", S_FM(n->suffix) ? 0 : -9, months_full[tm->tm_mon - 1]);
                  s += strlen(s);
                  break;
              case DCH_month:
***************
*** 1925,1934 ****
                  if (!tm->tm_mon)
                      break;
                  if (S_TM(n->suffix))
!                 {
!                     strcpy(workbuff, localized_full_months[tm->tm_mon - 1]);
!                     sprintf(s, "%*s", 0, str_tolower(workbuff));
!                 }
                  else
                  {
                      sprintf(s, "%*s", S_FM(n->suffix) ? 0 : -9, months_full[tm->tm_mon - 1]);
--- 1917,1923 ----
                  if (!tm->tm_mon)
                      break;
                  if (S_TM(n->suffix))
!                     strcpy(s, str_tolower(localized_full_months[tm->tm_mon - 1]));
                  else
                  {
                      sprintf(s, "%*s", S_FM(n->suffix) ? 0 : -9, months_full[tm->tm_mon - 1]);
***************
*** 1941,1955 ****
                  if (!tm->tm_mon)
                      break;
                  if (S_TM(n->suffix))
!                 {
!                     strcpy(workbuff, localized_abbrev_months[tm->tm_mon - 1]);
!                     sprintf(s, "%*s", 0, str_toupper(workbuff));
!                 }
                  else
!                 {
!                     strcpy(workbuff, months[tm->tm_mon - 1]);
!                     sprintf(s, "%*s", 0, str_toupper(workbuff));
!                 }
                  s += strlen(s);
                  break;
              case DCH_Mon:
--- 1930,1938 ----
                  if (!tm->tm_mon)
                      break;
                  if (S_TM(n->suffix))
!                     strcpy(s, str_toupper(localized_abbrev_months[tm->tm_mon - 1]));
                  else
!                     strcpy(s, str_toupper(months[tm->tm_mon - 1]));
                  s += strlen(s);
                  break;
              case DCH_Mon:
***************
*** 1957,1970 ****
                  if (!tm->tm_mon)
                      break;
                  if (S_TM(n->suffix))
!                 {
!                     strcpy(workbuff, localized_abbrev_months[tm->tm_mon - 1]);
!                     sprintf(s, "%*s", 0, str_initcap(workbuff));
!                 }
                  else
-                 {
                      strcpy(s, months[tm->tm_mon - 1]);
-                 }
                  s += strlen(s);
                  break;
              case DCH_mon:
--- 1940,1948 ----
                  if (!tm->tm_mon)
                      break;
                  if (S_TM(n->suffix))
!                     strcpy(s, str_initcap(localized_abbrev_months[tm->tm_mon - 1]));
                  else
                      strcpy(s, months[tm->tm_mon - 1]);
                  s += strlen(s);
                  break;
              case DCH_mon:
***************
*** 1972,1981 ****
                  if (!tm->tm_mon)
                      break;
                  if (S_TM(n->suffix))
!                 {
!                     strcpy(workbuff, localized_abbrev_months[tm->tm_mon - 1]);
!                     sprintf(s, "%*s", 0, str_tolower(workbuff));
!                 }
                  else
                  {
                      strcpy(s, months[tm->tm_mon - 1]);
--- 1950,1956 ----
                  if (!tm->tm_mon)
                      break;
                  if (S_TM(n->suffix))
!                     strcpy(s, str_tolower(localized_abbrev_months[tm->tm_mon - 1]));
                  else
                  {
                      strcpy(s, months[tm->tm_mon - 1]);
***************
*** 1992,2001 ****
              case DCH_DAY:
                  INVALID_FOR_INTERVAL;
                  if (S_TM(n->suffix))
!                 {
!                     strcpy(workbuff, localized_full_days[tm->tm_wday]);
!                     sprintf(s, "%*s", 0, str_toupper(workbuff));
!                 }
                  else
                  {
                      strcpy(workbuff, days[tm->tm_wday]);
--- 1967,1973 ----
              case DCH_DAY:
                  INVALID_FOR_INTERVAL;
                  if (S_TM(n->suffix))
!                     strcpy(s, str_toupper(localized_full_days[tm->tm_wday]));
                  else
                  {
                      strcpy(workbuff, days[tm->tm_wday]);
***************
*** 2006,2028 ****
              case DCH_Day:
                  INVALID_FOR_INTERVAL;
                  if (S_TM(n->suffix))
!                 {
!                     strcpy(workbuff, localized_full_days[tm->tm_wday]);
!                     sprintf(s, "%*s", 0, str_initcap(workbuff));
!                 }
                  else
-                 {
                      sprintf(s, "%*s", S_FM(n->suffix) ? 0 : -9, days[tm->tm_wday]);
-                 }
                  s += strlen(s);
                  break;
              case DCH_day:
                  INVALID_FOR_INTERVAL;
                  if (S_TM(n->suffix))
!                 {
!                     strcpy(workbuff, localized_full_days[tm->tm_wday]);
!                     sprintf(s, "%*s", 0, str_tolower(workbuff));
!                 }
                  else
                  {
                      sprintf(s, "%*s", S_FM(n->suffix) ? 0 : -9, days[tm->tm_wday]);
--- 1978,1992 ----
              case DCH_Day:
                  INVALID_FOR_INTERVAL;
                  if (S_TM(n->suffix))
!                     strcpy(s, str_initcap(localized_full_days[tm->tm_wday]));
                  else
                      sprintf(s, "%*s", S_FM(n->suffix) ? 0 : -9, days[tm->tm_wday]);
                  s += strlen(s);
                  break;
              case DCH_day:
                  INVALID_FOR_INTERVAL;
                  if (S_TM(n->suffix))
!                     strcpy(s, str_tolower(localized_full_days[tm->tm_wday]));
                  else
                  {
                      sprintf(s, "%*s", S_FM(n->suffix) ? 0 : -9, days[tm->tm_wday]);
***************
*** 2033,2069 ****
              case DCH_DY:
                  INVALID_FOR_INTERVAL;
                  if (S_TM(n->suffix))
!                 {
!                     strcpy(workbuff, localized_abbrev_days[tm->tm_wday]);
!                     sprintf(s, "%*s", 0, str_toupper(workbuff));
!                 }
                  else
!                 {
!                     strcpy(workbuff, days_short[tm->tm_wday]);
!                     sprintf(s, "%*s", 0, str_toupper(workbuff));
!                 }
                  s += strlen(s);
                  break;
              case DCH_Dy:
                  INVALID_FOR_INTERVAL;
                  if (S_TM(n->suffix))
!                 {
!                     strcpy(workbuff, localized_abbrev_days[tm->tm_wday]);
!                     sprintf(s, "%*s", 0, str_initcap(workbuff));
!                 }
                  else
-                 {
                      strcpy(s, days_short[tm->tm_wday]);
-                 }
                  s += strlen(s);
                  break;
              case DCH_dy:
                  INVALID_FOR_INTERVAL;
                  if (S_TM(n->suffix))
!                 {
!                     strcpy(workbuff, localized_abbrev_days[tm->tm_wday]);
!                     sprintf(s, "%*s", 0, str_tolower(workbuff));
!                 }
                  else
                  {
                      strcpy(s, days_short[tm->tm_wday]);
--- 1997,2019 ----
              case DCH_DY:
                  INVALID_FOR_INTERVAL;
                  if (S_TM(n->suffix))
!                     strcpy(s, str_toupper(localized_abbrev_days[tm->tm_wday]));
                  else
!                     strcpy(s, str_toupper(days_short[tm->tm_wday]));
                  s += strlen(s);
                  break;
              case DCH_Dy:
                  INVALID_FOR_INTERVAL;
                  if (S_TM(n->suffix))
!                     strcpy(s, str_initcap(localized_abbrev_days[tm->tm_wday]));
                  else
                      strcpy(s, days_short[tm->tm_wday]);
                  s += strlen(s);
                  break;
              case DCH_dy:
                  INVALID_FOR_INTERVAL;
                  if (S_TM(n->suffix))
!                     strcpy(s, str_tolower(localized_abbrev_days[tm->tm_wday]));
                  else
                  {
                      strcpy(s, days_short[tm->tm_wday]);

pgsql-patches by date:

Previous
From: Tom Lane
Date:
Subject: Re: libpq object hooks (libpq events)
Next
From: Andrew Chernow
Date:
Subject: Re: libpq object hooks (libpq events)