Changeset 1197

Show
Ignore:
Timestamp:
02/28/2010 04:03:40 PM (2 years ago)
Author:
gbooker
Message:

Added autorelease pools to reduce temporary memory usage and made sure containing directory exists on a file download.

Location:
trunk/SapphireFrappliance
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • trunk/SapphireFrappliance/FRAppliance/SapphireURLLoader.m

    r1179 r1197  
    2020 
    2121#import "SapphireURLLoader.h" 
     22#import "NSFileManager-Extensions.h" 
    2223 
    2324#define MAX_WORKERS             10 
     
    8586        while((invoke = [invokeEnum nextObject]) != nil) 
    8687        { 
     88                NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; 
    8789                [invoke setArgument:&loadedObject atIndex:2]; 
    8890                [invoke invoke]; 
     91                [pool drain]; 
    8992        } 
    9093        [informers release]; 
     
    403406- (void)saveDataAtURL:(NSString *)url toFile:(NSString *)path 
    404407{ 
     408        [[NSFileManager defaultManager] constructPath:[path stringByDeletingLastPathComponent]]; 
    405409        [self loadDataURL:url withTarget:self selector:@selector(saveData:toFile:) object:path]; 
    406410} 
  • trunk/SapphireFrappliance/MetaDataImporting/SapphireScraper.m

    r1179 r1197  
    571571- (int)parseElement:(NSXMLElement *)element 
    572572{ 
     573        NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; 
    573574        NSArray *regexChildren = nil; 
    574575        NSString *value = nil; 
     
    602603         
    603604        [self parseExpression:element withInput:input intoDest:result andAppend:append]; 
     605        [pool drain]; 
    604606         
    605607        return result; 
     
    620622        } 
    621623        int dest = integerAttributeWithDefault(functionElement, @"dest", 1); 
    622         NSString *ret = scraperBuffers[dest - 1]; 
     624        NSString *ret = [[scraperBuffers[dest - 1] retain] autorelease]; 
    623625        if(booleanAttributeWithDefault(functionElement, @"clearbuffers", YES)) 
    624626                [self clearBuffers];