iOS NSDate Сравнение работает иначе, когда 24-часовое время в настройках даты переключается между ON и OFF?

Команда, я сравниваю дату, которая сформирована из строки, используя NSDateFormatter, с системной датой iOS. Приведенный ниже оператор возвращает значение true, если для системных настроек времени и времени установлено 24-часовое время ВКЛ, но тот же код возвращает значение false, когда 24-часовое время отключено.

Проблемный код:

if ([(NSDate*)[NSDate date] compare:currDate] == NSOrderedAscending) {
     // -- Code -- This is executed only when the 4-Hour Time ON
 }

Я сбит с толку. Строка, с помощью которой я получаю дату в 24-часовом формате. Это проблема? Или что-нибудь еще?

Код форматирования даты:

-(NSDate *)getDateFromString:(NSString *)dateString{
    NSDateFormatter* fmt = [[NSDateFormatter alloc] init];
    [fmt setDateFormat:@"dd MMM yyyy hh:mm:ss"];
    [fmt setTimeZone:[NSTimeZone systemTimeZone]];
    [fmt setFormatterBehavior:NSDateFormatterBehaviorDefault];  
    return [fmt dateFromString:dateString];
}

Ответы на вопрос(2)

Ваш ответ на вопрос