Why do I have two instances of NSWindowController for the one window?
===

I load a window programatically, as follows:

    OddsWindowController *const controller = [[OddsWindowController alloc] initWithWindowNibName:@"OddsWindow"];

In OddsWindowController, a subclass of NSWindowController, I'm logging self:


    - (IBAction)showOdds:(id)sender {
        NSLog(@"self = %@", self);
    }
    
    - (void)windowDidLoad {
        NSLog(@"self = %@", self);
    }


The two different log statements return different values for self, which implies I have two instances of my NSWindowController. What could be causing this? How can I stop this?


