All pastes #968366 Raw Edit

Someone

public text v1 · immutable
·published 2008-04-02 23:59 UTC
rendered paste body
-(void)awakeFromNib
{	

}
-(void)updateString:(NSNotification *)arg
{
	NSData *data = [[arg userInfo] objectForKey:NSFileHandleNotificationDataItem];
	NSString *dataAsString = [[NSString alloc] initWithData:data encoding:NSASCIIStringEncoding];
	if(data && [data length])
		incomingString = [[incomingString stringByAppendingString:dataAsString] mutableCopy];
	[box setString:incomingString];
	[box scrollRangeToVisible:NSMakeRange([[box textStorage] length], 0)];
	[outData readInBackgroundAndNotify];
}
-(void)taskCompleted:(NSNotification *)arg
{
	[nCenter removeObserver:self];
}
-(void)launchApp:(id)sender
{
	NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];	
	incomingString = [[NSMutableString alloc] init];
	
	NSTask *task = [[[NSTask alloc] init] autorelease];
	[nCenter addObserver:self selector:@selector(taskCompleted:) name:NSTaskDidTerminateNotification object:task];
	NSPipe *oPipe = [NSPipe pipe];
	[task setArguments:[NSArray arrayWithObjects:@"filelist", @"114.ipsw", @"pwnt.ipsw", nil]];
	[task setLaunchPath:[[NSBundle mainBundle] pathForResource:@"run" ofType:@"sh"]];
	[task setStandardOutput:oPipe];
	outData = [oPipe fileHandleForReading];
	[nCenter addObserver:self selector:@selector(updateString:) name:NSFileHandleReadCompletionNotification object:outData];
	[task launch];
	[outData readInBackgroundAndNotify];
	
	[pool drain];
}