I would rewrite this such that each execution is represented by a value, and then perform logic upon `subscribeNext:`, like so:

```objc
[[self.viewModel.loginCommand.executionSignals
    flattenMap:^(RACSignal *execution) {
        // Sends RACUnit after the execution completes.
        return [[execution
            ignoreValues]
            concat:[RACSignal return:RACUnit.defaultUnit]];
    }]
    subscribeNext:^(id _) {
        @strongify(self);
        [self.presentingViewController dismissViewControllerAnimated:YES completion:nil];
    }];
```