Использование Blocks приводит к сбою приложения в iPhone Simulator 4.3 / XCode 4.2 и 4.0.2

У кого-нибудь еще возникли проблемы с симулятором iPhone 4.3 в XCode 4.2 (лев) или 4.0.2?

У меня есть код, который давно работает, тестируется и находится в производстве, в котором используются блоки для указать действия завершения. Например, я использую анимацию UIView, чтобы затемнить некоторый текст поверх метки следующим образом:

[UIView animateWithDuration: 0.0 
                      delay: 0.0 
                    options: (UIViewAnimationOptionCurveEaseInOut | UIViewAnimationOptionTransitionNone)
                 animations: ^{

                     videoTextLabel1.alpha = 0.0;
                     videoTextLabel2.alpha = 0.0;
                     videoTextLabel3.alpha = 0.0;
                 }

                 completion: ^(BOOL completed) {
                     [self fadeInNextMeditationLine: 0];
                 }];

Я надежно получаю EXEC_BAD_ACCESS в симуляторе - никогда не проблема на устройстве.

В другом месте я использую собственное завершение реализация блока для принятия мер после того, как пользователь закрыл модальное представление.

    ValuePickerController *controller = 
    [[ValuePickerController alloc] 
        initWithNibName: kValuePickerXIBFileName
        bundle: nil
        labelText: @"prompt")
        value: alertSettings.frequency
        minimumValue: kMinimumFrequency
        maximumValue: kMaximumFrequency
     completionBlock: ^(NSInteger newValue) {
         [self updateFrequencyText: newValue];
         [self changeFrequencySetting];
     }];

NSZombies не отображаются, и анализатор работает без ошибок. К тому же этот код находится в производстве 6 месяцев без сбоев.

У кого-нибудь еще была эта проблема? Это происходит с тех пор, как я обновил XCode.

7
задан David Hersey 11 September 2011 в 23:55
поделиться