1. Список говнокодов пользователя nunaconecto

    Всего: 2

  2. Objective C / Говнокод #11856

    −100

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    - (void) setupAndMigrate: (id<DatabaseManagerMigrateDelegate>) delegate
    {
    	self.migrationDelegate = delegate;
    	NSThread * migrationThread = [[[NSThread alloc ] initWithTarget: self selector: @selector( threadMigration )	object: nil ] autorelease];
    	[migrationThread start];
    }
    
    - (void) threadMigration
    {
    	NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    	
    	[self performBlockOnMainThread: ^{
    		_mainObjectContext = [[NSManagedObjectContext alloc] init];
    		[_mainObjectContext setPersistentStoreCoordinator:self.persistentStoreCoordinator];
    		[_mainObjectContext setUndoManager:nil];
    		NSMergePolicy * merge = [[NSMergePolicy alloc] initWithMergeType:NSMergeByPropertyObjectTrumpMergePolicyType];
    		[_mainObjectContext setMergePolicy: merge ];
    		[merge release];
    	} waitUntilDone: YES ];
    	
    	if( MIGRATION_VERSION_15 == migration )
    	{
    		[self performBlockOnMainThread: ^{
    			[self setMigrationStatus: DMS_CHECKFAVORITETRACKS ];
    			[[JKAlbumsManager sharedManager] initFavoriteTracksInContext:_mainObjectContext];
    		} waitUntilDone: YES ];
    		
    		[self performBlockOnMainThread: ^{
    			[self setMigrationStatus: DMS_CHECKFAVORITEARTIST ];
    			[[JKArtistsManager sharedManager] initFavoriteTracksInContext:_mainObjectContext];
    		} waitUntilDone: YES ];
    		
    		[self performBlockOnMainThread: ^{
    			[self setMigrationStatus: DMS_UPDATEARTISTIDS ];
    			[[JKArtistsManager sharedManager] migrateArtistFromPreMasterArtistEra];
    		} waitUntilDone: YES ];
    		
    		[self performBlockOnMainThread: ^{
    			[self setMigrationStatus: DMS_PLAYLISTMIGRATION ];
    			[self performPlaylistContentMigration];
    		} waitUntilDone: YES ];
    
    		[self performBlockOnMainThread: ^{
    			[self setMigrationStatus: DMS_SAVEANDFINALIZE ];
    			[DatabaseManager saveContext:_mainObjectContext];
    		} waitUntilDone: YES ];
    
    	}
    
    	[self performBlockOnMainThread: ^{
    		[self setMigrationStatus: DMS_DONE ];
    	} waitUntilDone: YES ];
    
    	self.migrationTimer = nil;
    	self.migrationDelegate = nil;
    	[pool drain];
    	[NSThread exit];
    }

    Видимо тут была очень острая необходимость создавать дополнительный поток =) Ну и [NSThread exit], что бы кошерно все было.

    nunaconecto, 01 Октября 2012

    Комментарии (0)
  3. Objective C / Говнокод #7582

    −113

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    - (void)imageTransitionDidStop:(NSString *)animationID finished:(NSNumber *)finished context:(void *)context {
        // clear the previous imageView
        [articleImageView removeFromSuperview];
        [articleImageView release];
        articleImageView = nil;
        articleImageView = articleImageView;
        newImageView = nil;
    }

    Чистим UIImageView так, что бы наверняка.

    nunaconecto, 18 Августа 2011

    Комментарии (31)