Index 0 beyond bounds [0 .. 0], but not an empty array
===

I have a UITableView for an app I am creating that will show Movie Trailers and in my RootViewController.h file I have this code (well all of the relevant code needed is supplied here):

    @interface RootViewController : UITableViewController {
        NSMutableArray *listOfLinks;
    }

In my .m is this code:

    - (void)viewDidLoad {
        [super viewDidLoad];
	    listOfLinks = [[NSMutableArray alloc] init];
        NSURL *myurl2 = [NSURL URLWithString:@"http://website.com/movietrailers.plist"];
        NSDictionary *plistDict2 = [NSDictionary dictionaryWithContentsOfURL:myurl2];
        NSArray *plistArray2 = [plistDict2 objectForKey:@"MovieLinks"];
        NSDictionary *dic = [NSDictionary dictionaryWithObject:plistArray2 forKey:@"MovieLinks"];
        [listOfLinks addObject:dic];
        NSLog(@"%@", listOfLinks);
    }

    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
        NSURL *movieURL = [listOfLinks objectAtIndex:indexPath.row];
        MPMoviePlayerViewController *moviePlayer = [[MPMoviePlayerViewController alloc] initWithContentURL:movieURL];
        [self presentMoviePlayerViewControllerAnimated:moviePlayer];
        [moviePlayer release];
    }

But I am essentially getting the error that listOfLinks is empty. The error looks like this:

    Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayM objectAtIndex:]: index 6 beyond bounds [0 .. 0]'
When I NSLog the array it prints out it's strings. What is the reason for this? Thanks for your help!