From ae3a827bf9b14c88bb7d52a19ad74bf0f074dc73 Mon Sep 17 00:00:00 2001 From: Gustavo Lopes Date: Mon, 23 Jul 2012 17:00:52 +0200 Subject: [PATCH] Leak caused by wrong and unreachable cleanup --- ext/intl/dateformat/dateformat_format.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/ext/intl/dateformat/dateformat_format.c b/ext/intl/dateformat/dateformat_format.c index d5a17f91cd..ffae15518b 100755 --- a/ext/intl/dateformat/dateformat_format.c +++ b/ext/intl/dateformat/dateformat_format.c @@ -108,6 +108,7 @@ static UDate internal_get_timestamp(IntlDateFormatter_object *dfo, second, mday; UCalendar *pcal; + UDate result; intl_error *err = &dfo->datef_data.error; #define INTL_GET_ELEM(elem) \ @@ -137,10 +138,11 @@ static UDate internal_get_timestamp(IntlDateFormatter_object *dfo, /* set the incoming values for the calendar */ ucal_setDateTime(pcal, year, month, mday, hour, minute, second, &INTL_DATA_ERROR_CODE(dfo)); /* actually, ucal_setDateTime cannot fail */ - + /* Fetch the timestamp from the UCalendar */ - return ucal_getMillis(pcal, &INTL_DATA_ERROR_CODE(dfo)); - udat_close(pcal); + result = ucal_getMillis(pcal, &INTL_DATA_ERROR_CODE(dfo)); + ucal_close(pcal); + return result; } -- 2.40.0