Changeset 388

Show
Ignore:
Timestamp:
12/08/07 18:59:21 (1 year ago)
Author:
gbooker
Message:

Fixed issue with no posters found causing an exception.
Fixes #26

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/SapphireMovieImporter.m

    r376 r388  
    221221        { 
    222222                /* IMDB had the wrong release year link, see if IMP Tried to redirect*/ 
    223                 NSString * newPosterPageLink=[[root objectsForXQuery:IMP_LINK_REDIRECT_XPATH error:&error]objectAtIndex:0] ; 
    224                 NSScanner *trimmer=[NSScanner scannerWithString:newPosterPageLink]; 
    225                 [trimmer scanUpToString:@"URL=.." intoString:&yearPathComponent]; 
    226                 newPosterPageLink=[newPosterPageLink substringFromIndex:[yearPathComponent length]+6]; 
    227                 yearPathComponent=[newPosterPageLink stringByDeletingLastPathComponent]; 
    228                 url=[NSURL URLWithString:[NSString stringWithFormat:@"http://www.IMPAwards.com%@",newPosterPageLink]] ; 
    229                 document = [[NSXMLDocument alloc] initWithContentsOfURL:url options:NSXMLDocumentTidyHTML error:&error]; 
    230                 root = [document rootElement]; 
    231                 results = [root objectsForXQuery:IMP_POSTER_CANDIDATES_XPATH error:&error]; 
     223                NSArray *newPosterPageLinkArray = [root objectsForXQuery:IMP_LINK_REDIRECT_XPATH error:&error]; 
     224                if([newPosterPageLinkArray count]) 
     225                { 
     226                        NSString * newPosterPageLink=[newPosterPageLinkArray objectAtIndex:0] ; 
     227                        NSScanner *trimmer=[NSScanner scannerWithString:newPosterPageLink]; 
     228                        [trimmer scanUpToString:@"URL=.." intoString:&yearPathComponent]; 
     229                        newPosterPageLink=[newPosterPageLink substringFromIndex:[yearPathComponent length]+6]; 
     230                        yearPathComponent=[newPosterPageLink stringByDeletingLastPathComponent]; 
     231                        url=[NSURL URLWithString:[NSString stringWithFormat:@"http://www.IMPAwards.com%@",newPosterPageLink]] ; 
     232                        document = [[NSXMLDocument alloc] initWithContentsOfURL:url options:NSXMLDocumentTidyHTML error:&error]; 
     233                        root = [document rootElement]; 
     234                        results = [root objectsForXQuery:IMP_POSTER_CANDIDATES_XPATH error:&error];                      
     235                } 
    232236        } 
    233237 
     
    598602} 
    599603 
    600 - (BOOL) importMetaData:(SapphireFileMetaData *)metaData 
     604- (BOOL) importMetaData:(id <SapphireFileMetaDataProtocol>)metaData 
    601605{ 
    602606        currentData = metaData; 
     
    671675                        else posters=nil ; 
    672676                } 
    673                 if(posters != nil
     677                if([posters count]
    674678                { 
    675679                        [dataMenu pause]; 
     
    698702                        [dataMenu resume]; 
    699703                } 
    700         }       
     704        } 
    701705        if(selectedPoster && [dict objectForKey:IMP_POSTERS_KEY]) 
    702706        {