Skip to content

Commit 520a42b

Browse files
committed
Use PyUnicode_FromFormat instead of sprintf
1 parent 411d0aa commit 520a42b

File tree

2 files changed

+3
-17
lines changed

2 files changed

+3
-17
lines changed

pendulum/_extensions/_helpers.c

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -238,10 +238,7 @@ static int Diff_init(Diff *self, PyObject *args, PyObject *kwargs)
238238
*/
239239
static PyObject *Diff_repr(Diff *self)
240240
{
241-
char repr[82] = {0};
242-
243-
sprintf(
244-
repr,
241+
return PyUnicode_FromFormat(
245242
"%d years %d months %d days %d hours %d minutes %d seconds %d microseconds",
246243
self->years,
247244
self->months,
@@ -250,8 +247,6 @@ static PyObject *Diff_repr(Diff *self)
250247
self->minutes,
251248
self->seconds,
252249
self->microseconds);
253-
254-
return PyUnicode_FromString(repr);
255250
}
256251

257252
/*

pendulum/parsing/_iso8601.c

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -228,7 +228,6 @@ static PyObject *FixedOffset_tzname(FixedOffset *self, PyObject *args) {
228228
return PyUnicode_FromString(self->tzname);
229229
}
230230

231-
char tzname_[7] = {0};
232231
char sign = '+';
233232
int offset = self->offset;
234233

@@ -237,15 +236,12 @@ static PyObject *FixedOffset_tzname(FixedOffset *self, PyObject *args) {
237236
offset *= -1;
238237
}
239238

240-
sprintf(
241-
tzname_,
239+
return PyUnicode_FromFormat(
242240
"%c%02d:%02d",
243241
sign,
244242
offset / SECS_PER_HOUR,
245243
offset / SECS_PER_MIN % SECS_PER_MIN
246244
);
247-
248-
return PyUnicode_FromString(tzname_);
249245
}
250246

251247
/*
@@ -368,10 +364,7 @@ static int Duration_init(Duration *self, PyObject *args, PyObject *kwargs) {
368364
* )
369365
*/
370366
static PyObject *Duration_repr(Duration *self) {
371-
char repr[82] = {0};
372-
373-
sprintf(
374-
repr,
367+
return PyUnicode_FromFormat(
375368
"%d years %d months %d weeks %d days %d hours %d minutes %d seconds %d microseconds",
376369
self->years,
377370
self->months,
@@ -382,8 +375,6 @@ static PyObject *Duration_repr(Duration *self) {
382375
self->seconds,
383376
self->microseconds
384377
);
385-
386-
return PyUnicode_FromString(repr);
387378
}
388379

389380
/*

0 commit comments

Comments
 (0)