Skip to content

Commit 0ab3595

Browse files
committed
Rename strtoi() to strtoint().
NetBSD has seen fit to invent a libc function named strtoi(), which conflicts with the long-established static functions of the same name in datetime.c and ecpg's interval.c. While muttering darkly about intrusions on application namespace, we'll rename our functions to avoid the conflict. Back-patch to all supported branches, since this would affect attempts to build any of them on recent NetBSD. Thomas Munro
1 parent b87b2f4 commit 0ab3595

File tree

2 files changed

+17
-17
lines changed

2 files changed

+17
-17
lines changed

src/backend/utils/adt/datetime.c

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -256,10 +256,10 @@ static const datetkn *abbrevcache[MAXDATEFIELDS] = {NULL};
256256

257257

258258
/*
259-
* strtoi --- just like strtol, but returns int not long
259+
* strtoint --- just like strtol, but returns int not long
260260
*/
261261
static int
262-
strtoi(const char *nptr, char **endptr, int base)
262+
strtoint(const char *nptr, char **endptr, int base)
263263
{
264264
long val;
265265

@@ -898,7 +898,7 @@ DecodeDateTime(char **field, int *ftype, int nf,
898898
return DTERR_BAD_FORMAT;
899899

900900
errno = 0;
901-
val = strtoi(field[i], &cp, 10);
901+
val = strtoint(field[i], &cp, 10);
902902
if (errno == ERANGE || val < 0)
903903
return DTERR_FIELD_OVERFLOW;
904904

@@ -1062,7 +1062,7 @@ DecodeDateTime(char **field, int *ftype, int nf,
10621062
int val;
10631063

10641064
errno = 0;
1065-
val = strtoi(field[i], &cp, 10);
1065+
val = strtoint(field[i], &cp, 10);
10661066
if (errno == ERANGE)
10671067
return DTERR_FIELD_OVERFLOW;
10681068

@@ -1929,7 +1929,7 @@ DecodeTimeOnly(char **field, int *ftype, int nf,
19291929
}
19301930

19311931
errno = 0;
1932-
val = strtoi(field[i], &cp, 10);
1932+
val = strtoint(field[i], &cp, 10);
19331933
if (errno == ERANGE)
19341934
return DTERR_FIELD_OVERFLOW;
19351935

@@ -2600,13 +2600,13 @@ DecodeTime(char *str, int fmask, int range,
26002600
*tmask = DTK_TIME_M;
26012601

26022602
errno = 0;
2603-
tm->tm_hour = strtoi(str, &cp, 10);
2603+
tm->tm_hour = strtoint(str, &cp, 10);
26042604
if (errno == ERANGE)
26052605
return DTERR_FIELD_OVERFLOW;
26062606
if (*cp != ':')
26072607
return DTERR_BAD_FORMAT;
26082608
errno = 0;
2609-
tm->tm_min = strtoi(cp + 1, &cp, 10);
2609+
tm->tm_min = strtoint(cp + 1, &cp, 10);
26102610
if (errno == ERANGE)
26112611
return DTERR_FIELD_OVERFLOW;
26122612
if (*cp == '\0')
@@ -2634,7 +2634,7 @@ DecodeTime(char *str, int fmask, int range,
26342634
else if (*cp == ':')
26352635
{
26362636
errno = 0;
2637-
tm->tm_sec = strtoi(cp + 1, &cp, 10);
2637+
tm->tm_sec = strtoint(cp + 1, &cp, 10);
26382638
if (errno == ERANGE)
26392639
return DTERR_FIELD_OVERFLOW;
26402640
if (*cp == '\0')
@@ -2684,7 +2684,7 @@ DecodeNumber(int flen, char *str, bool haveTextMonth, int fmask,
26842684
*tmask = 0;
26852685

26862686
errno = 0;
2687-
val = strtoi(str, &cp, 10);
2687+
val = strtoint(str, &cp, 10);
26882688
if (errno == ERANGE)
26892689
return DTERR_FIELD_OVERFLOW;
26902690
if (cp == str)
@@ -2963,21 +2963,21 @@ DecodeTimezone(char *str, int *tzp)
29632963
return DTERR_BAD_FORMAT;
29642964

29652965
errno = 0;
2966-
hr = strtoi(str + 1, &cp, 10);
2966+
hr = strtoint(str + 1, &cp, 10);
29672967
if (errno == ERANGE)
29682968
return DTERR_TZDISP_OVERFLOW;
29692969

29702970
/* explicit delimiter? */
29712971
if (*cp == ':')
29722972
{
29732973
errno = 0;
2974-
min = strtoi(cp + 1, &cp, 10);
2974+
min = strtoint(cp + 1, &cp, 10);
29752975
if (errno == ERANGE)
29762976
return DTERR_TZDISP_OVERFLOW;
29772977
if (*cp == ':')
29782978
{
29792979
errno = 0;
2980-
sec = strtoi(cp + 1, &cp, 10);
2980+
sec = strtoint(cp + 1, &cp, 10);
29812981
if (errno == ERANGE)
29822982
return DTERR_TZDISP_OVERFLOW;
29832983
}
@@ -3250,7 +3250,7 @@ DecodeInterval(char **field, int *ftype, int nf, int range,
32503250
}
32513251

32523252
errno = 0;
3253-
val = strtoi(field[i], &cp, 10);
3253+
val = strtoint(field[i], &cp, 10);
32543254
if (errno == ERANGE)
32553255
return DTERR_FIELD_OVERFLOW;
32563256

@@ -3259,7 +3259,7 @@ DecodeInterval(char **field, int *ftype, int nf, int range,
32593259
/* SQL "years-months" syntax */
32603260
int val2;
32613261

3262-
val2 = strtoi(cp + 1, &cp, 10);
3262+
val2 = strtoint(cp + 1, &cp, 10);
32633263
if (errno == ERANGE || val2 < 0 || val2 >= MONTHS_PER_YEAR)
32643264
return DTERR_FIELD_OVERFLOW;
32653265
if (*cp != '\0')

src/interfaces/ecpg/pgtypeslib/interval.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
/* copy&pasted from .../src/backend/utils/adt/datetime.c */
1818
static int
19-
strtoi(const char *nptr, char **endptr, int base)
19+
strtoint(const char *nptr, char **endptr, int base)
2020
{
2121
long val;
2222

@@ -448,7 +448,7 @@ DecodeInterval(char **field, int *ftype, int nf, /* int range, */
448448
}
449449

450450
errno = 0;
451-
val = strtoi(field[i], &cp, 10);
451+
val = strtoint(field[i], &cp, 10);
452452
if (errno == ERANGE)
453453
return DTERR_FIELD_OVERFLOW;
454454

@@ -457,7 +457,7 @@ DecodeInterval(char **field, int *ftype, int nf, /* int range, */
457457
/* SQL "years-months" syntax */
458458
int val2;
459459

460-
val2 = strtoi(cp + 1, &cp, 10);
460+
val2 = strtoint(cp + 1, &cp, 10);
461461
if (errno == ERANGE || val2 < 0 || val2 >= MONTHS_PER_YEAR)
462462
return DTERR_FIELD_OVERFLOW;
463463
if (*cp != '\0')

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy