Updated everything else to ARC, and plugged a release cycle.

CQTexperiment
Chris Moeller 2016-05-05 13:05:39 -07:00
parent 80aa1b7e25
commit 0e3644177e
751 changed files with 72137 additions and 6104 deletions

View File

@ -1,11 +1,12 @@
#import "AppController.h"
#import "FileTreeController.h"
#import "FileTreeViewController.h"
#import "FileTreeOutlineView.h"
#import "PlaybackController.h"
#import "PlaylistController.h"
#import "PlaylistView.h"
#import "PlaylistEntry.h"
#import <NDHotKey/NDHotKeyEvent.h>
#import "AppleRemote.h"
#import "PlaylistLoader.h"
#import "OpenURLPanel.h"
#import "SpotlightWindowController.h"
@ -23,16 +24,16 @@
+ (void)initialize
{
// Register transformers
NSValueTransformer *stringToURLTransformer = [[[StringToURLTransformer alloc] init]autorelease];
NSValueTransformer *stringToURLTransformer = [[StringToURLTransformer alloc] init];
[NSValueTransformer setValueTransformer:stringToURLTransformer
forName:@"StringToURLTransformer"];
NSValueTransformer *fontSizetoLineHeightTransformer =
[[[FontSizetoLineHeightTransformer alloc] init]autorelease];
[[FontSizetoLineHeightTransformer alloc] init];
[NSValueTransformer setValueTransformer:fontSizetoLineHeightTransformer
forName:@"FontSizetoLineHeightTransformer"];
NSValueTransformer *miniModeMenuTitleTransformer = [[[MiniModeMenuTitleTransformer alloc] init] autorelease];
NSValueTransformer *miniModeMenuTitleTransformer = [[MiniModeMenuTitleTransformer alloc] init];
[NSValueTransformer setValueTransformer:miniModeMenuTitleTransformer
forName:@"MiniModeMenuTitleTransformer"];
}
@ -45,133 +46,12 @@
{
[self initDefaults];
remote = [[AppleRemote alloc] init];
[remote setDelegate: self];
queue = [[NSOperationQueue alloc]init];
}
return self;
}
- (void)dealloc
{
[queue release];
[expandedNodes release];
[super dealloc];
}
// Listen to the remote in exclusive mode, only when Cog is the active application
- (void)applicationDidBecomeActive:(NSNotification *)notification
{
if ([[NSUserDefaults standardUserDefaults] boolForKey:@"remoteEnabled"] && [[NSUserDefaults standardUserDefaults] boolForKey:@"remoteOnlyOnActive"]) {
[remote startListening: self];
}
}
- (void)applicationDidResignActive:(NSNotification *)notification
{
if ([[NSUserDefaults standardUserDefaults] boolForKey:@"remoteEnabled"] && [[NSUserDefaults standardUserDefaults] boolForKey:@"remoteOnlyOnActive"]) {
[remote stopListening: self];
}
}
/* Helper method for the remote control interface in order to trigger forward/backward and volume
increase/decrease as long as the user holds the left/right, plus/minus button */
- (void) executeHoldActionForRemoteButton: (NSNumber*) buttonIdentifierNumber
{
static int incrementalSearch = 1;
if (remoteButtonHeld)
{
switch([buttonIdentifierNumber intValue])
{
case kRemoteButtonRight_Hold:
[playbackController seekForward:incrementalSearch];
break;
case kRemoteButtonLeft_Hold:
[playbackController seekBackward:incrementalSearch];
break;
case kRemoteButtonVolume_Plus_Hold:
//Volume Up
[playbackController volumeUp:self];
break;
case kRemoteButtonVolume_Minus_Hold:
//Volume Down
[playbackController volumeDown:self];
break;
}
if (remoteButtonHeld)
{
/* there should perhaps be a max amount that incrementalSearch can
be, so as to not start skipping ahead unreasonable amounts, even
in very long files. */
if ((incrementalSearch % 3) == 0)
incrementalSearch += incrementalSearch/3;
else
incrementalSearch++;
/* trigger event */
[self performSelector:@selector(executeHoldActionForRemoteButton:)
withObject:buttonIdentifierNumber
afterDelay:0.25];
}
}
else
// if we're not holding the search button, reset the incremental search
// variable, making it ready for another search
incrementalSearch = 1;
}
/* Apple Remote callback */
- (void) appleRemoteButton: (AppleRemoteEventIdentifier)buttonIdentifier
pressedDown: (BOOL) pressedDown
clickCount: (unsigned int) count
{
switch( buttonIdentifier )
{
case k2009RemoteButtonPlay:
case kRemoteButtonPlay:
[self clickPlay];
break;
case kRemoteButtonVolume_Plus:
[playbackController volumeUp:self];
break;
case kRemoteButtonVolume_Minus:
[playbackController volumeDown:self];
break;
case kRemoteButtonRight:
[self clickNext];
break;
case kRemoteButtonLeft:
[self clickPrev];
break;
case kRemoteButtonRight_Hold:
case kRemoteButtonLeft_Hold:
case kRemoteButtonVolume_Plus_Hold:
case kRemoteButtonVolume_Minus_Hold:
/* simulate an event as long as the user holds the button */
remoteButtonHeld = pressedDown;
if( pressedDown )
{
NSNumber* buttonIdentifierNumber = [NSNumber numberWithInt: buttonIdentifier];
[self performSelector:@selector(executeHoldActionForRemoteButton:)
withObject:buttonIdentifierNumber];
}
break;
case kRemoteButtonMenu:
break;
case k2009RemoteButtonFullscreen:
[mainWindow toggleFullScreen:nil];
break;
default:
/* Add here whatever you want other buttons to do */
break;
}
}
- (IBAction)openFiles:(id)sender
{
NSOpenPanel *p;
@ -256,12 +136,7 @@ increase/decrease as long as the user holds the left/right, plus/minus button */
[self registerHotKeys];
[spotlightWindowController init];
//Init Remote
if ([[NSUserDefaults standardUserDefaults] boolForKey:@"remoteEnabled"] && ![[NSUserDefaults standardUserDefaults] boolForKey:@"remoteOnlyOnActive"]) {
[remote startListening:self];
}
(void) [spotlightWindowController init];
[[playlistController undoManager] disableUndoRegistration];
NSString *basePath = [@"~/Library/Application Support/Cog/" stringByExpandingTildeInPath];
@ -479,9 +354,6 @@ increase/decrease as long as the user holds the left/right, plus/minus button */
[userDefaultsValuesDict setObject:[NSNumber numberWithInt:8] forKey:@"hotKeySpamKeyCode"];
[userDefaultsValuesDict setObject:[NSNumber numberWithInt:(NSControlKeyMask|NSCommandKeyMask)] forKey:@"hotKeySpamModifiers"];
[userDefaultsValuesDict setObject:[NSNumber numberWithBool:YES] forKey:@"remoteEnabled"];
[userDefaultsValuesDict setObject:[NSNumber numberWithBool:YES] forKey:@"remoteOnlyOnActive"];
NSString * feedURLdefault = @"https://www.kode54.net/cog/mercury.xml";
NSString * feedURLbroken = @"https://kode54.net/cog/stable.xml";
NSString * feedURLbroken2 = @"https://kode54.net/cog/mercury.xml";
@ -518,9 +390,6 @@ increase/decrease as long as the user holds the left/right, plus/minus button */
[[NSUserDefaultsController sharedUserDefaultsController] addObserver:self forKeyPath:@"values.hotKeyNextKeyCode" options:0 context:nil];
[[NSUserDefaultsController sharedUserDefaultsController] addObserver:self
forKeyPath:@"values.hotKeySpamKeyCode" options:0 context:nil];
[[NSUserDefaultsController sharedUserDefaultsController] addObserver:self forKeyPath:@"values.remoteEnabled" options:0 context:nil];
[[NSUserDefaultsController sharedUserDefaultsController] addObserver:self forKeyPath:@"values.remoteOnlyOnActive" options:0 context:nil];
}
- (void) observeValueForKeyPath:(NSString *)keyPath
@ -540,25 +409,10 @@ increase/decrease as long as the user holds the left/right, plus/minus button */
else if ([keyPath isEqualToString:@"values.hotKeySpamKeyCode"]) {
[self registerHotKeys];
}
else if ([keyPath isEqualToString:@"values.remoteEnabled"] || [keyPath isEqualToString:@"values.remoteOnlyOnActive"]) {
if([[NSUserDefaults standardUserDefaults] boolForKey:@"remoteEnabled"]) {
BOOL onlyOnActive = [[NSUserDefaults standardUserDefaults] boolForKey:@"remoteOnlyOnActive"];
if (!onlyOnActive || [NSApp isActive]) {
[remote startListening: self];
}
if (onlyOnActive && ![NSApp isActive]) { //Setting a preference without being active? *shrugs*
[remote stopListening: self];
}
}
else {
[remote stopListening: self];
}
}
}
- (void)registerHotKeys
{
[playHotKey release];
if ([[[[NSUserDefaultsController sharedUserDefaultsController] defaults] objectForKey:@"hotKeyPlayKeyCode"] intValue]) {
playHotKey = [[NDHotKeyEvent alloc]
initWithKeyCode: [[[[NSUserDefaultsController sharedUserDefaultsController] defaults] objectForKey:@"hotKeyPlayKeyCode"] intValue]
@ -568,7 +422,6 @@ increase/decrease as long as the user holds the left/right, plus/minus button */
[playHotKey setEnabled:YES];
}
[prevHotKey release];
if ([[[[NSUserDefaultsController sharedUserDefaultsController] defaults] objectForKey:@"hotKeyPreviousKeyCode"] intValue]) {
prevHotKey = [[NDHotKeyEvent alloc]
initWithKeyCode: [[NSUserDefaults standardUserDefaults] integerForKey:@"hotKeyPreviousKeyCode"]
@ -578,7 +431,6 @@ increase/decrease as long as the user holds the left/right, plus/minus button */
[prevHotKey setEnabled:YES];
}
[nextHotKey release];
if ([[[[NSUserDefaultsController sharedUserDefaultsController] defaults] objectForKey:@"hotKeyNextKeyCode"] intValue]) {
nextHotKey = [[NDHotKeyEvent alloc]
initWithKeyCode: [[NSUserDefaults standardUserDefaults] integerForKey:@"hotKeyNextKeyCode"]
@ -588,7 +440,6 @@ increase/decrease as long as the user holds the left/right, plus/minus button */
[nextHotKey setEnabled:YES];
}
[spamHotKey release];
if ([[[[NSUserDefaultsController sharedUserDefaultsController] defaults] objectForKey:@"hotKeySpamKeyCode"] intValue]) {
spamHotKey = [[NDHotKeyEvent alloc]
initWithKeyCode: [[NSUserDefaults standardUserDefaults] integerForKey:@"hotKeySpamKeyCode"]
@ -605,7 +456,6 @@ increase/decrease as long as the user holds the left/right, plus/minus button */
if (nil == nowPlaying)
{
nowPlaying = [[NowPlayingBarController alloc] init];
[nowPlaying retain];
NSView *contentView = [mainWindow contentView];
NSRect contentRect = [contentView frame];
@ -638,7 +488,6 @@ increase/decrease as long as the user holds the left/right, plus/minus button */
// [mainView setFrameOrigin:NSMakePoint(0.0, 0.0)];
[[nowPlaying view] removeFromSuperview];
[nowPlaying release];
nowPlaying = nil;
}
}

View File

@ -8,6 +8,7 @@
#import "DockIconController.h"
#import <CogAudio/Status.h>
#import "PlaybackController.h"
@implementation DockIconController
@ -15,8 +16,8 @@ static NSString *DockIconPlaybackStatusObservationContext = @"DockIconPlaybackSt
- (void)startObserving
{
[playbackController addObserver:self forKeyPath:@"playbackStatus" options:(NSKeyValueObservingOptionNew | NSKeyValueObservingOptionInitial) context:DockIconPlaybackStatusObservationContext];
[[NSUserDefaultsController sharedUserDefaultsController] addObserver:self forKeyPath:@"values.colorfulDockIcons" options:0 context:DockIconPlaybackStatusObservationContext];
[playbackController addObserver:self forKeyPath:@"playbackStatus" options:(NSKeyValueObservingOptionNew | NSKeyValueObservingOptionInitial) context:(__bridge void * _Nullable)(DockIconPlaybackStatusObservationContext)];
[[NSUserDefaultsController sharedUserDefaultsController] addObserver:self forKeyPath:@"values.colorfulDockIcons" options:0 context:(__bridge void * _Nullable)(DockIconPlaybackStatusObservationContext)];
}
- (void)stopObserving
@ -69,12 +70,11 @@ static NSString *getBadgeName(NSString *baseName, BOOL colorfulIcons)
[newDockImage unlockFocus];
[NSApp setApplicationIconImage:newDockImage];
[newDockImage release];
}
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
{
if ([DockIconPlaybackStatusObservationContext isEqual:context])
if ([DockIconPlaybackStatusObservationContext isEqual:(__bridge id)(context)])
{
if ([keyPath isEqualToString:@"playbackStatus"])
{
@ -102,9 +102,6 @@ static NSString *getBadgeName(NSString *baseName, BOOL colorfulIcons)
- (void)dealloc
{
[self stopObserving];
[dockImage release];
[super dealloc];
}
@end

View File

@ -66,15 +66,6 @@ typedef enum
return self;
}
- (void)dealloc
{
[queue release];
[entry release];
[super dealloc];
}
- (NSDictionary *)fillNotificationDictionary:(PlaylistEntry *)pe status:(TrackStatus)status
{
NSMutableDictionary *dict = [NSMutableDictionary dictionary];
@ -105,8 +96,7 @@ typedef enum
- (void)performPlaybackDidBeginActions:(PlaylistEntry *)pe
{
if (NO == [pe error]) {
[entry release];
entry = [pe retain];
entry = pe;
[[NSDistributedNotificationCenter defaultCenter] postNotificationName:TrackNotification object:nil userInfo:[self fillNotificationDictionary:pe status:TrackPlaying] deliverImmediately:YES];
@ -180,7 +170,6 @@ typedef enum
- (void)performPlaybackDidStopActions
{
[[NSDistributedNotificationCenter defaultCenter] postNotificationName:TrackNotification object:nil userInfo:[self fillNotificationDictionary:entry status:TrackStopped] deliverImmediately:YES];
[entry release];
entry = nil;
if([[NSUserDefaults standardUserDefaults] boolForKey:@"enableAudioScrobbler"]) {
[scrobbler stop];
@ -220,28 +209,24 @@ typedef enum
{
NSOperation *op = [[NSInvocationOperation alloc] initWithTarget:self selector:@selector(performPlaybackDidBeginActions:) object:[notification object]];
[queue addOperation:op];
[op release];
}
- (void)playbackDidPause:(NSNotification *)notification
{
NSOperation *op = [[NSInvocationOperation alloc] initWithTarget:self selector:@selector(performPlaybackDidPauseActions) object:nil];
[queue addOperation:op];
[op release];
}
- (void)playbackDidResume:(NSNotification *)notification
{
NSOperation *op = [[NSInvocationOperation alloc] initWithTarget:self selector:@selector(performPlaybackDidResumeActions) object:nil];
[queue addOperation:op];
[op release];
}
- (void)playbackDidStop:(NSNotification *)notification
{
NSOperation *op = [[NSInvocationOperation alloc] initWithTarget:self selector:@selector(performPlaybackDidStopActions) object:nil];
[queue addOperation:op];
[op release];
}
- (NSDictionary *) registrationDictionaryForGrowl

View File

@ -13,6 +13,6 @@
}
+ (NSDictionary *)putMetadataInURL:(NSURL *)url;
+ (int)putMetadataInURL:(NSURL *)url;
@end

View File

@ -10,7 +10,7 @@
#import "PluginController.h"
@implementation AudioMetadataWriter
+ (NSDictionary *)putMetadataInURL:(NSURL *)url
+ (int)putMetadataInURL:(NSURL *)url
{
return [[PluginController sharedPluginController] putMetadataInURL:url];
}

View File

@ -24,7 +24,7 @@
if (self)
{
output = NULL;
bufferChain = NULL;
bufferChain = nil;
outputLaunched = NO;
endOfInputReached = NO;
@ -55,10 +55,6 @@
- (void)play:(NSURL *)url withUserInfo:(id)userInfo withRGInfo:(NSDictionary *)rgi startPaused:(BOOL)paused
{
if (output)
{
[output release];
}
output = [[OutputNode alloc] initWithController:self previous:nil];
[output setup];
[output setVolume: volume];
@ -73,7 +69,7 @@
{
[bufferChain setShouldContinue:NO];
[bufferChain release];
bufferChain = nil;
}
}
@ -82,7 +78,6 @@
while (![bufferChain open:url withOutputFormat:[output format] withRGInfo:rgi])
{
[bufferChain release];
bufferChain = nil;
[self requestNextStream: userInfo];
@ -173,16 +168,10 @@
- (void)setNextStream:(NSURL *)url withUserInfo:(id)userInfo withRGInfo:(NSDictionary *)rgi
{
[url retain];
[nextStream release];
nextStream = url;
[userInfo retain];
[nextStreamUserInfo release];
nextStreamUserInfo = userInfo;
[rgi retain];
[nextStreamRGInfo release];
nextStreamRGInfo = rgi;
}
@ -261,10 +250,8 @@
BufferChain *newChain = nil;
nextStreamUserInfo = [sender userInfo];
[nextStreamUserInfo retain]; //Retained because when setNextStream is called, it will be released!!!
nextStreamRGInfo = [sender rgInfo];
[nextStreamRGInfo retain];
[self requestNextStream: nextStreamUserInfo];
@ -293,29 +280,31 @@
[self addChainToQueue:newChain];
DLog(@"TRACK SET!!! %@", newChain);
//Keep on-playin
[newChain release];
newChain = nil;
return NO;
}
}
lastChain = nil;
while (![newChain open:nextStream withOutputFormat:[output format] withRGInfo:nextStreamRGInfo])
{
if (nextStream == nil)
{
[newChain release];
newChain = nil;
return YES;
}
[newChain release];
newChain = nil;
[self requestNextStream: nextStreamUserInfo];
newChain = [[BufferChain alloc] initWithController:self];
}
[self addChainToQueue:newChain];
[newChain release];
newChain = nil;
// I'm stupid and can't hold too much stuff in my head all at once, so writing it here.
//
@ -347,17 +336,13 @@
//End of playlist
[self stop];
[bufferChain release];
bufferChain = nil;
return;
}
BufferChain *oldChain = bufferChain;
bufferChain = nil;
bufferChain = [chainQueue objectAtIndex:0];
[oldChain release];
[bufferChain retain];
[chainQueue removeObjectAtIndex:0];
DLog(@"New!!! %@ %@", bufferChain, [[bufferChain inputNode] decoder]);
@ -370,30 +355,29 @@
- (void)sendDelegateMethod:(SEL)selector withObject:(id)obj waitUntilDone:(BOOL)wait
{
NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:[delegate methodSignatureForSelector:selector]];
[invocation setTarget:delegate];
[invocation setSelector:selector];
[invocation setArgument:&self atIndex:2]; //Indexes start at 2, the first being self, the second being command.
[invocation setArgument:&self atIndex:2];
[invocation setArgument:&obj atIndex:3];
[invocation retainArguments];
[self performSelectorOnMainThread:@selector(sendDelegateMethodMainThread:) withObject:invocation waitUntilDone:wait];
[invocation performSelectorOnMainThread:@selector(invoke) withObject:nil waitUntilDone:wait];
}
- (void)sendDelegateMethod:(SEL)selector withObject:(id)obj withObject:(id)obj2 waitUntilDone:(BOOL)wait
{
NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:[delegate methodSignatureForSelector:selector]];
[invocation setSelector:selector];
[invocation setArgument:&self atIndex:2]; //Indexes start at 2, the first being self, the second being command.
[invocation setTarget:delegate];
[invocation setSelector:selector];
[invocation setArgument:&self atIndex:2];
[invocation setArgument:&obj atIndex:3];
[invocation setArgument:&obj2 atIndex:4];
[invocation retainArguments];
[self performSelectorOnMainThread:@selector(sendDelegateMethodMainThread:) withObject:invocation waitUntilDone:wait];
[invocation performSelectorOnMainThread:@selector(invoke) withObject:nil waitUntilDone:wait];
}
- (void)sendDelegateMethodMainThread:(id)invocation
{
[invocation invokeWithTarget:delegate];
}
- (void)setPlaybackStatus:(int)status waitUntilDone:(BOOL)wait
{
[self sendDelegateMethod:@selector(audioPlayer:didChangeStatus:userInfo:) withObject:[NSNumber numberWithInt:status] withObject:[bufferChain userInfo] waitUntilDone:wait];

View File

@ -34,9 +34,9 @@
- (void)buildChain
{
[inputNode release];
[converterNode release];
inputNode = nil;
converterNode = nil;
inputNode = [[InputNode alloc] initWithController:self previous:nil];
converterNode = [[ConverterNode alloc] initWithController:self previous:inputNode];
@ -100,8 +100,6 @@
- (void)setUserInfo:(id)i
{
[i retain];
[userInfo release];
userInfo = i;
}
@ -112,8 +110,6 @@
- (void)setRGInfo:(NSDictionary *)rgi
{
[rgi retain];
[rgInfo release];
rgInfo = rgi;
[converterNode setRGInfo:rgi];
}
@ -130,16 +126,7 @@
[[inputNode semaphore] signal];
[[inputNode exitAtTheEndOfTheStream] wait]; // wait for decoder to be closed (see InputNode's -(void)process )
[rgInfo release];
[userInfo release];
[streamURL release];
[inputNode release];
[converterNode release];
DLog(@"Bufferchain dealloc");
[super dealloc];
}
- (void)seek:(double)time
@ -188,9 +175,6 @@
- (void)setStreamURL:(NSURL *)url
{
[url retain];
[streamURL release];
streamURL = url;
}

View File

@ -109,7 +109,7 @@ static OSStatus ACInputProc(AudioConverterRef inAudioConverter,
AudioStreamPacketDescription** outDataPacketDescription,
void* inUserData)
{
ConverterNode *converter = (ConverterNode *)inUserData;
ConverterNode *converter = (__bridge ConverterNode *)inUserData;
OSStatus err = noErr;
int amountToWrite;
int amountRead;
@ -149,7 +149,7 @@ static OSStatus ACFloatProc(AudioConverterRef inAudioConverter,
AudioStreamPacketDescription** outDataPacketDescription,
void* inUserData)
{
ConverterNode *converter = (ConverterNode *)inUserData;
ConverterNode *converter = (__bridge ConverterNode *)inUserData;
OSStatus err = noErr;
int amountToWrite;
@ -204,7 +204,7 @@ static OSStatus ACFloatProc(AudioConverterRef inAudioConverter,
ioData.mNumberBuffers = 1;
tryagain:
err = AudioConverterFillComplexBuffer(converterFloat, ACInputProc, self, &ioNumberFrames, &ioData, NULL);
err = AudioConverterFillComplexBuffer(converterFloat, ACInputProc, (__bridge void * _Nullable)(self), &ioNumberFrames, &ioData, NULL);
amountRead += ioData.mBuffers[0].mDataByteSize;
if (err == 100)
{
@ -239,7 +239,7 @@ static OSStatus ACFloatProc(AudioConverterRef inAudioConverter,
amountRead = 0;
tryagain2:
err = AudioConverterFillComplexBuffer(converter, ACFloatProc, self, &ioNumberFrames, &ioData, NULL);
err = AudioConverterFillComplexBuffer(converter, ACFloatProc, (__bridge void *)(self), &ioNumberFrames, &ioData, NULL);
amountRead += ioData.mBuffers[0].mDataByteSize;
if (err == 100)
{
@ -387,7 +387,6 @@ static float db_to_scale(float db)
[[NSUserDefaultsController sharedUserDefaultsController] removeObserver:self forKeyPath:@"values.volumeScaling"];
[self cleanUp];
[super dealloc];
}
@ -407,15 +406,12 @@ static float db_to_scale(float db)
- (void)setRGInfo:(NSDictionary *)rgi
{
DLog(@"Setting ReplayGain info");
[rgInfo release];
[rgi retain];
rgInfo = rgi;
[self refreshVolumeScaling];
}
- (void)cleanUp
{
[rgInfo release];
rgInfo = nil;
if (converterFloat)
{

View File

@ -33,7 +33,6 @@
- (BOOL)openWithSource:(id<CogSource>)source
{
decoder = [AudioDecoder audioDecoderForSource:source];
[decoder retain];
if (decoder == nil)
return NO;
@ -62,7 +61,6 @@
{
DLog(@"Opening with old decoder: %@", d);
decoder = d;
[decoder retain];
NSDictionary *properties = [decoder properties];
int bitsPerSample = [[properties objectForKey:@"bitsPerSample"] intValue];
@ -218,11 +216,6 @@
DLog(@"Input Node dealloc");
[decoder removeObserver:self forKeyPath:@"properties"];
[decoder removeObserver:self forKeyPath:@"metadata"];
[decoder release];
[exitAtTheEndOfTheStream release];
[super dealloc];
}
- (NSDictionary *) properties

View File

@ -19,8 +19,8 @@
NSLock *readLock;
NSLock *writeLock;
id previousNode;
id controller;
id __weak previousNode;
id __weak controller;
BOOL shouldReset;

View File

@ -85,15 +85,9 @@
- (void)threadEntry:(id)arg
{
[self retain];
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
[self process];
[pool release];
[self release];
@autoreleasepool {
[self process];
}
}
- (int)readData:(void *)ptr amount:(int)amount
@ -158,8 +152,6 @@
- (void)setPreviousNode:(id)p
{
[p retain];
[previousNode release];
previousNode = p;
}
@ -228,16 +220,4 @@
}
- (void)dealloc
{
[previousNode release];
[buffer release];
[semaphore release];
[readLock release];
[writeLock release];
[super dealloc];
}
@end

View File

@ -53,27 +53,26 @@
- (int)readData:(void *)ptr amount:(int)amount
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
int n;
[self setPreviousNode:[[controller bufferChain] finalNode]];
@autoreleasepool {
int n;
[self setPreviousNode:[[controller bufferChain] finalNode]];
n = [super readData:ptr amount:amount];
amountPlayed += n;
n = [super readData:ptr amount:amount];
amountPlayed += n;
if (endOfStream == YES)
{
amountPlayed = 0;
[controller endOfInputPlayed]; //Updates shouldContinue appropriately?
}
if (endOfStream == YES)
{
amountPlayed = 0;
[controller endOfInputPlayed]; //Updates shouldContinue appropriately?
}
/* if (n == 0) {
DLog(@"Output Buffer dry!");
}
*/
[pool release];
return n;
return n;
}
}
@ -97,13 +96,6 @@
[output stop];
}
- (void)dealloc
{
[output release];
[super dealloc];
}
- (void)setVolume:(double) v
{
[output setVolume:v];

View File

@ -362,7 +362,7 @@
0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0500;
LastUpgradeCheck = 0730;
TargetAttributes = {
8DC2EF4F0486A6940098B216 = {
DevelopmentTeam = N6E749HJ2X;
@ -445,6 +445,7 @@
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "@executable_path/../Frameworks";
OTHER_LDFLAGS = "";
PRODUCT_BUNDLE_IDENTIFIER = org.cogx.cogaudio;
PRODUCT_NAME = CogAudio;
PROVISIONING_PROFILE = "";
SDKROOT = macosx;
@ -470,6 +471,7 @@
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "@executable_path/../Frameworks";
OTHER_LDFLAGS = "";
PRODUCT_BUNDLE_IDENTIFIER = org.cogx.cogaudio;
PRODUCT_NAME = CogAudio;
PROVISIONING_PROFILE = "";
SDKROOT = macosx;
@ -482,6 +484,8 @@
1DEB91B208733DA50010E9CD /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
CLANG_ENABLE_OBJC_ARC = YES;
ENABLE_TESTABILITY = YES;
GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1";
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
@ -496,6 +500,7 @@
1DEB91B308733DA50010E9CD /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
CLANG_ENABLE_OBJC_ARC = YES;
CODE_SIGN_IDENTITY = "Developer ID Application";
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
GCC_WARN_ABOUT_RETURN_TYPE = YES;

View File

@ -59,12 +59,6 @@ NSArray * sortClassesByPriority(NSArray * theClasses)
return self;
}
- (void)dealloc
{
[cachedObservers release];
[super dealloc];
}
- (NSDictionary *)properties
{
if ( theDecoder != nil ) return [theDecoder properties];
@ -84,14 +78,13 @@ NSArray * sortClassesByPriority(NSArray * theClasses)
Class decoder = NSClassFromString(classString);
theDecoder = [[decoder alloc] init];
for (NSDictionary *obsItem in cachedObservers) {
[theDecoder addObserver:[obsItem objectForKey:@"observer"] forKeyPath:[obsItem objectForKey:@"keyPath"] options:[obsItem objectForKey:@"options"] context:[obsItem objectForKey:@"context"]];
[theDecoder addObserver:[obsItem objectForKey:@"observer"] forKeyPath:[obsItem objectForKey:@"keyPath"] options:[obsItem objectForKey:@"options"] context:(__bridge void *)([obsItem objectForKey:@"context"])];
}
if ([theDecoder open:source])
return YES;
for (NSDictionary *obsItem in cachedObservers) {
[theDecoder removeObserver:[obsItem objectForKey:@"observer"] forKeyPath:[obsItem objectForKey:@"keyPath"]];
}
[theDecoder release];
[source seek:0 whence:SEEK_SET];
}
theDecoder = nil;
@ -111,7 +104,6 @@ NSArray * sortClassesByPriority(NSArray * theClasses)
for (NSDictionary *obsItem in cachedObservers) {
[theDecoder removeObserver:[obsItem objectForKey:@"observer"] forKeyPath:[obsItem objectForKey:@"keyPath"]];
}
[theDecoder release];
theDecoder = nil;
}
}

View File

@ -6,14 +6,14 @@
<string>English</string>
<key>CFBundleExecutable</key>
<string>${EXECUTABLE_NAME}</string>
<key>CFBundleName</key>
<string>${PRODUCT_NAME}</string>
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>org.cogx.cogaudio</string>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>${PRODUCT_NAME}</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleSignature</key>

View File

@ -1,4 +1,4 @@
//
//
// OutputCoreAudio.m
// Cog
//
@ -29,7 +29,7 @@
static OSStatus Sound_Renderer(void *inRefCon, AudioUnitRenderActionFlags *ioActionFlags, const AudioTimeStamp *inTimeStamp, UInt32 inBusNumber, UInt32 inNumberFrames, AudioBufferList *ioData)
{
OutputCoreAudio *output = (OutputCoreAudio *)inRefCon;
OutputCoreAudio *output = (__bridge OutputCoreAudio *)inRefCon;
OSStatus err = noErr;
void *readPointer = ioData->mBuffers[0].mData;
@ -286,7 +286,7 @@ static OSStatus Sound_Renderer(void *inRefCon, AudioUnitRenderActionFlags *ioAc
//setup render callbacks
renderCallback.inputProc = Sound_Renderer;
renderCallback.inputProcRefCon = self;
renderCallback.inputProcRefCon = (__bridge void * _Nullable)(self);
AudioUnitSetProperty(outputUnit, kAudioUnitProperty_SetRenderCallback, kAudioUnitScope_Input, 0, &renderCallback, sizeof(AURenderCallbackStruct));
@ -326,8 +326,6 @@ static OSStatus Sound_Renderer(void *inRefCon, AudioUnitRenderActionFlags *ioAc
[self stop];
[[NSUserDefaultsController sharedUserDefaultsController] removeObserver:self forKeyPath:@"values.outputDevice"];
[super dealloc];
}
- (void)pause

View File

@ -35,16 +35,16 @@ static PluginController *sharedPluginController = nil;
- (id)init {
self = [super init];
if (self) {
self.sources = [[[NSMutableDictionary alloc] init] autorelease];
self.containers = [[[NSMutableDictionary alloc] init] autorelease];
self.sources = [[NSMutableDictionary alloc] init];
self.containers = [[NSMutableDictionary alloc] init];
self.metadataReaders = [[[NSMutableDictionary alloc] init] autorelease];
self.metadataReaders = [[NSMutableDictionary alloc] init];
self.propertiesReadersByExtension = [[[NSMutableDictionary alloc] init] autorelease];
self.propertiesReadersByMimeType = [[[NSMutableDictionary alloc] init] autorelease];
self.propertiesReadersByExtension = [[NSMutableDictionary alloc] init];
self.propertiesReadersByMimeType = [[NSMutableDictionary alloc] init];
self.decodersByExtension = [[[NSMutableDictionary alloc] init] autorelease];
self.decodersByMimeType = [[[NSMutableDictionary alloc] init] autorelease];
self.decodersByExtension = [[NSMutableDictionary alloc] init];
self.decodersByMimeType = [[NSMutableDictionary alloc] init];
[self setup];
}
@ -123,7 +123,7 @@ static PluginController *sharedPluginController = nil;
NSMutableArray *containerSet;
if (![containers objectForKey:ext])
{
containerSet = [[[NSMutableArray alloc] init] autorelease];
containerSet = [[NSMutableArray alloc] init];
[containers setObject:containerSet forKey:ext];
}
else
@ -143,7 +143,7 @@ static PluginController *sharedPluginController = nil;
NSMutableArray *decoders;
if (![decodersByExtension objectForKey:ext])
{
decoders = [[[NSMutableArray alloc] init] autorelease];
decoders = [[NSMutableArray alloc] init];
[decodersByExtension setObject:decoders forKey:ext];
}
else
@ -170,7 +170,7 @@ static PluginController *sharedPluginController = nil;
NSMutableArray *readers;
if (![metadataReaders objectForKey:ext])
{
readers = [[[NSMutableArray alloc] init] autorelease];
readers = [[NSMutableArray alloc] init];
[metadataReaders setObject:readers forKey:ext];
}
else
@ -190,7 +190,7 @@ static PluginController *sharedPluginController = nil;
NSMutableArray *readers;
if (![propertiesReadersByExtension objectForKey:ext])
{
readers = [[[NSMutableArray alloc] init] autorelease];
readers = [[NSMutableArray alloc] init];
[propertiesReadersByExtension setObject:readers forKey:ext];
}
else
@ -237,7 +237,7 @@ static PluginController *sharedPluginController = nil;
Class source = NSClassFromString([sources objectForKey:scheme]);
return [[[source alloc] init] autorelease];
return [[source alloc] init];
}
- (NSArray *) urlsForContainerURL:(NSURL *)url
@ -270,7 +270,7 @@ static PluginController *sharedPluginController = nil;
NSString *classString;
if (decoders) {
if ( [decoders count] > 1 ) {
return [[[CogDecoderMulti alloc] initWithDecoders:decoders] autorelease];
return [[CogDecoderMulti alloc] initWithDecoders:decoders];
}
else {
classString = [decoders objectAtIndex:0];
@ -282,7 +282,7 @@ static PluginController *sharedPluginController = nil;
Class decoder = NSClassFromString(classString);
return [[[decoder alloc] init] autorelease];
return [[decoder alloc] init];
}
- (NSDictionary *)metadataForURL:(NSURL *)url

View File

@ -40,8 +40,8 @@ static void deallocateVirtualBuffer(void *buffer, UInt32 bufferLength);
if (buffer) {
bufferEnd = buffer + bufferLength;
} else {
[self release];
return nil;
self = nil;
return nil;
}
readPointer = NULL;
@ -54,8 +54,6 @@ static void deallocateVirtualBuffer(void *buffer, UInt32 bufferLength);
{
if (buffer)
deallocateVirtualBuffer(buffer, bufferLength);
[super dealloc];
}
- (void)empty

View File

@ -43,7 +43,7 @@ escapeForLastFM(NSString *string)
options:NSLiteralSearch
range:NSMakeRange(0, [result length])];
return (nil == result ? @"" : [result autorelease]);
return (nil == result ? @"" : result);
}
@interface AudioScrobbler (Private)
@ -101,7 +101,7 @@ escapeForLastFM(NSString *string)
if(KERN_SUCCESS != result) {
ALog(@"Couldn't create semaphore (%s).", mach_error_type(result));
[self release];
self = nil;
return nil;
}
@ -115,11 +115,9 @@ escapeForLastFM(NSString *string)
if([self keepProcessingAudioScrobblerCommands] || NO == [self audioScrobblerThreadCompleted])
[self shutdown];
[_queue release], _queue = nil;
_queue = nil;
semaphore_destroy(mach_task_self(), _semaphore), _semaphore = 0;
[super dealloc];
}
- (void) start:(PlaylistEntry *)pe
@ -212,76 +210,71 @@ escapeForLastFM(NSString *string)
- (void) processAudioScrobblerCommands:(id)unused
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
AudioScrobblerClient *client = [[AudioScrobblerClient alloc] init];
mach_timespec_t timeout = { 5, 0 };
NSString *command = nil;
NSString *response = nil;
in_port_t port = 33367;
@autoreleasepool {
AudioScrobblerClient *client = [[AudioScrobblerClient alloc] init];
mach_timespec_t timeout = { 5, 0 };
NSString *command = nil;
NSString *response = nil;
in_port_t port = 33367;
while([self keepProcessingAudioScrobblerCommands]) {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
while([self keepProcessingAudioScrobblerCommands]) {
@autoreleasepool {
// Get the first command to be sent
@synchronized([self queue]) {
if ([[self queue] count]) {
command = [[[self queue] objectAtIndex:0] retain];
[[self queue] removeObjectAtIndex:0];
}
}
// Get the first command to be sent
@synchronized([self queue]) {
if ([[self queue] count]) {
command = [[self queue] objectAtIndex:0];
[[self queue] removeObjectAtIndex:0];
}
}
if(nil != command) {
@try {
if([client connectToHost:@"localhost" port:port]) {
port = [client connectedPort];
[client send:command];
[command release];
command = nil;
if(nil != command) {
@try {
if([client connectToHost:@"localhost" port:port]) {
port = [client connectedPort];
[client send:command];
command = nil;
response = [client receive];
if(2 > [response length] || NSOrderedSame != [response compare:@"OK" options:NSLiteralSearch range:NSMakeRange(0,2)])
ALog(@"AudioScrobbler error: %@", response);
response = [client receive];
if(2 > [response length] || NSOrderedSame != [response compare:@"OK" options:NSLiteralSearch range:NSMakeRange(0,2)])
ALog(@"AudioScrobbler error: %@", response);
[client shutdown];
}
}
[client shutdown];
}
}
@catch(NSException *exception) {
[command release];
command = nil;
@catch(NSException *exception) {
command = nil;
[client shutdown];
// ALog(@"Exception: %@",exception);
[pool release];
continue;
}
}
[client shutdown];
// ALog(@"Exception: %@",exception);
continue;
}
}
semaphore_timedwait([self semaphore], timeout);
[pool release];
}
semaphore_timedwait([self semaphore], timeout);
}
}
// Send a final stop command to cleanup
@try {
if([client connectToHost:@"localhost" port:port]) {
[client send:[NSString stringWithFormat:@"STOP c=%@\n", [self pluginID]]];
// Send a final stop command to cleanup
@try {
if([client connectToHost:@"localhost" port:port]) {
[client send:[NSString stringWithFormat:@"STOP c=%@\n", [self pluginID]]];
response = [client receive];
if(2 > [response length] || NSOrderedSame != [response compare:@"OK" options:NSLiteralSearch range:NSMakeRange(0,2)])
ALog(@"AudioScrobbler error: %@", response);
response = [client receive];
if(2 > [response length] || NSOrderedSame != [response compare:@"OK" options:NSLiteralSearch range:NSMakeRange(0,2)])
ALog(@"AudioScrobbler error: %@", response);
[client shutdown];
}
}
[client shutdown];
}
}
@catch(NSException *exception) {
[client shutdown];
}
@catch(NSException *exception) {
[client shutdown];
}
[client release];
[self setAudioScrobblerThreadCompleted:YES];
[pool release];
[self setAudioScrobblerThreadCompleted:YES];
}
}
@end

View File

@ -141,7 +141,7 @@ addressForHost(NSString *hostname)
}
buffer[bytesRead] = '\0';
result = [[[NSString alloc] initWithUTF8String:buffer] autorelease];
result = [[NSString alloc] initWithUTF8String:buffer];
} while(keepGoing);
@ -170,7 +170,6 @@ addressForHost(NSString *hostname)
if(0 != bytesRead) {
NSString *received = [[NSString alloc] initWithBytes:buffer length:bytesRead encoding:NSUTF8StringEncoding];
ALog(@"Received unexpected bytes during shutdown: %@", received);
[received release];
}
else
break;

View File

@ -42,7 +42,6 @@
1770429E0B8BC53600B86321 /* PlaybackController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1770429A0B8BC53600B86321 /* PlaybackController.m */; };
1778D3B00F645A190037E7A0 /* missingArt.png in Resources */ = {isa = PBXBuildFile; fileRef = 1778D3AF0F645A190037E7A0 /* missingArt.png */; };
1778D3CA0F645BF00037E7A0 /* MissingAlbumArtTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = 1778D3C90F645BF00037E7A0 /* MissingAlbumArtTransformer.m */; };
177EBFA20B8BC2A70000BC8C /* AppleRemote.m in Sources */ = {isa = PBXBuildFile; fileRef = 177EBF7F0B8BC2A70000BC8C /* AppleRemote.m */; };
177EBFA70B8BC2A70000BC8C /* ImageTextCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 177EBF870B8BC2A70000BC8C /* ImageTextCell.m */; };
177EC0270B8BC2CF0000BC8C /* TrackingCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 177EC01B0B8BC2CF0000BC8C /* TrackingCell.m */; };
177EC0290B8BC2CF0000BC8C /* TrackingSlider.m in Sources */ = {isa = PBXBuildFile; fileRef = 177EC01D0B8BC2CF0000BC8C /* TrackingSlider.m */; };
@ -798,7 +797,6 @@
1778D3AF0F645A190037E7A0 /* missingArt.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = missingArt.png; path = Images/missingArt.png; sourceTree = "<group>"; };
1778D3C80F645BF00037E7A0 /* MissingAlbumArtTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MissingAlbumArtTransformer.h; path = InfoInspector/MissingAlbumArtTransformer.h; sourceTree = "<group>"; };
1778D3C90F645BF00037E7A0 /* MissingAlbumArtTransformer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MissingAlbumArtTransformer.m; path = InfoInspector/MissingAlbumArtTransformer.m; sourceTree = "<group>"; };
177EBF7F0B8BC2A70000BC8C /* AppleRemote.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = AppleRemote.m; sourceTree = "<group>"; };
177EBF860B8BC2A70000BC8C /* ImageTextCell.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = ImageTextCell.h; sourceTree = "<group>"; };
177EBF870B8BC2A70000BC8C /* ImageTextCell.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = ImageTextCell.m; sourceTree = "<group>"; };
177EC01A0B8BC2CF0000BC8C /* TrackingCell.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = TrackingCell.h; sourceTree = "<group>"; };
@ -913,7 +911,6 @@
17E0D6190F520F9F005B6FED /* VolumeButton.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = VolumeButton.m; path = Window/VolumeButton.m; sourceTree = "<group>"; };
17E0D61A0F520F9F005B6FED /* VolumeSlider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = VolumeSlider.h; path = Window/VolumeSlider.h; sourceTree = "<group>"; };
17E0D61B0F520F9F005B6FED /* VolumeSlider.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = VolumeSlider.m; path = Window/VolumeSlider.m; sourceTree = "<group>"; };
17E0D6370F522324005B6FED /* AppleRemote.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppleRemote.h; sourceTree = "<group>"; };
17F3BB830CBC565100864489 /* CueSheet.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = CueSheet.xcodeproj; path = Plugins/CueSheet/CueSheet.xcodeproj; sourceTree = "<group>"; };
17F5612A0C3BD4DC0019975C /* CogAudio.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = CogAudio.xcodeproj; path = Audio/CogAudio.xcodeproj; sourceTree = "<group>"; };
17F562260C3BD8FB0019975C /* General.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = General.xcodeproj; path = Preferences/General/General.xcodeproj; sourceTree = "<group>"; };
@ -942,6 +939,15 @@
56DB08540D67185300453B6A /* NSArray+CogSort.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "NSArray+CogSort.m"; path = "Spotlight/NSArray+CogSort.m"; sourceTree = "<group>"; };
8314D63B1A354DFE00EEE8E6 /* sidplay.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = sidplay.xcodeproj; path = Plugins/sidplay/sidplay.xcodeproj; sourceTree = "<group>"; };
832C1252180BD1E2005507C1 /* Cog.help */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Cog.help; sourceTree = "<group>"; };
833F681E1CDBCAA700AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = "<group>"; };
833F681F1CDBCAA800AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Localizable.strings; sourceTree = "<group>"; };
833F68201CDBCAA800AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/InfoInspector.xib; sourceTree = "<group>"; };
833F68211CDBCAA800AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/MainMenu.xib; sourceTree = "<group>"; };
833F68221CDBCAA800AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/OpenURLPanel.xib; sourceTree = "<group>"; };
833F68231CDBCAA800AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/FileTree.xib; sourceTree = "<group>"; };
833F68241CDBCAA800AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/SpotlightPanel.xib; sourceTree = "<group>"; };
833F68251CDBCAA800AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = es; path = es.lproj/Credits.html; sourceTree = "<group>"; };
833F68261CDBCAA900AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/Feedback.xib; sourceTree = "<group>"; };
8355D6B4180612F300D05687 /* NSData+MD5.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+MD5.h"; sourceTree = "<group>"; };
8355D6B5180612F300D05687 /* NSData+MD5.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+MD5.m"; sourceTree = "<group>"; };
8355D6B7180613FB00D05687 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = System/Library/Frameworks/Security.framework; sourceTree = SDKROOT; };
@ -1157,22 +1163,12 @@
83790D4A1809F4980073CF51 /* SPMediaKeyTap */,
173A439D0F3FD25500676A7B /* ToolTip */,
178BAB920CD4E1B700B33D47 /* GCWindowMenu */,
177EBF7D0B8BC2A70000BC8C /* AppleRemote */,
177EBF850B8BC2A70000BC8C /* ImageTextCell */,
179790DD0C087AB7001D6996 /* OpenURLPanel */,
);
path = ThirdParty;
sourceTree = "<group>";
};
177EBF7D0B8BC2A70000BC8C /* AppleRemote */ = {
isa = PBXGroup;
children = (
17E0D6370F522324005B6FED /* AppleRemote.h */,
177EBF7F0B8BC2A70000BC8C /* AppleRemote.m */,
);
path = AppleRemote;
sourceTree = "<group>";
};
177EBF850B8BC2A70000BC8C /* ImageTextCell */ = {
isa = PBXGroup;
children = (
@ -1954,6 +1950,7 @@
Hebrew,
Greek,
zh_CN,
es,
);
mainGroup = 29B97314FDCFA39411CA2CEA /* Cog */;
projectDirPath = "";
@ -2473,7 +2470,6 @@
8E75757509F31D5A0080F1EE /* Shuffle.m in Sources */,
8E1296DB0A2BA9CE00443124 /* PlaylistHeaderView.m in Sources */,
8E07AB790AAC930B00A4B32F /* PreferencesController.m in Sources */,
177EBFA20B8BC2A70000BC8C /* AppleRemote.m in Sources */,
177EBFA70B8BC2A70000BC8C /* ImageTextCell.m in Sources */,
177EC0270B8BC2CF0000BC8C /* TrackingCell.m in Sources */,
177EC0290B8BC2CF0000BC8C /* TrackingSlider.m in Sources */,
@ -2706,6 +2702,7 @@
isa = PBXVariantGroup;
children = (
089C165DFE840E0CC02AAC07 /* English */,
833F681E1CDBCAA700AFB9F0 /* es */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
@ -2714,6 +2711,7 @@
isa = PBXVariantGroup;
children = (
17211A7D0D68B7C500911CA9 /* English */,
833F68231CDBCAA800AFB9F0 /* es */,
);
name = FileTree.xib;
sourceTree = "<group>";
@ -2722,6 +2720,7 @@
isa = PBXVariantGroup;
children = (
17342A990D5FD20B00E8D854 /* English */,
833F68211CDBCAA800AFB9F0 /* es */,
);
name = MainMenu.xib;
sourceTree = "<group>";
@ -2730,6 +2729,7 @@
isa = PBXVariantGroup;
children = (
17342ABE0D5FD36400E8D854 /* English */,
833F68221CDBCAA800AFB9F0 /* es */,
);
name = OpenURLPanel.xib;
sourceTree = "<group>";
@ -2738,6 +2738,7 @@
isa = PBXVariantGroup;
children = (
178456C10F6320B5007E8021 /* English */,
833F68241CDBCAA800AFB9F0 /* es */,
);
name = SpotlightPanel.xib;
sourceTree = "<group>";
@ -2746,6 +2747,7 @@
isa = PBXVariantGroup;
children = (
17D1B0D10F6320EA00694C57 /* English */,
833F68201CDBCAA800AFB9F0 /* es */,
);
name = InfoInspector.xib;
sourceTree = "<group>";
@ -2754,6 +2756,7 @@
isa = PBXVariantGroup;
children = (
17D1B1DB0F6330D400694C57 /* English */,
833F68261CDBCAA900AFB9F0 /* es */,
);
name = Feedback.xib;
sourceTree = "<group>";
@ -2762,6 +2765,7 @@
isa = PBXVariantGroup;
children = (
8E7575C809F31DCA0080F1EE /* English */,
833F68251CDBCAA800AFB9F0 /* es */,
);
name = Credits.html;
sourceTree = "<group>";
@ -2770,6 +2774,7 @@
isa = PBXVariantGroup;
children = (
8E7575DA09F31E930080F1EE /* English */,
833F681F1CDBCAA800AFB9F0 /* es */,
);
name = Localizable.strings;
sourceTree = "<group>";
@ -2853,6 +2858,7 @@
C01FCF4F08A954540054247B /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
CLANG_ENABLE_OBJC_ARC = YES;
GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1";
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
@ -2866,6 +2872,7 @@
C01FCF5008A954540054247B /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
CLANG_ENABLE_OBJC_ARC = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;

View File

@ -28,7 +28,7 @@
- (void)alertDidEnd:(NSAlert *)alert returnCode:(int)returnCode contextInfo:(void *)contextInfo
{
if ([(NSNumber *)contextInfo boolValue]== YES)
if ([(NSNumber *)CFBridgingRelease(contextInfo) boolValue]== YES)
{
[[self window] close];
}
@ -40,22 +40,22 @@
[sendingIndicator stopAnimation:self];
NSAlert *alert = [[[NSAlert alloc] init] autorelease];
NSAlert *alert = [[NSAlert alloc] init];
[alert setMessageText:NSLocalizedString(@"FeedbackFailedMessageText", @"")];
[alert setInformativeText:NSLocalizedString(@"FeedbackFailedInformativeText", @"")];
[alert beginSheetModalForWindow:[self window] modalDelegate:self didEndSelector:@selector(alertDidEnd:returnCode:contextInfo:) contextInfo:[NSNumber numberWithBool:NO]];
[alert beginSheetModalForWindow:[self window] modalDelegate:self didEndSelector:@selector(alertDidEnd:returnCode:contextInfo:) contextInfo:(void *)CFBridgingRetain([NSNumber numberWithBool:NO])];
}
- (void)feedbackDidSend:(FeedbackSocket *)feedback
{
[sendingIndicator stopAnimation:self];
NSAlert *alert = [[[NSAlert alloc] init] autorelease];
NSAlert *alert = [[NSAlert alloc] init];
[alert setMessageText:NSLocalizedString(@"FeedbackSuccessMessageText", @"")];
[alert setInformativeText:NSLocalizedString(@"FeedbackSuccessInformativeText", @"")];
[alert beginSheetModalForWindow:[self window] modalDelegate:self didEndSelector:@selector(alertDidEnd:returnCode:contextInfo:) contextInfo:[NSNumber numberWithBool:YES]];
[alert beginSheetModalForWindow:[self window] modalDelegate:self didEndSelector:@selector(alertDidEnd:returnCode:contextInfo:) contextInfo:(void *)CFBridgingRetain([NSNumber numberWithBool:YES])];
}

View File

@ -14,44 +14,42 @@
NSString *encodeForURL(NSString *s)
{
return [(NSString*) CFURLCreateStringByAddingPercentEscapes(NULL, (CFStringRef)s, NULL, NULL, kCFStringEncodingUTF8) autorelease];
return (NSString*) CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes(NULL, (CFStringRef)s, NULL, NULL, kCFStringEncodingUTF8));
}
- (void)sendFeedbackThread:(id)sender
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
@autoreleasepool {
NSString *f = encodeForURL(from);
NSString *s = encodeForURL(subject);
NSString *m = encodeForURL(message);
NSString *v = encodeForURL(version);
NSString *f = encodeForURL(from);
NSString *s = encodeForURL(subject);
NSString *m = encodeForURL(message);
NSString *v = encodeForURL(version);
NSString *postString = [NSString stringWithFormat:@"from=%@&subject=%@&message=%@&version=%@", f, s, m, v];
NSString *postString = [NSString stringWithFormat:@"from=%@&subject=%@&message=%@&version=%@", f, s, m, v];
NSData *postData = [postString dataUsingEncoding:NSASCIIStringEncoding];
NSData *postData = [postString dataUsingEncoding:NSASCIIStringEncoding];
NSURL *url = [NSURL URLWithString:@"http://cogx.org/feedback.php"];
NSMutableURLRequest *post = [NSMutableURLRequest requestWithURL:url];
NSURL *url = [NSURL URLWithString:@"http://cogx.org/feedback.php"];
NSMutableURLRequest *post = [NSMutableURLRequest requestWithURL:url];
[post addValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[post setHTTPMethod:@"POST"];
[post setHTTPBody:postData];
[post addValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[post setHTTPMethod:@"POST"];
[post setHTTPBody:postData];
NSError* error;
NSURLResponse* response;
NSData* resultData = [NSURLConnection sendSynchronousRequest:post returningResponse:&response error:&error];
NSString *resultString = [[[NSString alloc] initWithData:resultData encoding:NSASCIIStringEncoding] autorelease];
//DLog(@"RESULT: %@", resultString);
if ([resultString caseInsensitiveCompare:@"SUCCESS"] == NSOrderedSame)
{
[self performSelectorOnMainThread:@selector(returnSuccess:) withObject:nil waitUntilDone:NO];
}
else
{
[self performSelectorOnMainThread:@selector(returnFailure:) withObject:nil waitUntilDone:NO];
}
[pool release];
NSError* error;
NSURLResponse* response;
NSData* resultData = [NSURLConnection sendSynchronousRequest:post returningResponse:&response error:&error];
NSString *resultString = [[NSString alloc] initWithData:resultData encoding:NSASCIIStringEncoding];
//DLog(@"RESULT: %@", resultString);
if ([resultString caseInsensitiveCompare:@"SUCCESS"] == NSOrderedSame)
{
[self performSelectorOnMainThread:@selector(returnSuccess:) withObject:nil waitUntilDone:NO];
}
else
{
[self performSelectorOnMainThread:@selector(returnFailure:) withObject:nil waitUntilDone:NO];
}
}
}
- (void)sendFeedback: (NSString *)f subject:(NSString *)s message:(NSString *)m version:(NSString *)v
@ -90,33 +88,21 @@ NSString *encodeForURL(NSString *s)
- (void)setFrom:(NSString *)f
{
[f retain];
[from release];
from = f;
}
- (void)setSubject:(NSString *)s
{
[s retain];
[subject release];
subject = s;
}
- (void)setMessage:(NSString *)m
{
[m retain];
[message release];
message = m;
}
- (void)setVersion:(NSString *)v
{
[v retain];
[version release];
version = v;
}

View File

@ -23,7 +23,6 @@
if ([u fragment])
{
[display release];
NSDictionary *metadata = [AudioMetadataReader metadataForURL:u];
NSString *title = nil;
NSString *artist = nil;
@ -37,11 +36,10 @@
{
if (artist && [artist length]) { display = [[u fragment] stringByAppendingFormat:@": %@ - %@", artist, title];}
else { display = [[u fragment] stringByAppendingFormat:@": %@", title]; }
[display retain];
}
else
{
display = [[u fragment] retain];
display = [u fragment];
}
}
}

View File

@ -30,12 +30,9 @@
ContainedNode *node = [[ContainedNode alloc] initWithDataSource:dataSource url:u];
DLog(@"Node: %@", u);
[paths addObject:node];
[node release];
}
}
[self setSubpaths:paths];
[paths release];
}
@end

View File

@ -31,8 +31,6 @@
}
[self processPaths: [fullPaths sortedArrayUsingSelector:@selector(finderCompare:)]];
[fullPaths release];
}
@end

View File

@ -8,6 +8,7 @@
#import "PlaylistController.h"
#import "FileTreeController.h"
#import "SideViewController.h"
@implementation FileTreeController
@ -30,7 +31,6 @@
}
[controller doAddToPlaylist:urls origin:origin];
[urls release];
}
- (void)addToPlaylistExternal:(id)sender

View File

@ -73,7 +73,6 @@
if (![[NSFileManager defaultManager] fileExistsAtPath:[rootURL path]])
rootURL = [NSURL fileURLWithPath:[@"~/Music" stringByExpandingTildeInPath]];
[rootNode release];
rootNode = [[DirectoryNode alloc] initWithDataSource:self url:rootURL];
[watcher setPath:[rootURL path]];
@ -181,11 +180,4 @@
}
}
- (void)dealloc
{
[rootNode release];
[super dealloc];
}
@end

View File

@ -8,6 +8,7 @@
#import "FileTreeViewController.h"
#import "PlaylistLoader.h"
#import "PlaybackController.h"
@implementation FileTreeViewController

View File

@ -36,7 +36,7 @@ NSURL *resolveAliases(NSURL *url)
if (resolvedUrl != NULL)
{
//DLog(@"Resolved...");
return [(NSURL *)resolvedUrl autorelease];
return (NSURL *)CFBridgingRelease(resolvedUrl);
}
}
}
@ -60,19 +60,11 @@ NSURL *resolveAliases(NSURL *url)
- (void)setURL:(NSURL *)u
{
[u retain];
[url release];
url = u;
[display release];
display = [[NSFileManager defaultManager] displayNameAtPath:[u path]];
[display retain];
[icon release];
icon = [[NSWorkspace sharedWorkspace] iconForFile:[url path]];
[icon retain];
[icon setSize: NSMakeSize(16.0, 16.0)];
}
@ -144,15 +136,10 @@ NSURL *resolveAliases(NSURL *url)
[newSubpathsDirs addObject:newNode];
else
[newSubpaths addObject:newNode];
[newNode release];
}
[newSubpathsDirs addObjectsFromArray:newSubpaths];
[self setSubpaths:newSubpathsDirs];
[newSubpathsDirs release];
[newSubpaths release];
}
- (NSArray *)subpaths
@ -167,8 +154,6 @@ NSURL *resolveAliases(NSURL *url)
- (void)setSubpaths:(NSArray *)s
{
[s retain];
[subpaths release];
subpaths = s;
}
@ -180,9 +165,7 @@ NSURL *resolveAliases(NSURL *url)
- (void)setDisplay:(NSString *)s
{
[display release];
display = s;
[display retain];
}
- (NSString *)display
@ -195,14 +178,4 @@ NSURL *resolveAliases(NSURL *url)
return icon;
}
- (void)dealloc
{
[url release];
[icon release];
[subpaths release];
[super dealloc];
}
@end

View File

@ -18,13 +18,12 @@ static void myFSEventCallback(
{
int i;
char **paths = eventPaths;
PathWatcher *pathWatcher = (PathWatcher *)clientCallBackInfo;
PathWatcher *pathWatcher = (__bridge PathWatcher *)clientCallBackInfo;
printf("Callback called\n");
for (i=0; i<numEvents; i++) {
NSString *pathString = [[NSString alloc] initWithUTF8String:paths[i]];
[[pathWatcher delegate] pathDidChange:pathString];
[pathString release];
}
}
@ -49,11 +48,11 @@ static void myFSEventCallback(
[self cleanUp];
//Create FSEvent stream
CFArrayRef pathsToWatch = CFArrayCreate(NULL, (const void **)&path, 1, NULL);
NSArray *pathsToWatch = [NSArray arrayWithObject:path];
context = (FSEventStreamContext*)malloc(sizeof(FSEventStreamContext));
context->version = 0;
context->info = (void *)self;
context->info = (__bridge void *)self;
context->retain = NULL;
context->release = NULL;
@ -61,14 +60,12 @@ static void myFSEventCallback(
stream = FSEventStreamCreate(NULL,
&myFSEventCallback,
context,
pathsToWatch,
(__bridge CFArrayRef)pathsToWatch,
kFSEventStreamEventIdSinceNow, // Or a previous event ID
1.0, //latency in seconds
kFSEventStreamCreateFlagNone // Watch this and all its subdirectories
);
CFRelease(pathsToWatch);
FSEventStreamScheduleWithRunLoop(stream, CFRunLoopGetCurrent(), kCFRunLoopDefaultMode);
FSEventStreamStart(stream);
@ -76,8 +73,6 @@ static void myFSEventCallback(
- (void)setDelegate:(id)d
{
[d retain];
[delegate release];
delegate = d;
}
- (id)delegate
@ -88,8 +83,6 @@ static void myFSEventCallback(
- (void) dealloc
{
[self cleanUp];
[super dealloc];
}

View File

@ -11,6 +11,7 @@
#import "PathNode.h"
@interface SmartFolderNode : PathNode {
MDQueryRef _query;
}
@end

View File

@ -28,11 +28,12 @@
// Ugh, Carbon from now on...
MDQueryRef query = MDQueryCreate(kCFAllocatorDefault, (CFStringRef)rawQuery, NULL, NULL);
_query = query;
MDQuerySetSearchScope(query, (CFArrayRef)searchPaths, 0);
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(queryFinished:) name:(NSString*)kMDQueryDidFinishNotification object:(id)query];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(queryUpdate:) name:(NSString*)kMDQueryDidUpdateNotification object:(id)query];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(queryFinished:) name:(NSString*)kMDQueryDidFinishNotification object:(__bridge id)query];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(queryUpdate:) name:(NSString*)kMDQueryDidUpdateNotification object:(__bridge id)query];
DLog(@"Making query!");
MDQueryExecute(query, kMDQueryWantsUpdates);
@ -42,8 +43,6 @@
- (void)setSubpaths:(id)s
{
[s retain];
[subpaths release];
subpaths = s;
}
@ -60,7 +59,7 @@
- (void)queryFinished:(NSNotification *)notification
{
DLog(@"Query finished!");
MDQueryRef query = (MDQueryRef)[notification object];
MDQueryRef query = (__bridge MDQueryRef)[notification object];
NSMutableArray *results = [NSMutableArray array];
@ -72,11 +71,9 @@
{
MDItemRef item = (MDItemRef)MDQueryGetResultAtIndex(query, i);
NSString *itemPath = (NSString*)MDItemCopyAttribute(item, kMDItemPath);
NSString *itemPath = (NSString *) CFBridgingRelease(MDItemCopyAttribute(item, kMDItemPath));
[results addObject:itemPath];
[itemPath release];
}
MDQueryEnableUpdates(query);
@ -94,6 +91,11 @@
[self queryFinished: notification];
}
- (void)dealloc
{
CFRelease(_query);
}
@end

View File

@ -46,7 +46,7 @@
NSAttributedString *result = nil;
result = [[NSAttributedString alloc] initWithString:[self stringForObjectValue:object] attributes:attributes];
return [result autorelease];
return result;
}
@end

View File

@ -43,7 +43,7 @@
NSAttributedString *result = nil;
result = [[NSAttributedString alloc] initWithString:[self stringForObjectValue:object] attributes:attributes];
return [result autorelease];
return result;
}
@end

View File

@ -103,7 +103,7 @@
NSAttributedString *result = nil;
result = [[NSAttributedString alloc] initWithString:[self stringForObjectValue:object] attributes:attributes];
return [result autorelease];
return result;
}
@end

View File

@ -156,6 +156,7 @@
17C8F63B0CBEE797008D969D /* readxm.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = readxm.c; sourceTree = "<group>"; };
17C8F63C0CBEE797008D969D /* readxm2.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = readxm2.c; sourceTree = "<group>"; };
17C8F63D0CBEE797008D969D /* xmeffect.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; path = xmeffect.c; sourceTree = "<group>"; };
833F68341CDBCAB100AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = "<group>"; };
8370B61E17F60FE2001A4D7A /* barray.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = barray.h; sourceTree = "<group>"; };
8370B62017F60FE2001A4D7A /* dumbfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = dumbfile.h; sourceTree = "<group>"; };
8370B62217F60FE2001A4D7A /* lpc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = lpc.h; sourceTree = "<group>"; };
@ -484,7 +485,7 @@
0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0500;
LastUpgradeCheck = 0730;
};
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "Dumb" */;
compatibilityVersion = "Xcode 3.2";
@ -492,6 +493,7 @@
hasScannedForEncodings = 1;
knownRegions = (
en,
es,
);
mainGroup = 0867D691FE84028FC02AAC07 /* Dumb */;
productRefGroup = 034768DFFF38A50411DB9C8B /* Products */;
@ -614,6 +616,7 @@
isa = PBXVariantGroup;
children = (
089C1667FE841158C02AAC07 /* English */,
833F68341CDBCAB100AFB9F0 /* es */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
@ -640,6 +643,7 @@
INSTALL_PATH = "@loader_path/../Frameworks";
OBJROOT = ../../build;
PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = NO;
PRODUCT_BUNDLE_IDENTIFIER = org.cogx.lib.dumb;
PRODUCT_NAME = Dumb;
SDKROOT = macosx;
SHARED_PRECOMPS_DIR = "";
@ -665,6 +669,7 @@
INSTALL_PATH = "@loader_path/../Frameworks";
OBJROOT = ../../build;
PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = NO;
PRODUCT_BUNDLE_IDENTIFIER = org.cogx.lib.dumb;
PRODUCT_NAME = Dumb;
SDKROOT = macosx;
SHARED_PRECOMPS_DIR = "";
@ -677,6 +682,7 @@
1DEB91B208733DA50010E9CD /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ENABLE_TESTABILITY = YES;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"VAR_ARRAYS=1",

View File

@ -6,14 +6,14 @@
<string>English</string>
<key>CFBundleExecutable</key>
<string>${EXECUTABLE_NAME}</string>
<key>CFBundleName</key>
<string>${PRODUCT_NAME}</string>
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>org.cogx.lib.dumb</string>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>${PRODUCT_NAME}</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleSignature</key>

View File

@ -52,7 +52,7 @@ long dumb_resample(DUMB_RESAMPLER *resampler, sample_t *dst, long dst_size, VOLU
long todo;
LONG_LONG todo64;
int quality;
int check;
/*int check;*/
if (!resampler || resampler->dir == 0) return 0;
ASSERT(resampler->dir == -1 || resampler->dir == 1);

Binary file not shown.

View File

@ -786,6 +786,7 @@
833E5F9E18A31EC4006A85F9 /* twinvq.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = twinvq.c; sourceTree = "<group>"; };
833E5F9F18A31EC4006A85F9 /* twinvq.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = twinvq.h; sourceTree = "<group>"; };
833E5FA018A31EC4006A85F9 /* twinvqdec.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = twinvqdec.c; sourceTree = "<group>"; };
833F68321CDBCAB100AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = "<group>"; };
8384904C1807898200E7332D /* apedec.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = apedec.c; sourceTree = "<group>"; };
8384904E1807898A00E7332D /* ape.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ape.c; sourceTree = "<group>"; };
838490501807AF0100E7332D /* ac3_parser.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ac3_parser.c; sourceTree = "<group>"; };
@ -1761,7 +1762,7 @@
0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0500;
LastUpgradeCheck = 0730;
};
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "FFMPEG" */;
compatibilityVersion = "Xcode 3.2";
@ -1769,6 +1770,7 @@
hasScannedForEncodings = 1;
knownRegions = (
en,
es,
);
mainGroup = 0867D691FE84028FC02AAC07 /* FFMPEG */;
productRefGroup = 034768DFFF38A50411DB9C8B /* Products */;
@ -2034,6 +2036,7 @@
isa = PBXVariantGroup;
children = (
089C1667FE841158C02AAC07 /* English */,
833F68321CDBCAB100AFB9F0 /* es */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
@ -2061,6 +2064,7 @@
);
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "@loader_path/../Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = org.cogx.lib.ffmpeg;
PRODUCT_NAME = FFMPEG;
SDKROOT = macosx;
SKIP_INSTALL = YES;
@ -2086,6 +2090,7 @@
);
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "@loader_path/../Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = org.cogx.lib.ffmpeg;
PRODUCT_NAME = FFMPEG;
SDKROOT = macosx;
SKIP_INSTALL = YES;
@ -2098,6 +2103,7 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ENABLE_TESTABILITY = YES;
GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1";
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;

View File

@ -9,7 +9,7 @@
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>org.cogx.lib.ffmpeg</string>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>

Binary file not shown.

View File

@ -6,14 +6,14 @@
<string>English</string>
<key>CFBundleExecutable</key>
<string>${EXECUTABLE_NAME}</string>
<key>CFBundleName</key>
<string>${PRODUCT_NAME}</string>
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>org.xiph.libflac</string>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>${PRODUCT_NAME}</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleSignature</key>

View File

@ -87,6 +87,7 @@ static void sigill_handler (int sig)
#endif
/* these are flags in EDX of CPUID AX=00000001 */
#if 0
static const unsigned FLAC__CPUINFO_IA32_CPUID_CMOV = 0x00008000;
static const unsigned FLAC__CPUINFO_IA32_CPUID_MMX = 0x00800000;
static const unsigned FLAC__CPUINFO_IA32_CPUID_FXSR = 0x01000000;
@ -99,6 +100,7 @@ static const unsigned FLAC__CPUINFO_IA32_CPUID_SSSE3 = 0x00000200;
static const unsigned FLAC__CPUINFO_IA32_CPUID_EXTENDED_AMD_3DNOW = 0x80000000;
static const unsigned FLAC__CPUINFO_IA32_CPUID_EXTENDED_AMD_EXT3DNOW = 0x40000000;
static const unsigned FLAC__CPUINFO_IA32_CPUID_EXTENDED_AMD_EXTMMX = 0x00400000;
#endif
/*

View File

@ -421,7 +421,7 @@
0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0500;
LastUpgradeCheck = 0730;
};
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "flac" */;
compatibilityVersion = "Xcode 3.2";
@ -509,6 +509,7 @@
OTHER_CFLAGS_QUOTED_1 = "-DVERSION=\\\"1.2.1\\\"";
PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = NO;
PRIVATE_HEADERS_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/PrivateHeaders";
PRODUCT_BUNDLE_IDENTIFIER = org.xiph.libflac;
PRODUCT_NAME = FLAC;
PUBLIC_HEADERS_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/Headers";
SKIP_INSTALL = YES;
@ -547,6 +548,7 @@
OTHER_CFLAGS_QUOTED_1 = "-DVERSION=\\\"1.2.1\\\"";
PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = NO;
PRIVATE_HEADERS_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/PrivateHeaders";
PRODUCT_BUNDLE_IDENTIFIER = org.xiph.libflac;
PRODUCT_NAME = FLAC;
PUBLIC_HEADERS_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/Headers";
SKIP_INSTALL = YES;
@ -559,6 +561,7 @@
1DEB91B208733DA50010E9CD /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ENABLE_TESTABILITY = YES;
GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1";
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;

View File

@ -144,6 +144,7 @@
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
833F68401CDBCAB300AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = "<group>"; };
8359000017FEF40E0060F3ED /* unrar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unrar.h; sourceTree = "<group>"; };
8359000117FEF40E0060F3ED /* unrar_misc.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = unrar_misc.cpp; sourceTree = "<group>"; };
8359009017FEF5830060F3ED /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = usr/lib/libz.dylib; sourceTree = SDKROOT; };
@ -614,7 +615,7 @@
8359FF3317FEF39F0060F3ED /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0500;
LastUpgradeCheck = 0730;
ORGANIZATIONNAME = "Christopher Snowhill";
};
buildConfigurationList = 8359FF3617FEF39F0060F3ED /* Build configuration list for PBXProject "File_Extractor" */;
@ -623,6 +624,7 @@
hasScannedForEncodings = 0;
knownRegions = (
en,
es,
);
mainGroup = 8359FF3217FEF39F0060F3ED;
productRefGroup = 8359FF3D17FEF39F0060F3ED /* Products */;
@ -723,6 +725,7 @@
isa = PBXVariantGroup;
children = (
8359FF4917FEF39F0060F3ED /* en */,
833F68401CDBCAB300AFB9F0 /* es */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
@ -746,6 +749,7 @@
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
@ -815,6 +819,7 @@
);
INFOPLIST_FILE = "File_Extractor/File_Extractor-Info.plist";
INSTALL_PATH = "@loader_path/../Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = net.kode54.fileextractor;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
SKIP_INSTALL = YES;
@ -837,6 +842,7 @@
);
INFOPLIST_FILE = "File_Extractor/File_Extractor-Info.plist";
INSTALL_PATH = "@loader_path/../Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = net.kode54.fileextractor;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
SKIP_INSTALL = YES;

View File

@ -9,7 +9,7 @@
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>net.kode54.fileextractor</string>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>

View File

@ -0,0 +1,2 @@
/* Localized versions of Info.plist keys */

View File

@ -63,9 +63,11 @@ static void make_unbuffered( Std_File_Reader* r )
r->make_unbuffered();
}
#if 0
inline
static void make_unbuffered( void* )
{ }
#endif
blargg_err_t File_Extractor::open_arc_file( bool unbuffered )
{

View File

@ -21,6 +21,7 @@ RARFORMAT Archive::IsSignature(const byte *D,size_t Size)
{
RARFORMAT Type=RARFMT_NONE;
if (Size>=1 && D[0]==0x52)
{
#ifndef SFX_MODULE
if (Size>=4 && D[1]==0x45 && D[2]==0x7e && D[3]==0x5e)
Type=RARFMT14;
@ -38,6 +39,7 @@ RARFORMAT Archive::IsSignature(const byte *D,size_t Size)
else if (D[6]==2)
Type=RARFMT_FUTURE;
}
}
return Type;
}

View File

@ -361,6 +361,8 @@ unrar_err_t Archive::ReadHeader50(size_t *ReadSize)
switch(ShortBlock.HeaderType)
{
default: break;
case HEAD_CRYPT:
return unrar_err_encrypted;
case HEAD_MAIN:
@ -720,10 +722,12 @@ void Archive::ConvertFileHeader(FileHeader *hd)
if (Format==RARFMT15 && hd->UnpVer<20 && (hd->FileAttr & 0x10))
hd->Dir=true;
if (hd->HSType==HSYS_UNKNOWN)
{
if (hd->Dir)
hd->FileAttr=0x10;
else
hd->FileAttr=0x20;
}
}

View File

@ -9,7 +9,7 @@ wchar* GetWideName(const char *Name,const wchar *NameW,wchar *DestW,size_t DestS
}
else
if (Name!=NULL)
CharToWide(Name,DestW,DestSize);
CharToWide(Name,DestW,(int)DestSize);
else
*DestW=0;

View File

@ -896,6 +896,8 @@ void RarVM::ExecuteStandardFilter(VM_StandardFilters FilterType)
{
switch(FilterType)
{
default: break;
case VMSF_E8:
case VMSF_E8E9:
{

View File

@ -20,7 +20,7 @@ size_t RawRead::Read(size_t Size)
if (Size!=0)
{
Data.Add(Size);
ReadSize=SrcFile->Read(&Data[DataSize],Size);
ReadSize=SrcFile->Read(&Data[DataSize],(int)Size);
DataSize+=ReadSize;
}
return ReadSize;

View File

@ -87,6 +87,7 @@ void Unpack::Init(size_t WinSize,bool Solid)
byte *NewWindow=Fragmented ? NULL : (byte *)malloc(WinSize);
if (NewWindow==NULL)
{
if (Grow || WinSize<0x1000000)
{
// We do not support growth for new fragmented window.
@ -103,6 +104,7 @@ void Unpack::Init(size_t WinSize,bool Solid)
FragWindow.Init(WinSize);
Fragmented=true;
}
}
if (!Fragmented)
{

View File

@ -295,6 +295,7 @@ void Unpack::LongLZ()
OldAvr3=AvrLn3;
if (Length!=1 && Length!=4)
{
if (Length==0 && Distance <= MaxDist3)
{
AvrLn3++;
@ -303,6 +304,7 @@ void Unpack::LongLZ()
else
if (AvrLn3 > 0)
AvrLn3--;
}
Length+=3;
if (Distance >= MaxDist3)
Length++;

View File

@ -154,11 +154,11 @@ void Unpack::UnpWriteBuf20()
if (UnpPtr<WrPtr)
{
UnpIO->UnpWrite(&Window[WrPtr],-(int)WrPtr & MaxWinMask);
UnpIO->UnpWrite(Window,UnpPtr);
UnpIO->UnpWrite(Window,(int)UnpPtr);
UnpAllBuf=true;
}
else
UnpIO->UnpWrite(&Window[WrPtr],UnpPtr-WrPtr);
UnpIO->UnpWrite(&Window[WrPtr],(int)(UnpPtr-WrPtr));
WrPtr=UnpPtr;
}
@ -254,6 +254,7 @@ bool Unpack::ReadTables20()
void Unpack::ReadLastTables()
{
if (ReadTop>=Inp.InAddr+5)
{
if (UnpAudioBlock)
{
if (DecodeNumber(Inp,&MD[UnpCurChannel])==256)
@ -262,6 +263,7 @@ void Unpack::ReadLastTables()
else
if (DecodeNumber(Inp,&BlockTables.LD)==269)
ReadTables20();
}
}

View File

@ -24,8 +24,8 @@ void Unpack::Unpack5(bool Solid)
// We use 'while', because for empty block containing only Huffman table,
// we'll be on the block border once again just after reading the table.
while (Inp.InAddr>BlockHeader.BlockStart+BlockHeader.BlockSize-1 ||
Inp.InAddr==BlockHeader.BlockStart+BlockHeader.BlockSize-1 &&
Inp.InBit>=BlockHeader.BlockBitSize)
(Inp.InAddr==BlockHeader.BlockStart+BlockHeader.BlockSize-1 &&
Inp.InBit>=BlockHeader.BlockBitSize))
{
if (BlockHeader.LastBlockInFile)
{
@ -124,10 +124,12 @@ void Unpack::Unpack5(bool Solid)
if (MainSlot==257)
{
if (LastLength!=0)
{
if (Fragmented)
FragWindow.CopyString(LastLength,OldDist[0],UnpPtr,MaxWinMask);
else
CopyString(LastLength,OldDist[0]);
}
continue;
}
if (MainSlot<262)
@ -380,7 +382,7 @@ void Unpack::UnpWriteBuf()
// Choose the nearest among WriteBorder and WrPtr actual written border.
// If border is equal to UnpPtr, it means that we have MaxWinSize data ahead.
if (WriteBorder==UnpPtr ||
WrPtr!=UnpPtr && ((WrPtr-UnpPtr)&MaxWinMask)<((WriteBorder-UnpPtr)&MaxWinMask))
(WrPtr!=UnpPtr && ((WrPtr-UnpPtr)&MaxWinMask)<((WriteBorder-UnpPtr)&MaxWinMask)))
WriteBorder=WrPtr;
}
@ -500,7 +502,7 @@ void Unpack::UnpWriteData(byte *Data,size_t Size)
int64 LeftToWrite=DestUnpSize-WrittenFileSize;
if ((int64)WriteSize>LeftToWrite)
WriteSize=(size_t)LeftToWrite;
UnpIO->UnpWrite(Data,WriteSize);
UnpIO->UnpWrite(Data,(int)WriteSize);
WrittenFileSize+=Size;
}

View File

@ -401,6 +401,7 @@
17C8F1ED0CBED286008D969D /* Ym2413_Emu.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = Ym2413_Emu.h; path = gme/Ym2413_Emu.h; sourceTree = "<group>"; };
17C8F1EE0CBED286008D969D /* Ym2612_Emu.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; name = Ym2612_Emu.cpp; path = gme/Ym2612_Emu.cpp; sourceTree = "<group>"; };
17C8F1EF0CBED286008D969D /* Ym2612_Emu.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = Ym2612_Emu.h; path = gme/Ym2612_Emu.h; sourceTree = "<group>"; };
833F68361CDBCAB200AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = "<group>"; };
8370B68D17F615FD001A4D7A /* Ay_Core.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = Ay_Core.cpp; path = gme/Ay_Core.cpp; sourceTree = "<group>"; };
8370B68E17F615FD001A4D7A /* Ay_Core.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Ay_Core.h; path = gme/Ay_Core.h; sourceTree = "<group>"; };
8370B68F17F615FD001A4D7A /* blargg_common.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = blargg_common.cpp; path = gme/blargg_common.cpp; sourceTree = "<group>"; };
@ -1272,7 +1273,7 @@
0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0500;
LastUpgradeCheck = 0730;
};
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "GME" */;
compatibilityVersion = "Xcode 3.2";
@ -1280,6 +1281,7 @@
hasScannedForEncodings = 1;
knownRegions = (
en,
es,
);
mainGroup = 0867D691FE84028FC02AAC07 /* GME */;
productRefGroup = 034768DFFF38A50411DB9C8B /* Products */;
@ -1462,6 +1464,7 @@
isa = PBXVariantGroup;
children = (
089C1667FE841158C02AAC07 /* English */,
833F68361CDBCAB200AFB9F0 /* es */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
@ -1493,6 +1496,7 @@
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "@loader_path/../Frameworks";
PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = NO;
PRODUCT_BUNDLE_IDENTIFIER = org.cogx.lib.gme;
PRODUCT_NAME = GME;
SDKROOT = macosx;
SHARED_PRECOMPS_DIR = "";
@ -1524,6 +1528,7 @@
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "@loader_path/../Frameworks";
PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR = NO;
PRODUCT_BUNDLE_IDENTIFIER = org.cogx.lib.gme;
PRODUCT_NAME = GME;
SDKROOT = macosx;
SHARED_PRECOMPS_DIR = "";
@ -1536,6 +1541,7 @@
1DEB91B208733DA50010E9CD /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ENABLE_TESTABILITY = YES;
GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1";
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;

View File

@ -6,14 +6,14 @@
<string>English</string>
<key>CFBundleExecutable</key>
<string>${EXECUTABLE_NAME}</string>
<key>CFBundleName</key>
<string>${PRODUCT_NAME}</string>
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>org.cogx.lib.gme</string>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>${PRODUCT_NAME}</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleSignature</key>

Binary file not shown.

View File

@ -37,6 +37,7 @@
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
833F682F1CDBCAB100AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = "<group>"; };
8343793517F97BDB00584396 /* HighlyAdvanced.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = HighlyAdvanced.framework; sourceTree = BUILT_PRODUCTS_DIR; };
8343794017F97BDB00584396 /* HighlyAdvanced-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "HighlyAdvanced-Info.plist"; sourceTree = "<group>"; };
8343794217F97BDB00584396 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
@ -234,7 +235,7 @@
8343792C17F97BDB00584396 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0500;
LastUpgradeCheck = 0730;
ORGANIZATIONNAME = "Christopher Snowhill";
};
buildConfigurationList = 8343792F17F97BDB00584396 /* Build configuration list for PBXProject "HighlyAdvanced" */;
@ -243,6 +244,7 @@
hasScannedForEncodings = 0;
knownRegions = (
en,
es,
);
mainGroup = 8343792B17F97BDB00584396;
productRefGroup = 8343793617F97BDB00584396 /* Products */;
@ -290,6 +292,7 @@
isa = PBXVariantGroup;
children = (
8343794217F97BDB00584396 /* en */,
833F682F1CDBCAB100AFB9F0 /* es */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
@ -313,6 +316,7 @@
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
@ -380,6 +384,7 @@
);
INFOPLIST_FILE = "HighlyAdvanced/HighlyAdvanced-Info.plist";
INSTALL_PATH = "@loader_path/../Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = net.kode54.highlyadvanced;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
SKIP_INSTALL = YES;
@ -398,6 +403,7 @@
GCC_PREPROCESSOR_DEFINITIONS = EMU_COMPILE;
INFOPLIST_FILE = "HighlyAdvanced/HighlyAdvanced-Info.plist";
INSTALL_PATH = "@loader_path/../Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = net.kode54.highlyadvanced;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
SKIP_INSTALL = YES;

View File

@ -9,7 +9,7 @@
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>net.kode54.highlyadvanced</string>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>

View File

@ -0,0 +1,2 @@
/* Localized versions of Info.plist keys */

View File

@ -28,6 +28,7 @@
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
833F682B1CDBCAB000AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = "<group>"; };
8360EF1017F92C91005208A4 /* HighlyExperimental.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = HighlyExperimental.framework; sourceTree = BUILT_PRODUCTS_DIR; };
8360EF1B17F92C91005208A4 /* HighlyExperimental-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "HighlyExperimental-Info.plist"; sourceTree = "<group>"; };
8360EF1D17F92C91005208A4 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
@ -173,7 +174,7 @@
8360EF0717F92C91005208A4 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0500;
LastUpgradeCheck = 0730;
ORGANIZATIONNAME = "Christopher Snowhill";
};
buildConfigurationList = 8360EF0A17F92C91005208A4 /* Build configuration list for PBXProject "HighlyExperimental" */;
@ -182,6 +183,7 @@
hasScannedForEncodings = 0;
knownRegions = (
en,
es,
);
mainGroup = 8360EF0617F92C91005208A4;
productRefGroup = 8360EF1117F92C91005208A4 /* Products */;
@ -227,6 +229,7 @@
isa = PBXVariantGroup;
children = (
8360EF1D17F92C91005208A4 /* en */,
833F682B1CDBCAB000AFB9F0 /* es */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
@ -250,6 +253,7 @@
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
@ -319,6 +323,7 @@
);
INFOPLIST_FILE = "HighlyExperimental/HighlyExperimental-Info.plist";
INSTALL_PATH = "@loader_path/../Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = net.kode54.highlyexperimental;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
WRAPPER_EXTENSION = framework;
@ -342,6 +347,7 @@
);
INFOPLIST_FILE = "HighlyExperimental/HighlyExperimental-Info.plist";
INSTALL_PATH = "@loader_path/../Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = net.kode54.highlyexperimental;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
WRAPPER_EXTENSION = framework;

View File

@ -9,7 +9,7 @@
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>net.kode54.highlyexperimental</string>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>

View File

@ -0,0 +1,2 @@
/* Localized versions of Info.plist keys */

View File

@ -20,6 +20,7 @@
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
833F682E1CDBCAB100AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = "<group>"; };
834378DE17F96E2600584396 /* HighlyQuixotic.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = HighlyQuixotic.framework; sourceTree = BUILT_PRODUCTS_DIR; };
834378E917F96E2600584396 /* HighlyQuixotic-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "HighlyQuixotic-Info.plist"; sourceTree = "<group>"; };
834378EB17F96E2600584396 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
@ -145,7 +146,7 @@
834378D517F96E2600584396 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0500;
LastUpgradeCheck = 0730;
ORGANIZATIONNAME = "Christopher Snowhill";
};
buildConfigurationList = 834378D817F96E2600584396 /* Build configuration list for PBXProject "HighlyQuixotic" */;
@ -154,6 +155,7 @@
hasScannedForEncodings = 0;
knownRegions = (
en,
es,
);
mainGroup = 834378D417F96E2600584396;
productRefGroup = 834378DF17F96E2600584396 /* Products */;
@ -195,6 +197,7 @@
isa = PBXVariantGroup;
children = (
834378EB17F96E2600584396 /* en */,
833F682E1CDBCAB100AFB9F0 /* es */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
@ -218,6 +221,7 @@
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
@ -290,6 +294,7 @@
GCC_PRECOMPILE_PREFIX_HEADER = NO;
INFOPLIST_FILE = "HighlyQuixotic/HighlyQuixotic-Info.plist";
INSTALL_PATH = "@loader_path/../Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = net.kode54.highlyquixotic;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
WRAPPER_EXTENSION = framework;
@ -306,6 +311,7 @@
GCC_PRECOMPILE_PREFIX_HEADER = NO;
INFOPLIST_FILE = "HighlyQuixotic/HighlyQuixotic-Info.plist";
INSTALL_PATH = "@loader_path/../Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = net.kode54.highlyquixotic;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
WRAPPER_EXTENSION = framework;

View File

@ -9,7 +9,7 @@
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>net.kode54.highlyquixotic</string>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>

View File

@ -0,0 +1,2 @@
/* Localized versions of Info.plist keys */

View File

@ -29,6 +29,7 @@
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
833F682D1CDBCAB000AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = "<group>"; };
8343786E17F9658E00584396 /* HighlyTheoretical.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = HighlyTheoretical.framework; sourceTree = BUILT_PRODUCTS_DIR; };
8343787917F9658E00584396 /* HighlyTheoretical-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "HighlyTheoretical-Info.plist"; sourceTree = "<group>"; };
8343787B17F9658E00584396 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
@ -187,7 +188,7 @@
8343786517F9658E00584396 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0500;
LastUpgradeCheck = 0730;
ORGANIZATIONNAME = "Christopher Snowhill";
};
buildConfigurationList = 8343786817F9658E00584396 /* Build configuration list for PBXProject "HighlyTheoretical" */;
@ -196,6 +197,7 @@
hasScannedForEncodings = 0;
knownRegions = (
en,
es,
);
mainGroup = 8343786417F9658E00584396;
productRefGroup = 8343786F17F9658E00584396 /* Products */;
@ -240,6 +242,7 @@
isa = PBXVariantGroup;
children = (
8343787B17F9658E00584396 /* en */,
833F682D1CDBCAB000AFB9F0 /* es */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
@ -263,6 +266,7 @@
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
@ -340,6 +344,7 @@
INFOPLIST_FILE = "HighlyTheoretical/HighlyTheoretical-Info.plist";
INSTALL_PATH = "@loader_path/../Frameworks";
MACOSX_DEPLOYMENT_TARGET = 10.6;
PRODUCT_BUNDLE_IDENTIFIER = net.kode54.highlytheoretical;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
SKIP_INSTALL = YES;
@ -358,6 +363,7 @@
INFOPLIST_FILE = "HighlyTheoretical/HighlyTheoretical-Info.plist";
INSTALL_PATH = "@loader_path/../Frameworks";
MACOSX_DEPLOYMENT_TARGET = 10.6;
PRODUCT_BUNDLE_IDENTIFIER = net.kode54.highlytheoretical;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
SKIP_INSTALL = YES;

View File

@ -9,7 +9,7 @@
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>net.kode54.highlytheoretical</string>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>

View File

@ -0,0 +1,2 @@
/* Localized versions of Info.plist keys */

View File

@ -15,6 +15,7 @@
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
833F68481CDBCABF00AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = "<group>"; };
836FB556182053D700B3AD2D /* HivelyPlayer.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = HivelyPlayer.framework; sourceTree = BUILT_PRODUCTS_DIR; };
836FB561182053D700B3AD2D /* HivelyPlayer-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "HivelyPlayer-Info.plist"; sourceTree = "<group>"; };
836FB563182053D700B3AD2D /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
@ -127,7 +128,7 @@
836FB54D182053D700B3AD2D /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0500;
LastUpgradeCheck = 0730;
ORGANIZATIONNAME = "Christopher Snowhill";
};
buildConfigurationList = 836FB550182053D700B3AD2D /* Build configuration list for PBXProject "HivelyPlayer" */;
@ -136,6 +137,7 @@
hasScannedForEncodings = 0;
knownRegions = (
en,
es,
);
mainGroup = 836FB54C182053D700B3AD2D;
productRefGroup = 836FB557182053D700B3AD2D /* Products */;
@ -175,6 +177,7 @@
isa = PBXVariantGroup;
children = (
836FB563182053D700B3AD2D /* en */,
833F68481CDBCABF00AFB9F0 /* es */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
@ -198,6 +201,7 @@
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
@ -261,6 +265,7 @@
FRAMEWORK_VERSION = A;
INFOPLIST_FILE = "HivelyPlayer/HivelyPlayer-Info.plist";
INSTALL_PATH = "@loader_path/../Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = net.kode54.hivelyplayer;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
WRAPPER_EXTENSION = framework;
@ -277,6 +282,7 @@
FRAMEWORK_VERSION = A;
INFOPLIST_FILE = "HivelyPlayer/HivelyPlayer-Info.plist";
INSTALL_PATH = "@loader_path/../Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = net.kode54.hivelyplayer;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
WRAPPER_EXTENSION = framework;

View File

@ -9,7 +9,7 @@
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>net.kode54.hivelyplayer</string>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>

View File

@ -170,7 +170,7 @@ int hvl_blip_clocks_needed( const hvl_blip_t* m, int samples )
if ( needed < m->offset )
return 0;
return (needed - m->offset + m->factor - 1) / m->factor;
return (int)((needed - m->offset + m->factor - 1) / m->factor);
}
void hvl_blip_end_frame( hvl_blip_t* m, unsigned t )
@ -213,7 +213,7 @@ int hvl_blip_read_samples( hvl_blip_t* m, int out [], int count, int gain )
do
{
/* Eliminate fraction */
int s = ARITH_SHIFT( sum, delta_bits );
int s = (int) ARITH_SHIFT( sum, delta_bits );
sum += *in++;

View File

@ -0,0 +1,2 @@
/* Localized versions of Info.plist keys */

View File

@ -121,7 +121,7 @@ static int32 clipshifted8(int32 in)
{
int16 top = (int16)(in >> 16);
if (top > 127) in = 127 << 16;
else if (top < -128) in = -128 << 16;
else if (top < -128) in = -128 * (1 << 16);
return in;
}
@ -314,10 +314,10 @@ void hvl_InitReplayer( void )
hvl_GenFilterWaves( &waves[WO_TRIANGLE_04], &waves[WO_LOWPASSES], &waves[WO_HIGHPASSES] );
}
struct hvl_tune *hvl_load_ahx( uint8 *buf, uint32 buflen, uint32 defstereo, uint32 freq )
struct hvl_tune *hvl_load_ahx( const uint8 *buf, uint32 buflen, uint32 defstereo, uint32 freq )
{
uint8 *bptr;
TEXT *nptr;
const uint8 *bptr;
const TEXT *nptr;
uint32 i, j, k, l, posn, insn, ssn, hs, trkn, trkl;
struct hvl_tune *ht;
struct hvl_plsentry *ple;
@ -406,12 +406,12 @@ struct hvl_tune *hvl_load_ahx( uint8 *buf, uint32 buflen, uint32 defstereo, uint
}
bptr = &buf[(buf[4]<<8)|buf[5]];
i = min( 128, buf + buflen - bptr );
i = min( 128, (uint32) (buf + buflen - bptr) );
strncpy( ht->ht_Name, (TEXT *)bptr, i );
if ( i < 128 ) ht->ht_Name[ i ] = 0;
nptr = (TEXT *)bptr+strlen( ht->ht_Name )+1;
if ( nptr > buf + buflen )
if ( (uint8*) nptr > buf + buflen )
{
free( ht );
return NULL;
@ -541,10 +541,9 @@ struct hvl_tune *hvl_load_ahx( uint8 *buf, uint32 buflen, uint32 defstereo, uint
struct hvl_tune *hvl_LoadTune( const uint8 *buf, uint32 buflen, uint32 freq, uint32 defstereo )
{
struct hvl_tune *ht;
uint8 *bptr;
TEXT *nptr;
const uint8 *bptr;
const TEXT *nptr;
uint32 i, j, posn, insn, ssn, chnn, hs, trkl, trkn;
FILE *fh;
struct hvl_plsentry *ple;
if ( !buf || buflen < 4 )
@ -670,12 +669,12 @@ struct hvl_tune *hvl_LoadTune( const uint8 *buf, uint32 buflen, uint32 freq, uin
free( ht );
return NULL;
}
i = min( 128, buf + buflen - bptr );
i = min( 128, (uint32) (buf + buflen - bptr) );
strncpy( ht->ht_Name, (TEXT *)bptr, i );
if ( i < 128 ) ht->ht_Name[ i ] = 0;
nptr = (TEXT *)bptr+strlen( ht->ht_Name )+1;
if ( nptr > buf + buflen )
if ( (uint8 *)nptr > buf + buflen )
{
free( ht );
return NULL;
@ -1884,7 +1883,7 @@ void hvl_mixchunk( struct hvl_tune *ht, uint32 samples, int8 *buf1, int8 *buf2,
int32 vol[MAX_CHANNELS];
uint32 pos[MAX_CHANNELS];
uint32 rpos[MAX_CHANNELS];
uint32 cnt;
// uint32 cnt;
int32 panl[MAX_CHANNELS];
int32 panr[MAX_CHANNELS];
// uint32 vu[MAX_CHANNELS];

View File

@ -218,7 +218,7 @@ void _Huffman_PrintCodes(huff_sym_t * sym, unsigned int num_symbols, int print_t
qsort(sym, num_symbols, sizeof(huff_sym_t),
(int (*)(const void *, const void *)) _Huffman_CompBits);
printf("{\n ");
for( i = num_symbols - 1; i >= 0; i--) {
for( i = num_symbols - 1; i != ~0; i--) {
printf("{0x%.8x, %u, %i}", sym[i].Code << (32 - sym[i].Bits), sym[i].Bits, sym[i].Symbol - offset);
if (i != 0)
printf(", ");
@ -229,7 +229,7 @@ void _Huffman_PrintCodes(huff_sym_t * sym, unsigned int num_symbols, int print_t
qsort(sym, num_symbols, sizeof(huff_sym_t),
(int (*)(const void *, const void *)) _Huffman_CompBits);
printf("{\n ");
for( i = num_symbols - 1; i >= 0; i--) {
for( i = num_symbols - 1; i != ~0; i--) {
int symbol = sym[i].Symbol;
packs[3] = symbol / (offset * offset * offset);
packs[2] = (symbol - packs[3] * offset * offset * offset) / (offset * offset);

View File

@ -109,8 +109,8 @@ mpc_demux_fill(mpc_demux * d, mpc_uint32_t min_bytes, int flags)
mpc_uint32_t bytesread;
if (flags & MPC_BUFFER_SWAP) {
bytes2read &= -1 << 2;
offset = (unread_bytes + 3) & ( -1 << 2);
bytes2read &= -1 * (1 << 2);
offset = (unread_bytes + 3) & ( -1 * (1 << 2));
offset -= unread_bytes;
}
@ -162,7 +162,7 @@ mpc_demux_seek(mpc_demux * d, mpc_seek_t fpos, mpc_uint32_t min_bytes) {
} else {
mpc_seek_t next_pos = fpos >> 3;
if (d->si.stream_version == 7)
next_pos = ((next_pos - d->si.header_position) & (-1 << 2)) + d->si.header_position;
next_pos = ((next_pos - d->si.header_position) & (-1 * (1 << 2))) + d->si.header_position;
bit_offset = (int) (fpos - (next_pos << 3));
mpc_demux_clear_buff(d);
@ -312,7 +312,7 @@ static mpc_status mpc_demux_ST(mpc_demux * d)
for (i = 2; i < file_table_size; i++) {
int code = mpc_bits_golomb_dec(&r, 12);
if (code & 1)
code = -(code & (-1 << 1));
code = -(code & (-1 * (1 << 1)));
code <<= 2;
last[i & 1] = code + 2 * last[(i-1) & 1] - last[i & 1];
if ((i & mask) == 0)

View File

@ -1084,6 +1084,7 @@ CopyTags_APE ( FILE* fp )
*/
#if 0
static const char* const parser_strings [] = {
"/A_Tx",
"/A/Tx",
@ -1098,6 +1099,7 @@ static const char* const parser_strings [] = {
"/A/C N_0x",
"/A/C_0x",
};
#endif
/*
* dst[0] = Artist

View File

@ -6,14 +6,14 @@
<string>English</string>
<key>CFBundleExecutable</key>
<string>${EXECUTABLE_NAME}</string>
<key>CFBundleName</key>
<string>${PRODUCT_NAME}</string>
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>org.cogx.lib.mpcdec</string>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>${PRODUCT_NAME}</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleSignature</key>

View File

@ -37,6 +37,7 @@
/* Begin PBXFileReference section */
089C1667FE841158C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
833F683F1CDBCAB300AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = "<group>"; };
83A16EED19F48A2E00842DBC /* huffman.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = huffman.c; path = Files/src/huffman.c; sourceTree = "<group>"; };
83A16EEE19F48A2E00842DBC /* mpc_bits_reader.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = mpc_bits_reader.c; path = Files/src/mpc_bits_reader.c; sourceTree = "<group>"; };
83A16EEF19F48A2E00842DBC /* mpc_demux.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = mpc_demux.c; path = Files/src/mpc_demux.c; sourceTree = "<group>"; };
@ -228,7 +229,7 @@
0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0500;
LastUpgradeCheck = 0730;
};
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "MPCDec" */;
compatibilityVersion = "Xcode 3.2";
@ -236,6 +237,7 @@
hasScannedForEncodings = 1;
knownRegions = (
en,
es,
);
mainGroup = 0867D691FE84028FC02AAC07 /* MPCDec */;
productRefGroup = 034768DFFF38A50411DB9C8B /* Products */;
@ -285,6 +287,7 @@
isa = PBXVariantGroup;
children = (
089C1667FE841158C02AAC07 /* English */,
833F683F1CDBCAB300AFB9F0 /* es */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
@ -309,6 +312,7 @@
HEADER_SEARCH_PATHS = Files/include/;
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "@loader_path/../Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = org.cogx.lib.mpcdec;
PRODUCT_NAME = mpcdec;
SDKROOT = macosx;
SKIP_INSTALL = YES;
@ -330,6 +334,7 @@
GCC_PREFIX_HEADER = "";
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "@loader_path/../Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = org.cogx.lib.mpcdec;
PRODUCT_NAME = mpcdec;
SDKROOT = macosx;
SKIP_INSTALL = YES;
@ -341,6 +346,7 @@
1DEB91B208733DA50010E9CD /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ENABLE_TESTABILITY = YES;
GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1";
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;

Binary file not shown.

View File

@ -34,6 +34,7 @@
32F1617814E6BBFC00D6AB2F /* NDKeyboardLayout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NDKeyboardLayout.h; sourceTree = "<group>"; };
32F1617914E6BBFC00D6AB2F /* NDKeyboardLayout.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NDKeyboardLayout.m; sourceTree = "<group>"; };
32F1618D14E6BE7300D6AB2F /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = System/Library/Frameworks/Carbon.framework; sourceTree = SDKROOT; };
833F681D1CDBCAA700AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@ -150,7 +151,7 @@
32F1614C14E6BB3B00D6AB2F /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0500;
LastUpgradeCheck = 0730;
ORGANIZATIONNAME = "dmitry.promsky@gmail.com";
};
buildConfigurationList = 32F1614F14E6BB3B00D6AB2F /* Build configuration list for PBXProject "NDHotKey" */;
@ -159,6 +160,7 @@
hasScannedForEncodings = 0;
knownRegions = (
en,
es,
);
mainGroup = 32F1614A14E6BB3B00D6AB2F;
productRefGroup = 32F1615714E6BB3B00D6AB2F /* Products */;
@ -199,6 +201,7 @@
isa = PBXVariantGroup;
children = (
32F1616314E6BB3B00D6AB2F /* en */,
833F681D1CDBCAA700AFB9F0 /* es */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
@ -210,16 +213,21 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
@ -245,17 +253,21 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "Developer ID Application";
COPY_PHASE_STRIP = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
GCC_NO_COMMON_BLOCKS = YES;
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES;
@ -281,6 +293,7 @@
GCC_PREFIX_HEADER = "NDHotKey/NDHotKey-Prefix.pch";
INFOPLIST_FILE = "NDHotKey/NDHotKey-Info.plist";
INSTALL_PATH = "@loader_path/../Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = "ND.${PRODUCT_NAME:rfc1034identifier}";
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
SKIP_INSTALL = YES;
@ -299,6 +312,7 @@
GCC_PREFIX_HEADER = "NDHotKey/NDHotKey-Prefix.pch";
INFOPLIST_FILE = "NDHotKey/NDHotKey-Info.plist";
INSTALL_PATH = "@loader_path/../Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = "ND.${PRODUCT_NAME:rfc1034identifier}";
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
SKIP_INSTALL = YES;

View File

@ -9,7 +9,7 @@
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>ND.${PRODUCT_NAME:rfc1034identifier}</string>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>

View File

@ -89,17 +89,21 @@ static NSString * describeHashFunction( NSHashTable * aTable, const void * aHotK
static UInt32 _idForCharacterAndModifer( unichar aCharacter, NSUInteger aModFlags ) { return (UInt32)aCharacter | (UInt32)(aModFlags<<16); }
#if 0
static void _getCharacterAndModiferForId( UInt32 anId, unichar *aCharacter, NSUInteger *aModFlags )
{
*aModFlags = anId>>16;
*aCharacter = anId&0xFFFF;
}
#endif
#ifndef NDMapTableClassDefined
struct HotKeyMappingEntry
{
UInt32 hotKeyId;
NDHotKeyEvent * hotKeyEvent;
};
#endif
+ (BOOL)install
{
@ -115,7 +119,7 @@ struct HotKeyMappingEntry
NDHotKeyEventLock;
if( theHotKeyEvents != nil && hotKeysEventHandler == NULL )
{
if( InstallEventHandler( GetEventDispatcherTarget(), NewEventHandlerUPP((EventHandlerProcPtr)eventHandlerCallback), 2, theTypeSpec, theHotKeyEvents, &hotKeysEventHandler ) != noErr )
if( InstallEventHandler( GetEventDispatcherTarget(), NewEventHandlerUPP((EventHandlerProcPtr)eventHandlerCallback), 2, theTypeSpec, (__bridge void *)(theHotKeyEvents), &hotKeysEventHandler ) != noErr )
NSLog(@"Could not install Event handler");
}
NDHotKeyEventUnlock;
@ -268,37 +272,37 @@ struct HotKeyMappingEntry
+ (id)hotKeyWithEvent:(NSEvent *)anEvent
{
return [[[self alloc] initWithEvent:anEvent] autorelease];
return [[self alloc] initWithEvent:anEvent];
}
+ (id)hotKeyWithEvent:(NSEvent *)anEvent target:(id)aTarget selector:(SEL)aSelector
{
return [[[self alloc] initWithEvent:anEvent target:aTarget selector:aSelector] autorelease];
return [[self alloc] initWithEvent:anEvent target:aTarget selector:aSelector];
}
+ (id)hotKeyWithKeyCharacter:(unichar)aKeyCharacter modifierFlags:(NSUInteger)aModifierFlags
{
return [[[self alloc] initWithKeyCharacter:aKeyCharacter modifierFlags:aModifierFlags target:nil selector:(SEL)0] autorelease];
return [[self alloc] initWithKeyCharacter:aKeyCharacter modifierFlags:aModifierFlags target:nil selector:(SEL)0];
}
+ (id)hotKeyWithKeyCode:(UInt16)aKeyCode modifierFlags:(NSUInteger)aModifierFlags
{
return [[[self alloc] initWithKeyCode:aKeyCode modifierFlags:aModifierFlags target:nil selector:(SEL)0] autorelease];
return [[self alloc] initWithKeyCode:aKeyCode modifierFlags:aModifierFlags target:nil selector:(SEL)0];
}
+ (id)hotKeyWithKeyCharacter:(unichar)aKeyCharacter modifierFlags:(NSUInteger)aModifierFlags target:(id)aTarget selector:(SEL)aSelector
{
return [[[self alloc] initWithKeyCharacter:aKeyCharacter modifierFlags:aModifierFlags target:aTarget selector:aSelector] autorelease];
return [[self alloc] initWithKeyCharacter:aKeyCharacter modifierFlags:aModifierFlags target:aTarget selector:aSelector];
}
+ (id)hotKeyWithKeyCode:(UInt16)aKeyCode modifierFlags:(NSUInteger)aModifierFlags target:(id)aTarget selector:(SEL)aSelector
{
return [[[self alloc] initWithKeyCode:aKeyCode modifierFlags:aModifierFlags target:aTarget selector:aSelector] autorelease];
return [[self alloc] initWithKeyCode:aKeyCode modifierFlags:aModifierFlags target:aTarget selector:aSelector];
}
+ (id)hotKeyWithWithPropertyList:(id)aPropertyList
{
return [[[self alloc] initWithPropertyList:aPropertyList] autorelease];
return [[self alloc] initWithPropertyList:aPropertyList];
}
+ (NSString *)description
@ -325,7 +329,7 @@ struct HotKeyMappingEntry
#pragma mark - creation and destruction
- (id)init
{
[self release];
self = nil;
NSAssert( NO, @"You can not initialize a Hot Key with the init method" );
return nil;
}
@ -373,7 +377,7 @@ struct HotKeyMappingEntry
[self addHotKey];
}
else
[self release], self = nil;
self = nil;
return self;
}
@ -456,7 +460,7 @@ struct HotKeyMappingEntry
}
}
else
[self release], self = nil;
self = nil;
return self;
}
@ -471,52 +475,30 @@ struct HotKeyMappingEntry
nil];
}
- (oneway void)release
{
/*
* We need to remove the hot key from the hash table before it's retain count reaches zero
*/
if( [self retainCount] == 1 )
{
#ifdef NDMapTableClassDefined
NSMapTable * theAllHotKeyEvents = [NDHotKeyEvent allHotKeyEvents];
#else
NSHashTable * theAllHotKeyEvents = [NDHotKeyEvent allHotKeyEvents];
#endif
if( theAllHotKeyEvents )
{
#ifndef NDMapTableClassDefined
struct HotKeyMappingEntry theDummyEntry = {[self hotKeyId],nil};
#endif
NDHotKeyEventLock;
if( [self retainCount] == 1 ) // check again because it might have changed
{
switchHotKey( self, NO );
#ifdef NDMapTableClassDefined
[theAllHotKeyEvents removeObjectForKey:[NSNumber numberWithUnsignedInt:[self hotKeyId]]];
#else
id theHotKeyEvent = NSHashGet( theAllHotKeyEvents, (void*)&theDummyEntry );
if( theHotKeyEvent )
NSHashRemove( theAllHotKeyEvents, theHotKeyEvent );
#endif
}
NDHotKeyEventUnlock;
}
}
[super release];
}
#if 0
- (void)dealloc
{
if( reference )
{
if( UnregisterEventHotKey( reference ) != noErr ) // in lock from release
NSLog( @"Failed to unregister hot key %@", self );
}
[super dealloc];
}
#ifdef NDMapTableClassDefined
NSMapTable * theAllHotKeyEvents = [NDHotKeyEvent allHotKeyEvents];
#else
NSHashTable * theAllHotKeyEvents = [NDHotKeyEvent allHotKeyEvents];
#endif
if( theAllHotKeyEvents )
{
#ifndef NDMapTableClassDefined
struct HotKeyMappingEntry theDummyEntry = {[self hotKeyId],nil};
#endif
NDHotKeyEventLock;
switchHotKey( self, NO );
#ifdef NDMapTableClassDefined
[theAllHotKeyEvents removeObjectForKey:[NSNumber numberWithUnsignedInt:[self hotKeyId]]];
#else
id theHotKeyEvent = NSHashGet( theAllHotKeyEvents, (void*)&theDummyEntry );
if( theHotKeyEvent )
NSHashRemove( theAllHotKeyEvents, theHotKeyEvent );
#endif
NDHotKeyEventUnlock;
}
}
- (BOOL)setEnabled:(BOOL)aFlag
{
@ -581,8 +563,8 @@ struct HotKeyMappingEntry
selectorPressed = aSelectorPressed;
#ifdef NS_BLOCKS_AVAILABLE
[releasedBlock release], releasedBlock = nil;
[pressedBlock release], pressedBlock = nil;
releasedBlock = nil;
pressedBlock = nil;
#endif
return theResult; // was change succesful
@ -596,10 +578,10 @@ struct HotKeyMappingEntry
if( ![target respondsToSelector:@selector(targetWillChangeToObject:forHotKeyEvent:)] || [target targetWillChangeToObject:nil forHotKeyEvent:self] )
{
if( releasedBlock != aReleasedBlock )
[releasedBlock release], releasedBlock = [aReleasedBlock copy];
releasedBlock = [aReleasedBlock copy];
if( pressedBlock != aPressedBlock )
[pressedBlock release], pressedBlock = [aPressedBlock copy];
pressedBlock = [aPressedBlock copy];
selectorReleased = (SEL)0;
selectorPressed = (SEL)0;
@ -902,7 +884,7 @@ static OSStatus switchHotKey( NDHotKeyEvent * self, BOOL aFlag )
*/
+ (id)hotKeyWithKeyCode:(UInt16)aKeyCode character:(unichar)aChar modifierFlags:(NSUInteger)aModifierFlags target:(id)aTarget selector:(SEL)aSelector
{
return [[[self alloc] initWithKeyCode:aKeyCode modifierFlags:aModifierFlags target:aTarget selector:aSelector] autorelease];
return [[self alloc] initWithKeyCode:aKeyCode modifierFlags:aModifierFlags target:aTarget selector:aSelector];
}
/*

View File

@ -318,8 +318,8 @@ static volatile NDKeyboardLayout * kCurrentKeyboardLayout = nil;
static void NDKeyboardLayoutNotificationCallback( CFNotificationCenterRef aCenter, void * self, CFStringRef aName, const void * anObj, CFDictionaryRef aUserInfo )
{
NSDictionary * theUserInfo = [NSDictionary dictionaryWithObject:kCurrentKeyboardLayout forKey:NDKeyboardLayoutPreviousKeyboardLayoutUserInfoKey];
@synchronized(self) { [kCurrentKeyboardLayout release], kCurrentKeyboardLayout = nil; }
[[NSNotificationCenter defaultCenter] postNotificationName:NDKeyboardLayoutSelectedKeyboardInputSourceChangedNotification object:self userInfo:theUserInfo];
@synchronized(self) { kCurrentKeyboardLayout = nil; }
[[NSNotificationCenter defaultCenter] postNotificationName:NDKeyboardLayoutSelectedKeyboardInputSourceChangedNotification object:(__bridge id _Nullable)(self) userInfo:theUserInfo];
}
+ (void)initialize
@ -364,22 +364,21 @@ static void NDKeyboardLayoutNotificationCallback( CFNotificationCenterRef aCente
- (id)init
{
[self release];
return [[NDKeyboardLayout keyboardLayout] retain];
return [NDKeyboardLayout keyboardLayout];
}
- (id)initWithLanguage:(NSString *)aLangauge { return [self initWithInputSource:TISCopyInputSourceForLanguage((CFStringRef)aLangauge)]; }
- (id)initWithLanguage:(NSString *)aLangauge { return [self initWithInputSource:TISCopyInputSourceForLanguage((__bridge CFStringRef)aLangauge)]; }
- (id)initWithInputSource:(TISInputSourceRef)aSource
{
if( (self = [super init]) != nil )
{
if( aSource != NULL && (keyboardLayoutData = (CFDataRef)CFMakeCollectable(TISGetInputSourceProperty(aSource, kTISPropertyUnicodeKeyLayoutData))) != nil )
if( aSource != NULL && (keyboardLayoutData = (CFDataRef)TISGetInputSourceProperty(aSource, kTISPropertyUnicodeKeyLayoutData)) != nil )
{
CFRetain( keyboardLayoutData );
}
else
self = nil, [self release];
self = nil;
}
return self;
}
@ -390,7 +389,6 @@ static void NDKeyboardLayoutNotificationCallback( CFNotificationCenterRef aCente
free( (void*)mappings );
if( keyboardLayoutData != NULL )
CFRelease( keyboardLayoutData );
[super dealloc];
}
- (NSString*)stringForCharacter:(unichar)aCharacter modifierFlags:(UInt32)aModifierFlags

View File

@ -0,0 +1,2 @@
/* Localized versions of Info.plist keys */

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
@ -11,7 +11,7 @@
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>org.xiph.ogg</string>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
@ -22,9 +22,9 @@
<string>????</string>
<key>CFBundleVersion</key>
<string>1.1.4</string>
<key>NSHumanReadableCopyright</key>
<string>Ogg framework 1.1.4, Copyright © 1994-2009 Xiph.Org Foundation</string>
<key>CSResourcesFileMapped</key>
<true/>
<key>NSHumanReadableCopyright</key>
<string>Ogg framework 1.1.4, Copyright © 1994-2009 Xiph.Org Foundation</string>
</dict>
</plist>

View File

@ -3,7 +3,7 @@
archiveVersion = 1;
classes = {
};
objectVersion = 45;
objectVersion = 46;
objects = {
/* Begin PBXBuildFile section */
@ -25,6 +25,7 @@
730F236509181ABE00AB638C /* ogg.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ogg.h; path = ../include/ogg/ogg.h; sourceTree = SOURCE_ROOT; };
730F236609181ABE00AB638C /* os_types.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = os_types.h; path = ../include/ogg/os_types.h; sourceTree = SOURCE_ROOT; };
734FB2E50B18B33E00D561D7 /* libogg.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libogg.a; sourceTree = BUILT_PRODUCTS_DIR; };
833F683C1CDBCAB300AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = "<group>"; };
8D07F2C70486CC7A007CD1D0 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
8D07F2C80486CC7A007CD1D0 /* Ogg.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Ogg.framework; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */
@ -169,13 +170,15 @@
0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0730;
};
buildConfigurationList = 730F235809181A3A00AB638C /* Build configuration list for PBXProject "Ogg" */;
compatibilityVersion = "Xcode 2.4";
compatibilityVersion = "Xcode 3.2";
developmentRegion = English;
hasScannedForEncodings = 1;
knownRegions = (
en,
es,
);
mainGroup = 0867D691FE84028FC02AAC07 /* Ogg */;
productRefGroup = 034768DDFF38A45A11DB9C8B /* Products */;
@ -235,6 +238,7 @@
isa = PBXVariantGroup;
children = (
089C1667FE841158C02AAC07 /* English */,
833F683C1CDBCAB300AFB9F0 /* es */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
@ -245,6 +249,7 @@
730F235509181A3A00AB638C /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
COMBINE_HIDPI_IMAGES = YES;
COPY_PHASE_STRIP = NO;
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
@ -257,6 +262,7 @@
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "@loader_path/Frameworks";
MACOSX_DEPLOYMENT_TARGET = 10.7;
PRODUCT_BUNDLE_IDENTIFIER = org.xiph.ogg;
PRODUCT_NAME = Ogg;
SDKROOT = macosx;
WRAPPER_EXTENSION = framework;
@ -267,8 +273,8 @@
730F235609181A3A00AB638C /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = "$(ARCHS_STANDARD)";
CODE_SIGN_IDENTITY = "Developer ID Application";
COMBINE_HIDPI_IMAGES = YES;
COPY_PHASE_STRIP = YES;
DYLIB_COMPATIBILITY_VERSION = 1;
DYLIB_CURRENT_VERSION = 1;
@ -280,6 +286,7 @@
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "@loader_path/Frameworks";
MACOSX_DEPLOYMENT_TARGET = 10.7;
PRODUCT_BUNDLE_IDENTIFIER = org.xiph.ogg;
PRODUCT_NAME = Ogg;
SDKROOT = macosx;
WRAPPER_EXTENSION = framework;
@ -290,8 +297,10 @@
730F235909181A3A00AB638C /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ENABLE_TESTABILITY = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = __MACOSX__;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.4u.sdk";
};
name = Debug;
@ -299,10 +308,6 @@
730F235A09181A3A00AB638C /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = (
ppc,
i386,
);
GCC_OPTIMIZATION_LEVEL = 3;
GCC_PREPROCESSOR_DEFINITIONS = __MACOSX__;
OTHER_CFLAGS = (
@ -316,6 +321,7 @@
734FB2EE0B18B3B900D561D7 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
COMBINE_HIDPI_IMAGES = YES;
COPY_PHASE_STRIP = NO;
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_FIX_AND_CONTINUE = YES;
@ -330,6 +336,7 @@
734FB2EF0B18B3B900D561D7 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
COMBINE_HIDPI_IMAGES = YES;
COPY_PHASE_STRIP = YES;
GCC_ENABLE_FIX_AND_CONTINUE = NO;
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;

Binary file not shown.

View File

@ -272,6 +272,7 @@
/* Begin PBXFileReference section */
830F884119C9105E00420FB0 /* Ogg.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Ogg.xcodeproj; path = ../Ogg/macosx/Ogg.xcodeproj; sourceTree = "<group>"; };
833F68421CDBCABC00AFB9F0 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = "<group>"; };
8375B06217FFEABB0092A79F /* Opus.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Opus.framework; sourceTree = BUILT_PRODUCTS_DIR; };
8375B06D17FFEABB0092A79F /* Opus-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Opus-Info.plist"; sourceTree = "<group>"; };
8375B06F17FFEABB0092A79F /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
@ -987,7 +988,7 @@
8375B05917FFEABB0092A79F /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0500;
LastUpgradeCheck = 0730;
ORGANIZATIONNAME = "Christopher Snowhill";
};
buildConfigurationList = 8375B05C17FFEABB0092A79F /* Build configuration list for PBXProject "Opus" */;
@ -996,6 +997,7 @@
hasScannedForEncodings = 0;
knownRegions = (
en,
es,
);
mainGroup = 8375B05817FFEABB0092A79F;
productRefGroup = 8375B06317FFEABB0092A79F /* Products */;
@ -1215,6 +1217,7 @@
isa = PBXVariantGroup;
children = (
8375B06F17FFEABB0092A79F /* en */,
833F68421CDBCABC00AFB9F0 /* es */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
@ -1238,6 +1241,7 @@
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
COPY_PHASE_STRIP = NO;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
@ -1279,6 +1283,7 @@
ENABLE_NS_ASSERTIONS = NO;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
GCC_PREPROCESSOR_DEFINITIONS = __OPTIMIZE__;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
@ -1322,6 +1327,7 @@
"-weak_framework",
Ogg,
);
PRODUCT_BUNDLE_IDENTIFIER = org.xiph.libopus;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
SKIP_INSTALL = YES;
@ -1359,6 +1365,7 @@
"-weak_framework",
Ogg,
);
PRODUCT_BUNDLE_IDENTIFIER = org.xiph.libopus;
PRODUCT_NAME = "$(TARGET_NAME)";
SDKROOT = macosx;
SKIP_INSTALL = YES;

View File

@ -9,7 +9,7 @@
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>org.xiph.libopus</string>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>

View File

@ -0,0 +1,2 @@
/* Localized versions of Info.plist keys */

View File

@ -74,19 +74,19 @@ static OPUS_INLINE opus_int32 silk_A2NLSF_eval_poly( /* return the polynomial ev
if ( opus_likely( 8 == dd ) )
{
y32 = silk_SMLAWW( p[ 7 ], y32, x_Q16 );
y32 = silk_SMLAWW( p[ 6 ], y32, x_Q16 );
y32 = silk_SMLAWW( p[ 5 ], y32, x_Q16 );
y32 = silk_SMLAWW( p[ 4 ], y32, x_Q16 );
y32 = silk_SMLAWW( p[ 3 ], y32, x_Q16 );
y32 = silk_SMLAWW( p[ 2 ], y32, x_Q16 );
y32 = silk_SMLAWW( p[ 1 ], y32, x_Q16 );
y32 = silk_SMLAWW( p[ 0 ], y32, x_Q16 );
y32 = (opus_int32) silk_SMLAWW( p[ 7 ], y32, x_Q16 );
y32 = (opus_int32) silk_SMLAWW( p[ 6 ], y32, x_Q16 );
y32 = (opus_int32) silk_SMLAWW( p[ 5 ], y32, x_Q16 );
y32 = (opus_int32) silk_SMLAWW( p[ 4 ], y32, x_Q16 );
y32 = (opus_int32) silk_SMLAWW( p[ 3 ], y32, x_Q16 );
y32 = (opus_int32) silk_SMLAWW( p[ 2 ], y32, x_Q16 );
y32 = (opus_int32) silk_SMLAWW( p[ 1 ], y32, x_Q16 );
y32 = (opus_int32) silk_SMLAWW( p[ 0 ], y32, x_Q16 );
}
else
{
for( n = dd - 1; n >= 0; n-- ) {
y32 = silk_SMLAWW( p[ n ], y32, x_Q16 ); /* Q16 */
y32 = (opus_int32) silk_SMLAWW( p[ n ], y32, x_Q16 ); /* Q16 */
}
}
return y32;

View File

@ -128,14 +128,14 @@ void silk_CNG(
ALLOC( CNG_sig_Q10, length + MAX_LPC_ORDER, opus_int32 );
/* Generate CNG excitation */
gain_Q16 = silk_SMULWW( psDec->sPLC.randScale_Q14, psDec->sPLC.prevGain_Q16[1] );
gain_Q16 = (opus_int32) silk_SMULWW( psDec->sPLC.randScale_Q14, psDec->sPLC.prevGain_Q16[1] );
if( gain_Q16 >= (1 << 21) || psCNG->CNG_smth_Gain_Q16 > (1 << 23) ) {
gain_Q16 = silk_SMULTT( gain_Q16, gain_Q16 );
gain_Q16 = silk_SUB_LSHIFT32(silk_SMULTT( psCNG->CNG_smth_Gain_Q16, psCNG->CNG_smth_Gain_Q16 ), gain_Q16, 5 );
gain_Q16 = silk_LSHIFT32( silk_SQRT_APPROX( gain_Q16 ), 16 );
} else {
gain_Q16 = silk_SMULWW( gain_Q16, gain_Q16 );
gain_Q16 = silk_SUB_LSHIFT32(silk_SMULWW( psCNG->CNG_smth_Gain_Q16, psCNG->CNG_smth_Gain_Q16 ), gain_Q16, 5 );
gain_Q16 = (opus_int32) silk_SMULWW( gain_Q16, gain_Q16 );
gain_Q16 = (opus_int32) silk_SUB_LSHIFT32(silk_SMULWW( psCNG->CNG_smth_Gain_Q16, psCNG->CNG_smth_Gain_Q16 ), gain_Q16, 5 );
gain_Q16 = silk_LSHIFT32( silk_SQRT_APPROX( gain_Q16 ), 8 );
}
silk_CNG_exc( CNG_sig_Q10 + MAX_LPC_ORDER, psCNG->CNG_exc_buf_Q14, gain_Q16, length, &psCNG->rand_seed );
@ -149,23 +149,23 @@ void silk_CNG(
silk_assert( psDec->LPC_order == 10 || psDec->LPC_order == 16 );
/* Avoids introducing a bias because silk_SMLAWB() always rounds to -inf */
sum_Q6 = silk_RSHIFT( psDec->LPC_order, 1 );
sum_Q6 = silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 1 ], A_Q12[ 0 ] );
sum_Q6 = silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 2 ], A_Q12[ 1 ] );
sum_Q6 = silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 3 ], A_Q12[ 2 ] );
sum_Q6 = silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 4 ], A_Q12[ 3 ] );
sum_Q6 = silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 5 ], A_Q12[ 4 ] );
sum_Q6 = silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 6 ], A_Q12[ 5 ] );
sum_Q6 = silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 7 ], A_Q12[ 6 ] );
sum_Q6 = silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 8 ], A_Q12[ 7 ] );
sum_Q6 = silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 9 ], A_Q12[ 8 ] );
sum_Q6 = silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 10 ], A_Q12[ 9 ] );
sum_Q6 = (opus_int32) silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 1 ], A_Q12[ 0 ] );
sum_Q6 = (opus_int32) silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 2 ], A_Q12[ 1 ] );
sum_Q6 = (opus_int32) silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 3 ], A_Q12[ 2 ] );
sum_Q6 = (opus_int32) silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 4 ], A_Q12[ 3 ] );
sum_Q6 = (opus_int32) silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 5 ], A_Q12[ 4 ] );
sum_Q6 = (opus_int32) silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 6 ], A_Q12[ 5 ] );
sum_Q6 = (opus_int32) silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 7 ], A_Q12[ 6 ] );
sum_Q6 = (opus_int32) silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 8 ], A_Q12[ 7 ] );
sum_Q6 = (opus_int32) silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 9 ], A_Q12[ 8 ] );
sum_Q6 = (opus_int32) silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 10 ], A_Q12[ 9 ] );
if( psDec->LPC_order == 16 ) {
sum_Q6 = silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 11 ], A_Q12[ 10 ] );
sum_Q6 = silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 12 ], A_Q12[ 11 ] );
sum_Q6 = silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 13 ], A_Q12[ 12 ] );
sum_Q6 = silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 14 ], A_Q12[ 13 ] );
sum_Q6 = silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 15 ], A_Q12[ 14 ] );
sum_Q6 = silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 16 ], A_Q12[ 15 ] );
sum_Q6 = (opus_int32) silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 11 ], A_Q12[ 10 ] );
sum_Q6 = (opus_int32) silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 12 ], A_Q12[ 11 ] );
sum_Q6 = (opus_int32) silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 13 ], A_Q12[ 12 ] );
sum_Q6 = (opus_int32) silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 14 ], A_Q12[ 13 ] );
sum_Q6 = (opus_int32) silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 15 ], A_Q12[ 14 ] );
sum_Q6 = (opus_int32) silk_SMLAWB( sum_Q6, CNG_sig_Q10[ MAX_LPC_ORDER + i - 16 ], A_Q12[ 15 ] );
}
/* Update states */

View File

@ -52,7 +52,7 @@ void silk_HP_variable_cutoff(
/* adjustment based on quality */
quality_Q15 = psEncC1->input_quality_bands_Q15[ 0 ];
pitch_freq_log_Q7 = silk_SMLAWB( pitch_freq_log_Q7, silk_SMULWB( silk_LSHIFT( -quality_Q15, 2 ), quality_Q15 ),
pitch_freq_log_Q7 = (opus_int32) silk_SMLAWB( pitch_freq_log_Q7, silk_SMULWB( silk_LSHIFT( -quality_Q15, 2 ), quality_Q15 ),
pitch_freq_log_Q7 - ( silk_lin2log( SILK_FIX_CONST( VARIABLE_HP_MIN_CUTOFF_HZ, 16 ) ) - ( 16 << 7 ) ) );
/* delta_freq = pitch_freq_log - psEnc->variable_HP_smth1; */

View File

@ -88,7 +88,7 @@ static OPUS_INLINE opus_int32 silk_SQRT_APPROX( opus_int32 x )
y >>= silk_RSHIFT(lz, 1);
/* increment using fractional part of input */
y = silk_SMLAWB(y, y, silk_SMULBB(213, frac_Q7));
y = (opus_int32) silk_SMLAWB(y, y, silk_SMULBB(213, frac_Q7));
return y;
}
@ -116,14 +116,14 @@ static OPUS_INLINE opus_int32 silk_DIV32_varQ( /* O returns a good approxim
b32_inv = silk_DIV32_16( silk_int32_MAX >> 2, silk_RSHIFT(b32_nrm, 16) ); /* Q: 29 + 16 - b_headrm */
/* First approximation */
result = silk_SMULWB(a32_nrm, b32_inv); /* Q: 29 + a_headrm - b_headrm */
result = (opus_int32) silk_SMULWB(a32_nrm, b32_inv); /* Q: 29 + a_headrm - b_headrm */
/* Compute residual by subtracting product of denominator and first approximation */
/* It's OK to overflow because the final value of a32_nrm should always be small */
a32_nrm = silk_SUB32_ovflw(a32_nrm, silk_LSHIFT_ovflw( silk_SMMUL(b32_nrm, result), 3 )); /* Q: a_headrm */
/* Refinement */
result = silk_SMLAWB(result, a32_nrm, b32_inv); /* Q: 29 + a_headrm - b_headrm */
result = (opus_int32) silk_SMLAWB(result, a32_nrm, b32_inv); /* Q: 29 + a_headrm - b_headrm */
/* Convert to Qres domain */
lshift = 29 + a_headrm - b_headrm - Qres;
@ -165,7 +165,7 @@ static OPUS_INLINE opus_int32 silk_INVERSE32_varQ( /* O returns a good appr
err_Q32 = silk_LSHIFT( ((opus_int32)1<<29) - silk_SMULWB(b32_nrm, b32_inv), 3 ); /* Q32 */
/* Refinement */
result = silk_SMLAWW(result, err_Q32, b32_inv); /* Q: 61 - b_headrm */
result = (opus_int32) silk_SMLAWW(result, err_Q32, b32_inv); /* Q: 61 - b_headrm */
/* Convert to Qres domain */
lshift = 61 - b_headrm - Qres;

Some files were not shown because too many files have changed in this diff Show More