├── .gitignore ├── ImageLogger.crash ├── ImageLogger.xcodeproj ├── project.pbxproj ├── project.xcworkspace │ └── contents.xcworkspacedata └── xcshareddata │ └── xcschemes │ └── ImageLogger.xcscheme ├── ImageLogger ├── Base.lproj │ └── MainMenu.xib ├── Images.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json ├── Info.plist ├── LLAppDelegate.h ├── LLAppDelegate.m ├── en.lproj │ ├── Credits.rtf │ └── InfoPlist.strings └── main.m ├── ImageLoggerTouch ├── Images.xcassets │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── LaunchImage.launchimage │ │ └── Contents.json ├── Info.plist ├── LLAppDelegate.h ├── LLAppDelegate.m ├── en.lproj │ └── InfoPlist.strings └── main.m ├── README └── Shared ├── LLImageLogger.h └── LLImageLogger.m /.gitignore: -------------------------------------------------------------------------------- 1 | # OS X 2 | .DS_Store 3 | 4 | # Xcode 5 | build/ 6 | *.pbxuser 7 | !default.pbxuser 8 | *.mode1v3 9 | !default.mode1v3 10 | *.mode2v3 11 | !default.mode2v3 12 | *.perspectivev3 13 | !default.perspectivev3 14 | xcuserdata 15 | *.xccheckout 16 | profile 17 | *.moved-aside 18 | DerivedData 19 | *.hmap 20 | *.ipa 21 | 22 | # CocoaPods 23 | Pods 24 | -------------------------------------------------------------------------------- /ImageLogger.crash: -------------------------------------------------------------------------------- 1 | Process: ImageLogger [20784] 2 | Path: /Users/USER/Library/Developer/Xcode/DerivedData/ImageLogger-fgbjkehbhoveofadlukmxizjpkqh/Build/Products/Debug/ImageLogger.app/Contents/MacOS/ImageLogger 3 | Identifier: com.ddeville.ImageLogger 4 | Version: 1.0 (1) 5 | Code Type: X86-64 (Native) 6 | Parent Process: debugserver [20785] 7 | Responsible: Xcode [76371] 8 | User ID: 501 9 | 10 | Date/Time: 2014-03-27 11:43:42.034 +0000 11 | OS Version: Mac OS X 10.9.2 (13C64) 12 | Report Version: 11 13 | Anonymous UUID: 4C4C0AEE-1FCA-BF92-C928-AD4C8453A1BB 14 | 15 | Sleep/Wake UUID: A3172296-69C4-4EAE-8E7E-75762009876C 16 | 17 | Crashed Thread: 0 Dispatch queue: com.apple.main-thread 18 | 19 | Exception Type: EXC_CRASH (SIGABRT) 20 | Exception Codes: 0x0000000000000000, 0x0000000000000000 21 | 22 | External Modification Warnings: 23 | Debugger attached to process. 24 | 25 | Application Specific Information: 26 | *** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayI objectAtIndex:]: index 0 beyond bounds for empty array' 27 | terminating with uncaught exception of type NSException 28 | abort() called 29 | 30 | Application Specific Backtrace 1: 31 | 0 CoreFoundation 0x00007fff94f6c25c __exceptionPreprocess + 172 32 | 1 libobjc.A.dylib 0x00007fff91129e75 objc_exception_throw + 43 33 | 2 CoreFoundation 0x00007fff94e57fdf -[__NSArrayI objectAtIndex:] + 175 34 | 3 ImageLogger 0x0000000100001998 __47-[LLAppDelegate applicationDidFinishLaunching:]_block_invoke + 72 35 | 4 libdispatch.dylib 0x00007fff8b3d61d7 _dispatch_call_block_and_release + 12 36 | 5 libdispatch.dylib 0x00007fff8b3d32ad _dispatch_client_callout + 8 37 | 6 libdispatch.dylib 0x00007fff8b3db443 _dispatch_after_timer_callback + 77 38 | 7 libdispatch.dylib 0x00007fff8b3d32ad _dispatch_client_callout + 8 39 | 8 libdispatch.dylib 0x00007fff8b3d58a1 _dispatch_source_invoke + 413 40 | 9 libdispatch.dylib 0x00007fff8b3daeaa _dispatch_main_queue_callback_4CF + 244 41 | 10 CoreFoundation 0x00007fff94ed3679 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 9 42 | 11 CoreFoundation 0x00007fff94e8e954 __CFRunLoopRun + 1636 43 | 12 CoreFoundation 0x00007fff94e8e0b5 CFRunLoopRunSpecific + 309 44 | 13 HIToolbox 0x00007fff8bc77a0d RunCurrentEventLoopInMode + 226 45 | 14 HIToolbox 0x00007fff8bc777b7 ReceiveNextEventCommon + 479 46 | 15 HIToolbox 0x00007fff8bc775bc _BlockUntilNextEventMatchingListInModeWithFilter + 65 47 | 16 AppKit 0x00007fff91e0b3de _DPSNextEvent + 1434 48 | 17 AppKit 0x00007fff91e0aa2b -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 122 49 | 18 AppKit 0x00007fff91dfeb2c -[NSApplication run] + 553 50 | 19 AppKit 0x00007fff91de9913 NSApplicationMain + 940 51 | 20 ImageLogger 0x00000001000022c2 main + 34 52 | 21 libdyld.dylib 0x00007fff96a705fd start + 1 53 | 22 ??? 0x0000000000000003 0x0 + 3 54 | 55 | Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 56 | 0 libsystem_kernel.dylib 0x00007fff8bf2e866 __pthread_kill + 10 57 | 1 libsystem_pthread.dylib 0x00007fff8f00b35c pthread_kill + 92 58 | 2 libsystem_c.dylib 0x00007fff988d3b1a abort + 125 59 | 3 libc++abi.dylib 0x00007fff9612df31 abort_message + 257 60 | 4 libc++abi.dylib 0x00007fff96153952 default_terminate_handler() + 264 61 | 5 libobjc.A.dylib 0x00007fff9112a30d _objc_terminate() + 103 62 | 6 libc++abi.dylib 0x00007fff961511d1 std::__terminate(void (*)()) + 8 63 | 7 libc++abi.dylib 0x00007fff96151246 std::terminate() + 54 64 | 8 libobjc.A.dylib 0x00007fff9112a0b0 objc_terminate + 9 65 | 9 libdispatch.dylib 0x00007fff8b3d32c1 _dispatch_client_callout + 28 66 | 10 libdispatch.dylib 0x00007fff8b3db443 _dispatch_after_timer_callback + 77 67 | 11 libdispatch.dylib 0x00007fff8b3d32ad _dispatch_client_callout + 8 68 | 12 libdispatch.dylib 0x00007fff8b3d58a1 _dispatch_source_invoke + 413 69 | 13 libdispatch.dylib 0x00007fff8b3daeaa _dispatch_main_queue_callback_4CF + 244 70 | 14 com.apple.CoreFoundation 0x00007fff94ed3679 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 9 71 | 15 com.apple.CoreFoundation 0x00007fff94e8e954 __CFRunLoopRun + 1636 72 | 16 com.apple.CoreFoundation 0x00007fff94e8e0b5 CFRunLoopRunSpecific + 309 73 | 17 com.apple.HIToolbox 0x00007fff8bc77a0d RunCurrentEventLoopInMode + 226 74 | 18 com.apple.HIToolbox 0x00007fff8bc777b7 ReceiveNextEventCommon + 479 75 | 19 com.apple.HIToolbox 0x00007fff8bc775bc _BlockUntilNextEventMatchingListInModeWithFilter + 65 76 | 20 com.apple.AppKit 0x00007fff91e0b3de _DPSNextEvent + 1434 77 | 21 com.apple.AppKit 0x00007fff91e0aa2b -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 122 78 | 22 com.apple.AppKit 0x00007fff91dfeb2c -[NSApplication run] + 553 79 | 23 com.apple.AppKit 0x00007fff91de9913 NSApplicationMain + 940 80 | 24 com.ddeville.ImageLogger 0x00000001000022c2 main + 34 (main.m:13) 81 | 25 libdyld.dylib 0x00007fff96a705fd start + 1 82 | 83 | Thread 1: 84 | 0 libsystem_kernel.dylib 0x00007fff8bf2ee6a __workq_kernreturn + 10 85 | 1 libsystem_pthread.dylib 0x00007fff8f00bf08 _pthread_wqthread + 330 86 | 2 libsystem_pthread.dylib 0x00007fff8f00efb9 start_wqthread + 13 87 | 88 | Thread 2:: Dispatch queue: com.apple.libdispatch-manager 89 | 0 libsystem_kernel.dylib 0x00007fff8bf2f662 kevent64 + 10 90 | 1 libdispatch.dylib 0x00007fff8b3d543d _dispatch_mgr_invoke + 239 91 | 2 libdispatch.dylib 0x00007fff8b3d5152 _dispatch_mgr_thread + 52 92 | 93 | Thread 3: 94 | 0 libsystem_kernel.dylib 0x00007fff8bf2ee6a __workq_kernreturn + 10 95 | 1 libsystem_pthread.dylib 0x00007fff8f00bf08 _pthread_wqthread + 330 96 | 2 libsystem_pthread.dylib 0x00007fff8f00efb9 start_wqthread + 13 97 | 98 | Thread 4: 99 | 0 libsystem_kernel.dylib 0x00007fff8bf2ee6a __workq_kernreturn + 10 100 | 1 libsystem_pthread.dylib 0x00007fff8f00bf08 _pthread_wqthread + 330 101 | 2 libsystem_pthread.dylib 0x00007fff8f00efb9 start_wqthread + 13 102 | 103 | Thread 5: 104 | 0 libsystem_kernel.dylib 0x00007fff8bf2ee6a __workq_kernreturn + 10 105 | 1 libsystem_pthread.dylib 0x00007fff8f00bf08 _pthread_wqthread + 330 106 | 2 libsystem_pthread.dylib 0x00007fff8f00efb9 start_wqthread + 13 107 | 108 | Thread 6: 109 | 0 libsystem_kernel.dylib 0x00007fff8bf2aa1a mach_msg_trap + 10 110 | 1 libsystem_kernel.dylib 0x00007fff8bf29d18 mach_msg + 64 111 | 2 com.apple.CoreFoundation 0x00007fff94e8f155 __CFRunLoopServiceMachPort + 181 112 | 3 com.apple.CoreFoundation 0x00007fff94e8e779 __CFRunLoopRun + 1161 113 | 4 com.apple.CoreFoundation 0x00007fff94e8e0b5 CFRunLoopRunSpecific + 309 114 | 5 com.apple.AppKit 0x00007fff91fab16e _NSEventThread + 144 115 | 6 libsystem_pthread.dylib 0x00007fff8f00a899 _pthread_body + 138 116 | 7 libsystem_pthread.dylib 0x00007fff8f00a72a _pthread_start + 137 117 | 8 libsystem_pthread.dylib 0x00007fff8f00efc9 thread_start + 13 118 | 119 | Thread 0 crashed with X86 Thread State (64-bit): 120 | rax: 0x0000000000000000 rbx: 0x00007fff7ba64310 rcx: 0x00007fff5fbfd968 rdx: 0x0000000000000000 121 | rdi: 0x0000000000000303 rsi: 0x0000000000000006 rbp: 0x00007fff5fbfd990 rsp: 0x00007fff5fbfd968 122 | r8: 0x00007fff96154959 r9: 0x00007fff988fb8d0 r10: 0x0000000008000000 r11: 0x0000000000000206 123 | r12: 0x00007fff5fbfdaf0 r13: 0x00006080000e4780 r14: 0x0000000000000006 r15: 0x00007fff5fbfd9d0 124 | rip: 0x00007fff8bf2e866 rfl: 0x0000000000000206 cr2: 0x00007fff9613c71e 125 | 126 | Logical CPU: 0 127 | Error Code: 0x02000148 128 | Trap Number: 133 129 | 130 | 131 | Binary Images: 132 | 0x100000000 - 0x100002fff +com.ddeville.ImageLogger (1.0 - 1) <0105A665-7A6B-3DD8-AB98-0AA0E5B2DF9C> /Users/USER/Library/Developer/Xcode/DerivedData/ImageLogger-fgbjkehbhoveofadlukmxizjpkqh/Build/Products/Debug/ImageLogger.app/Contents/MacOS/ImageLogger 133 | 0x7fff5fc00000 - 0x7fff5fc33817 dyld (239.4) <2B17750C-ED1B-3060-B64E-21897D08B28B> /usr/lib/dyld 134 | 0x7fff8b3d2000 - 0x7fff8b3ecfff libdispatch.dylib (339.90.1) /usr/lib/system/libdispatch.dylib 135 | 0x7fff8b44a000 - 0x7fff8b49cfff libc++.1.dylib (120) <4F68DFC5-2077-39A8-A449-CAC5FDEE7BDE> /usr/lib/libc++.1.dylib 136 | 0x7fff8b626000 - 0x7fff8b64dff7 libsystem_network.dylib (241.3) <8B1E1F1D-A5CC-3BAE-8B1E-ABC84337A364> /usr/lib/system/libsystem_network.dylib 137 | 0x7fff8b64e000 - 0x7fff8b65bff0 libbz2.1.0.dylib (29) <0B98AC35-B138-349C-8063-2B987A75D24C> /usr/lib/libbz2.1.0.dylib 138 | 0x7fff8b6c9000 - 0x7fff8b749fff com.apple.CoreSymbolication (3.0 - 141) /System/Library/PrivateFrameworks/CoreSymbolication.framework/Versions/A/CoreSymbolication 139 | 0x7fff8b9ac000 - 0x7fff8b9c5ff7 com.apple.Ubiquity (1.3 - 289) /System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity 140 | 0x7fff8bb28000 - 0x7fff8bb28fff com.apple.Cocoa (6.8 - 20) /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa 141 | 0x7fff8bb66000 - 0x7fff8bb75ff8 com.apple.LangAnalysis (1.7.0 - 1.7.0) <8FE131B6-1180-3892-98F5-C9C9B79072D4> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis 142 | 0x7fff8bbf5000 - 0x7fff8bc10ff7 libPng.dylib (1042) <36FF1DDA-9804-33C5-802E-3FCA9879F0E6> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libPng.dylib 143 | 0x7fff8bc1a000 - 0x7fff8bc22fff libsystem_dnssd.dylib (522.90.2) /usr/lib/system/libsystem_dnssd.dylib 144 | 0x7fff8bc23000 - 0x7fff8bc48ff7 com.apple.ChunkingLibrary (2.0 - 155.1) /System/Library/PrivateFrameworks/ChunkingLibrary.framework/Versions/A/ChunkingLibrary 145 | 0x7fff8bc49000 - 0x7fff8bef3ff5 com.apple.HIToolbox (2.1 - 697.4) /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox 146 | 0x7fff8bf19000 - 0x7fff8bf35ff7 libsystem_kernel.dylib (2422.90.20) <20E00C54-9222-359F-BD98-CB79ABED769A> /usr/lib/system/libsystem_kernel.dylib 147 | 0x7fff8bf36000 - 0x7fff8bfbffff com.apple.ColorSync (4.9.0 - 4.9.0) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSync.framework/Versions/A/ColorSync 148 | 0x7fff8bfc0000 - 0x7fff8c8dfaf3 com.apple.CoreGraphics (1.600.0 - 599.20.11) <06212100-8069-31A1-9C44-F6C4B1695230> /System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics 149 | 0x7fff8c8e0000 - 0x7fff8c8e2ff3 libsystem_configuration.dylib (596.13) /usr/lib/system/libsystem_configuration.dylib 150 | 0x7fff8c8e3000 - 0x7fff8ca51ff7 libBLAS.dylib (1094.5) /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib 151 | 0x7fff8ca52000 - 0x7fff8cb40fff libJP2.dylib (1042) <01D988D4-E36F-3120-8BA4-EF6282ECB010> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJP2.dylib 152 | 0x7fff8cb41000 - 0x7fff8cb41fff com.apple.Accelerate (1.9 - Accelerate 1.9) <509BB27A-AE62-366D-86D8-0B06D217CF56> /System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate 153 | 0x7fff8cb42000 - 0x7fff8cb45fff com.apple.TCC (1.0 - 1) <32A075D9-47FD-3E71-95BC-BFB0D583F41C> /System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC 154 | 0x7fff8ce69000 - 0x7fff8cf4dfff com.apple.coreui (2.1 - 231) <432DB40C-6B7E-39C8-9FB5-B95917930056> /System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/CoreUI 155 | 0x7fff8d330000 - 0x7fff8d3fbfff libvDSP.dylib (423.32) <3BF732BE-DDE0-38EB-8C54-E4E3C64F77A7> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib 156 | 0x7fff8ddae000 - 0x7fff8de72ff7 com.apple.backup.framework (1.5.2 - 1.5.2) /System/Library/PrivateFrameworks/Backup.framework/Versions/A/Backup 157 | 0x7fff8de9e000 - 0x7fff8dea8ff7 com.apple.bsd.ServiceManagement (2.0 - 2.0) <2D27B498-BB9C-3D88-B05A-76908A8A26F3> /System/Library/Frameworks/ServiceManagement.framework/Versions/A/ServiceManagement 158 | 0x7fff8dfe3000 - 0x7fff8e2b7fc7 com.apple.vImage (7.0 - 7.0) /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage 159 | 0x7fff8e5cb000 - 0x7fff8e626ffb com.apple.AE (665.5 - 665.5) /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE 160 | 0x7fff8e64e000 - 0x7fff8e68cff7 libGLImage.dylib (9.6) /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLImage.dylib 161 | 0x7fff8e887000 - 0x7fff8e890ffb com.apple.CommonAuth (4.0 - 2.0) <70FDDA03-7B44-37EC-B78E-3EC3C8505C76> /System/Library/PrivateFrameworks/CommonAuth.framework/Versions/A/CommonAuth 162 | 0x7fff8e891000 - 0x7fff8e89dff7 com.apple.OpenDirectory (10.9 - 173.90.1) /System/Library/Frameworks/OpenDirectory.framework/Versions/A/OpenDirectory 163 | 0x7fff8e9d5000 - 0x7fff8e9dcfff com.apple.NetFS (6.0 - 4.0) <8E26C099-CE9D-3819-91A2-64EA929C6137> /System/Library/Frameworks/NetFS.framework/Versions/A/NetFS 164 | 0x7fff8eb6b000 - 0x7fff8ec2dff5 com.apple.CoreText (352.0 - 367.19) <24848DF1-67EC-3D41-9548-1F14C6DFBBF9> /System/Library/Frameworks/CoreText.framework/Versions/A/CoreText 165 | 0x7fff8ec2e000 - 0x7fff8ed15ff7 libxml2.2.dylib (26) /usr/lib/libxml2.2.dylib 166 | 0x7fff8ed16000 - 0x7fff8ed27ff7 libz.1.dylib (53) <42E0C8C6-CA38-3CA4-8619-D24ED5DD492E> /usr/lib/libz.1.dylib 167 | 0x7fff8ed33000 - 0x7fff8ed33ffd libOpenScriptingUtil.dylib (157) <19F0E769-0989-3062-9AFB-8976E90E9759> /usr/lib/libOpenScriptingUtil.dylib 168 | 0x7fff8ed36000 - 0x7fff8ed3ffff com.apple.speech.synthesis.framework (4.7.1 - 4.7.1) <383FB557-E88E-3239-82B8-15F9F885B702> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis 169 | 0x7fff8ed40000 - 0x7fff8edaaff7 com.apple.framework.IOKit (2.0.1 - 907.90.2) /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit 170 | 0x7fff8f009000 - 0x7fff8f010ff7 libsystem_pthread.dylib (53.1.4) /usr/lib/system/libsystem_pthread.dylib 171 | 0x7fff90439000 - 0x7fff90450ff7 com.apple.CFOpenDirectory (10.9 - 173.90.1) <38A25261-C622-3F11-BFD3-7AFFC44D57B8> /System/Library/Frameworks/OpenDirectory.framework/Versions/A/Frameworks/CFOpenDirectory.framework/Versions/A/CFOpenDirectory 172 | 0x7fff90504000 - 0x7fff90533fff com.apple.DebugSymbols (106 - 106) /System/Library/PrivateFrameworks/DebugSymbols.framework/Versions/A/DebugSymbols 173 | 0x7fff9053a000 - 0x7fff90588fff com.apple.opencl (2.3.59 - 2.3.59) <8C2ACCC6-B0BA-3FE7-98A1-5C67284DEA4E> /System/Library/Frameworks/OpenCL.framework/Versions/A/OpenCL 174 | 0x7fff90589000 - 0x7fff9058fff7 libsystem_platform.dylib (24.90.1) <3C3D3DA8-32B9-3243-98EC-D89B9A1670B3> /usr/lib/system/libsystem_platform.dylib 175 | 0x7fff90622000 - 0x7fff9065bff7 com.apple.QD (3.50 - 298) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD 176 | 0x7fff90666000 - 0x7fff90667fff libunc.dylib (28) <62682455-1862-36FE-8A04-7A6B91256438> /usr/lib/system/libunc.dylib 177 | 0x7fff90668000 - 0x7fff90757fff libFontParser.dylib (111.1) <835A8253-6AB9-3AAB-9CBF-171440DEC486> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontParser.dylib 178 | 0x7fff90a51000 - 0x7fff90a8cfff com.apple.bom (14.0 - 193.1) /System/Library/PrivateFrameworks/Bom.framework/Versions/A/Bom 179 | 0x7fff90d1f000 - 0x7fff90d2cfff com.apple.Sharing (132.2 - 132.2) /System/Library/PrivateFrameworks/Sharing.framework/Versions/A/Sharing 180 | 0x7fff90d2d000 - 0x7fff90d35ff3 libCGCMS.A.dylib (599.20.11) /System/Library/Frameworks/CoreGraphics.framework/Versions/A/Resources/libCGCMS.A.dylib 181 | 0x7fff90d3e000 - 0x7fff90d41ffa libCGXType.A.dylib (599.20.11) /System/Library/Frameworks/CoreGraphics.framework/Versions/A/Resources/libCGXType.A.dylib 182 | 0x7fff90d42000 - 0x7fff90edeff3 com.apple.QuartzCore (1.8 - 332.3) <80F1068F-4A34-34FB-9E05-A2DC0700D2F2> /System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore 183 | 0x7fff90f4f000 - 0x7fff90f59fff libcommonCrypto.dylib (60049) <8C4F0CA0-389C-3EDC-B155-E62DD2187E1D> /usr/lib/system/libcommonCrypto.dylib 184 | 0x7fff90f5a000 - 0x7fff90f9bfff com.apple.PerformanceAnalysis (1.47 - 47) <784ED7B8-FAE4-36CE-8C76-B7D300316C9F> /System/Library/PrivateFrameworks/PerformanceAnalysis.framework/Versions/A/PerformanceAnalysis 185 | 0x7fff9102f000 - 0x7fff9105eff5 com.apple.GSS (4.0 - 2.0) <62046C17-5D09-346C-B08E-A664DBC18411> /System/Library/Frameworks/GSS.framework/Versions/A/GSS 186 | 0x7fff910bf000 - 0x7fff910c1fff libRadiance.dylib (1042) /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libRadiance.dylib 187 | 0x7fff910c2000 - 0x7fff9111bfff libTIFF.dylib (1042) <51D02EEC-0D0C-34C1-91C8-D316473A3FEA> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib 188 | 0x7fff9111c000 - 0x7fff912c9f27 libobjc.A.dylib (551.1) /usr/lib/libobjc.A.dylib 189 | 0x7fff91374000 - 0x7fff917a7ffb com.apple.vision.FaceCore (3.0.0 - 3.0.0) /System/Library/PrivateFrameworks/FaceCore.framework/Versions/A/FaceCore 190 | 0x7fff917a8000 - 0x7fff917b3fff libGL.dylib (9.6) /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib 191 | 0x7fff917b4000 - 0x7fff91907ff7 com.apple.audio.toolbox.AudioToolbox (1.10 - 1.10) <3511ABFE-22E1-3B91-B86A-5E3A78CE33FD> /System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox 192 | 0x7fff9194e000 - 0x7fff9199bff2 com.apple.print.framework.PrintCore (9.0 - 428) <8D8253E3-302F-3DB2-9C5C-572CB974E8B3> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore 193 | 0x7fff9199c000 - 0x7fff919c0fff libxpc.dylib (300.90.2) /usr/lib/system/libxpc.dylib 194 | 0x7fff919f5000 - 0x7fff91a64ff1 com.apple.ApplicationServices.ATS (360 - 363.3) <546E89D9-2AE7-3111-B2B8-2366650D22F0> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS 195 | 0x7fff91be1000 - 0x7fff91be6fff com.apple.DiskArbitration (2.6 - 2.6) /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration 196 | 0x7fff91d50000 - 0x7fff91d97fff libFontRegistry.dylib (127) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontRegistry.dylib 197 | 0x7fff91de7000 - 0x7fff9295dfff com.apple.AppKit (6.9 - 1265.19) <12647F2F-3FE2-3D77-B3F0-33EFAFF2CEA7> /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit 198 | 0x7fff9295e000 - 0x7fff92a64ff7 com.apple.ImageIO.framework (3.3.0 - 1042) <6101F33E-CACC-3070-960A-9A2EA4BC5F44> /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO 199 | 0x7fff92ddd000 - 0x7fff92debfff com.apple.opengl (9.6.0 - 9.6.0) <709F4A02-73A0-303C-86B5-85C596C8B707> /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL 200 | 0x7fff92f2e000 - 0x7fff92f2efff com.apple.CoreServices (59 - 59) <7A697B5E-F179-30DF-93F2-8B503CEEEFD5> /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices 201 | 0x7fff92f61000 - 0x7fff93119ff3 libicucore.A.dylib (511.31) <167DDD0A-A935-31AF-B5B9-940268EC3A3C> /usr/lib/libicucore.A.dylib 202 | 0x7fff93234000 - 0x7fff932abfff com.apple.CoreServices.OSServices (600.4 - 600.4) <36B2B009-C35E-3F21-824E-E0D00E7808C7> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices 203 | 0x7fff932ac000 - 0x7fff932b7ff7 com.apple.NetAuth (5.0 - 5.0) /System/Library/PrivateFrameworks/NetAuth.framework/Versions/A/NetAuth 204 | 0x7fff93b14000 - 0x7fff93b67fff com.apple.ScalableUserInterface (1.0 - 1) /System/Library/Frameworks/QuartzCore.framework/Versions/A/Frameworks/ScalableUserInterface.framework/Versions/A/ScalableUserInterface 205 | 0x7fff93bf2000 - 0x7fff93bf3fff liblangid.dylib (117) <9546E641-F730-3AB0-B3CD-E0E2FDD173D9> /usr/lib/liblangid.dylib 206 | 0x7fff93bf4000 - 0x7fff93d24ff7 com.apple.desktopservices (1.8.2 - 1.8.2) <76D6ED93-9D5A-3941-8B88-A1773290AE74> /System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv 207 | 0x7fff93d25000 - 0x7fff93d26ff7 libsystem_sandbox.dylib (278.11) <5E5A6E09-33A9-391A-AB34-E57D93BB1551> /usr/lib/system/libsystem_sandbox.dylib 208 | 0x7fff93d31000 - 0x7fff93d60fd2 libsystem_m.dylib (3047.16) /usr/lib/system/libsystem_m.dylib 209 | 0x7fff94098000 - 0x7fff9409bffc com.apple.IOSurface (91 - 91) <07CA8A59-1E32-3FB6-B506-18DAF58A8CE0> /System/Library/Frameworks/IOSurface.framework/Versions/A/IOSurface 210 | 0x7fff9409c000 - 0x7fff940ccfff com.apple.IconServices (25 - 25.17) <4751127E-FBD5-3ED5-8510-08D4E4166EFE> /System/Library/PrivateFrameworks/IconServices.framework/Versions/A/IconServices 211 | 0x7fff940cd000 - 0x7fff940cdffd com.apple.audio.units.AudioUnit (1.10 - 1.10) <486A97CD-C1F7-324D-87BC-B07F7A415B68> /System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit 212 | 0x7fff9415a000 - 0x7fff94182ffb libRIP.A.dylib (599.20.11) /System/Library/Frameworks/CoreGraphics.framework/Versions/A/Resources/libRIP.A.dylib 213 | 0x7fff941a1000 - 0x7fff941aeff4 com.apple.Librarian (1.2 - 1) /System/Library/PrivateFrameworks/Librarian.framework/Versions/A/Librarian 214 | 0x7fff9421a000 - 0x7fff945fbffe libLAPACK.dylib (1094.5) <7E7A9B8D-1638-3914-BAE0-663B69865986> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib 215 | 0x7fff945fc000 - 0x7fff94654ff7 com.apple.Symbolication (1.4 - 129) <16D42516-7B5E-357C-898A-FAA9EE7642B3> /System/Library/PrivateFrameworks/Symbolication.framework/Versions/A/Symbolication 216 | 0x7fff94655000 - 0x7fff94697ff7 libauto.dylib (185.5) /usr/lib/libauto.dylib 217 | 0x7fff946a0000 - 0x7fff946bbff7 libsystem_malloc.dylib (23.10.1) /usr/lib/system/libsystem_malloc.dylib 218 | 0x7fff946bc000 - 0x7fff949a6fff com.apple.CoreServices.CarbonCore (1077.17 - 1077.17) <3A2E92FD-DEE2-3D45-9619-11500801A61C> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore 219 | 0x7fff949a7000 - 0x7fff949abff7 libsystem_stats.dylib (93.90.3) <1A55AF8A-B6C4-3163-B557-3AD25DA643A8> /usr/lib/system/libsystem_stats.dylib 220 | 0x7fff94e02000 - 0x7fff94e04fff libCVMSPluginSupport.dylib (9.6) /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCVMSPluginSupport.dylib 221 | 0x7fff94e05000 - 0x7fff94e1dff7 com.apple.GenerationalStorage (2.0 - 160.2) <79629AC7-896F-3302-8AC1-4939020F08C3> /System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage 222 | 0x7fff94e1e000 - 0x7fff95003fff com.apple.CoreFoundation (6.9 - 855.14) <617B8A7B-FAB2-3271-A09B-C542E351C532> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation 223 | 0x7fff95004000 - 0x7fff95077fff com.apple.securityfoundation (6.0 - 55122.1) <1939DE0B-BC38-3E50-8A8C-3471C8AC4CD6> /System/Library/Frameworks/SecurityFoundation.framework/Versions/A/SecurityFoundation 224 | 0x7fff95078000 - 0x7fff950e5fff com.apple.SearchKit (1.4.0 - 1.4.0) /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit 225 | 0x7fff950ed000 - 0x7fff95346ff9 com.apple.security (7.0 - 55471.14) <3F7100A0-FE46-333D-9A4B-396580F1B4FE> /System/Library/Frameworks/Security.framework/Versions/A/Security 226 | 0x7fff9534b000 - 0x7fff95356fff libkxld.dylib (2422.90.20) /usr/lib/system/libkxld.dylib 227 | 0x7fff958cf000 - 0x7fff958d0ff7 libsystem_blocks.dylib (63) /usr/lib/system/libsystem_blocks.dylib 228 | 0x7fff958d1000 - 0x7fff958d9ffc libGFXShared.dylib (9.6) /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGFXShared.dylib 229 | 0x7fff95d98000 - 0x7fff95d9bfff libCoreVMClient.dylib (58.1) /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreVMClient.dylib 230 | 0x7fff95d9c000 - 0x7fff95db8fff libresolv.9.dylib (54) <11C2C826-F1C6-39C6-B4E8-6E0C41D4FA95> /usr/lib/libresolv.9.dylib 231 | 0x7fff95db9000 - 0x7fff95dc3ff7 com.apple.CrashReporterSupport (10.9 - 538) /System/Library/PrivateFrameworks/CrashReporterSupport.framework/Versions/A/CrashReporterSupport 232 | 0x7fff95e14000 - 0x7fff95f05ff9 libiconv.2.dylib (41) /usr/lib/libiconv.2.dylib 233 | 0x7fff95f06000 - 0x7fff95f16fff libbsm.0.dylib (33) <2CAC00A2-1352-302A-88FA-C567D4D69179> /usr/lib/libbsm.0.dylib 234 | 0x7fff95f17000 - 0x7fff95f23ff3 com.apple.AppleFSCompression (56 - 1.0) <5652B0D0-EB08-381F-B23A-6DCF96991FB5> /System/Library/PrivateFrameworks/AppleFSCompression.framework/Versions/A/AppleFSCompression 235 | 0x7fff95f56000 - 0x7fff95f95fff libGLU.dylib (9.6) /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib 236 | 0x7fff96018000 - 0x7fff9603dff7 com.apple.CoreVideo (1.8 - 117.2) <4674339E-26D0-35FA-9958-422832B39B12> /System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo 237 | 0x7fff9603e000 - 0x7fff960a2fff com.apple.datadetectorscore (5.0 - 354.3) /System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore 238 | 0x7fff9612d000 - 0x7fff96156ff7 libc++abi.dylib (49.1) <21A807D3-6732-3455-B77F-743E9F916DF0> /usr/lib/libc++abi.dylib 239 | 0x7fff9639e000 - 0x7fff9642efff com.apple.Metadata (10.7.0 - 800.23) /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata 240 | 0x7fff9642f000 - 0x7fff96458fff com.apple.DictionaryServices (1.2 - 208) /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices 241 | 0x7fff96587000 - 0x7fff965bfff7 com.apple.RemoteViewServices (2.0 - 94) <3F34D630-3DDB-3411-BC28-A56A9B55EBDA> /System/Library/PrivateFrameworks/RemoteViewServices.framework/Versions/A/RemoteViewServices 242 | 0x7fff965c0000 - 0x7fff965d2ff7 com.apple.MultitouchSupport.framework (245.13 - 245.13) /System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/A/MultitouchSupport 243 | 0x7fff965f6000 - 0x7fff965ffff3 libsystem_notify.dylib (121) <52571EC3-6894-37E4-946E-064B021ED44E> /usr/lib/system/libsystem_notify.dylib 244 | 0x7fff96600000 - 0x7fff96604ff7 libheimdal-asn1.dylib (323.15) /usr/lib/libheimdal-asn1.dylib 245 | 0x7fff96605000 - 0x7fff96609ff7 libGIF.dylib (1042) /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libGIF.dylib 246 | 0x7fff9660a000 - 0x7fff9660afff com.apple.Accelerate.vecLib (3.9 - vecLib 3.9) /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/vecLib 247 | 0x7fff9660b000 - 0x7fff9665cff3 com.apple.audio.CoreAudio (4.2.0 - 4.2.0) /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio 248 | 0x7fff9668a000 - 0x7fff9668afff com.apple.ApplicationServices (48 - 48) <3E3F01A8-314D-378F-835E-9CC4F8820031> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices 249 | 0x7fff9668b000 - 0x7fff9668bff7 libkeymgr.dylib (28) <3AA8D85D-CF00-3BD3-A5A0-E28E1A32A6D8> /usr/lib/system/libkeymgr.dylib 250 | 0x7fff966cb000 - 0x7fff9683bff8 com.apple.CFNetwork (673.2.1 - 673.2.1) /System/Library/Frameworks/CFNetwork.framework/Versions/A/CFNetwork 251 | 0x7fff9683f000 - 0x7fff96846ff8 liblaunch.dylib (842.90.1) <38D1AB2C-A476-385F-8EA8-7AB604CA1F89> /usr/lib/system/liblaunch.dylib 252 | 0x7fff96847000 - 0x7fff96895fff libcorecrypto.dylib (161.1) /usr/lib/system/libcorecrypto.dylib 253 | 0x7fff96a6d000 - 0x7fff96a70ff7 libdyld.dylib (239.4) /usr/lib/system/libdyld.dylib 254 | 0x7fff96a71000 - 0x7fff96a99ffb libxslt.1.dylib (13) /usr/lib/libxslt.1.dylib 255 | 0x7fff96a9a000 - 0x7fff96a9cff7 libquarantine.dylib (71) <7A1A2BCB-C03D-3A25-BFA4-3E569B2D2C38> /usr/lib/system/libquarantine.dylib 256 | 0x7fff96a9d000 - 0x7fff96b66fff com.apple.LaunchServices (572.26 - 572.26) /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices 257 | 0x7fff96b67000 - 0x7fff96b8effb libsystem_info.dylib (449.1.3) <7D41A156-D285-3849-A2C3-C04ADE797D98> /usr/lib/system/libsystem_info.dylib 258 | 0x7fff96b8f000 - 0x7fff96dd7ff7 com.apple.CoreData (107 - 481.01) /System/Library/Frameworks/CoreData.framework/Versions/A/CoreData 259 | 0x7fff96ef9000 - 0x7fff96f06ff7 libxar.1.dylib (202) <5572AA71-E98D-3FE1-9402-BB4A84E0E71E> /usr/lib/libxar.1.dylib 260 | 0x7fff96fc1000 - 0x7fff97071ff7 libvMisc.dylib (423.32) <049C0735-1808-39B9-943F-76CB8021744F> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib 261 | 0x7fff97072000 - 0x7fff9715cfff libsqlite3.dylib (158) <00269BF9-43BE-39E0-9C85-24585B9923C8> /usr/lib/libsqlite3.dylib 262 | 0x7fff9715d000 - 0x7fff97162fff libmacho.dylib (845) <1D2910DF-C036-3A82-A3FD-44FF73B5FF9B> /usr/lib/system/libmacho.dylib 263 | 0x7fff9718e000 - 0x7fff9748cfff com.apple.Foundation (6.9 - 1056.13) <2EE9AB07-3EA0-37D3-B407-4A520F2CB497> /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation 264 | 0x7fff9748d000 - 0x7fff97495ff7 com.apple.speech.recognition.framework (4.2.4 - 4.2.4) <98BBB3E4-6239-3EF1-90B2-84EA0D3B8D61> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition 265 | 0x7fff97496000 - 0x7fff9749dfff libcompiler_rt.dylib (35) <4CD916B2-1B17-362A-B403-EF24A1DAC141> /usr/lib/system/libcompiler_rt.dylib 266 | 0x7fff9749e000 - 0x7fff974a3ff7 libunwind.dylib (35.3) <78DCC358-2FC1-302E-B395-0155B47CB547> /usr/lib/system/libunwind.dylib 267 | 0x7fff974e3000 - 0x7fff97548ff5 com.apple.Heimdal (4.0 - 2.0) <523EC6C4-BD9B-3840-9376-E617BA627F59> /System/Library/PrivateFrameworks/Heimdal.framework/Versions/A/Heimdal 268 | 0x7fff97549000 - 0x7fff975d5ff7 com.apple.ink.framework (10.9 - 207) <8A50B893-AD03-3826-8555-A54FEAF08F47> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink 269 | 0x7fff978f6000 - 0x7fff978f7ff7 libSystem.B.dylib (1197.1.1) /usr/lib/libSystem.B.dylib 270 | 0x7fff9798b000 - 0x7fff979d0ffe com.apple.HIServices (1.22 - 467.2) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices 271 | 0x7fff979d1000 - 0x7fff979e2ff7 libsystem_asl.dylib (217.1.4) <655FB343-52CF-3E2F-B14D-BEBF5AAEF94D> /usr/lib/system/libsystem_asl.dylib 272 | 0x7fff97a03000 - 0x7fff97a04fff com.apple.TrustEvaluationAgent (2.0 - 25) <334A82F4-4AE4-3719-A511-86D0B0723E2B> /System/Library/PrivateFrameworks/TrustEvaluationAgent.framework/Versions/A/TrustEvaluationAgent 273 | 0x7fff97e92000 - 0x7fff97e99ff3 libcopyfile.dylib (103) <5A881779-D0D6-3029-B371-E3021C2DDA5E> /usr/lib/system/libcopyfile.dylib 274 | 0x7fff97f33000 - 0x7fff97f4cff7 com.apple.Kerberos (3.0 - 1) /System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos 275 | 0x7fff97f4d000 - 0x7fff97f71ff7 libJPEG.dylib (1042) <33648F26-A1DA-3C30-B15B-E9FFD41DB25C> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib 276 | 0x7fff97f99000 - 0x7fff97f9dfff libpam.2.dylib (20) /usr/lib/libpam.2.dylib 277 | 0x7fff97f9e000 - 0x7fff97fb9ff7 libCRFSuite.dylib (34) /usr/lib/libCRFSuite.dylib 278 | 0x7fff97fba000 - 0x7fff97fbbffb libremovefile.dylib (33) <3543F917-928E-3DB2-A2F4-7AB73B4970EF> /usr/lib/system/libremovefile.dylib 279 | 0x7fff980df000 - 0x7fff98126ff7 libcups.2.dylib (372.2) <37802F24-BCC2-3721-8E12-82B29B61B2AA> /usr/lib/libcups.2.dylib 280 | 0x7fff98877000 - 0x7fff98900ff7 libsystem_c.dylib (997.90.3) <6FD3A400-4BB2-3B95-B90C-BE6E9D0D78FA> /usr/lib/system/libsystem_c.dylib 281 | 0x7fff98c92000 - 0x7fff98c96ff7 libcache.dylib (62) /usr/lib/system/libcache.dylib 282 | 0x7fff98c97000 - 0x7fff98cc3fff com.apple.CoreServicesInternal (184.9 - 184.9) <4DEA54F9-81D6-3EDB-AA3C-1F9C497B3379> /System/Library/PrivateFrameworks/CoreServicesInternal.framework/Versions/A/CoreServicesInternal 283 | 0x7fff98cc6000 - 0x7fff98f96ffc com.apple.CoreImage (9.2.7) /System/Library/Frameworks/QuartzCore.framework/Versions/A/Frameworks/CoreImage.framework/Versions/A/CoreImage 284 | 0x7fff9900f000 - 0x7fff99072ff7 com.apple.SystemConfiguration (1.13 - 1.13) <63B985ED-E7E4-3095-8D12-63C9F1DB0F3D> /System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration 285 | 0x7fff99077000 - 0x7fff99078ff7 libDiagnosticMessagesClient.dylib (100) <4CDB0F7B-C0AF-3424-BC39-495696F0DB1E> /usr/lib/libDiagnosticMessagesClient.dylib 286 | 287 | External Modification Summary: 288 | Calls made by other processes targeting this process: 289 | task_for_pid: 2 290 | thread_create: 0 291 | thread_set_state: 18 292 | Calls made by this process: 293 | task_for_pid: 0 294 | thread_create: 0 295 | thread_set_state: 0 296 | Calls made by all processes on this machine: 297 | task_for_pid: 179666 298 | thread_create: 2 299 | thread_set_state: 24130 300 | 301 | VM Region Summary: 302 | ReadOnly portion of Libraries: Total=152.8M resident=125.1M(82%) swapped_out_or_unallocated=27.7M(18%) 303 | Writable regions: Total=102.8M written=2108K(2%) resident=6836K(6%) swapped_out=11.9M(12%) unallocated=96.1M(94%) 304 | 305 | REGION TYPE VIRTUAL 306 | =========== ======= 307 | CG backing stores 1448K 308 | CG image 4K 309 | CG raster data 24K 310 | CG shared images 212K 311 | CoreServices 2048K 312 | Kernel Alloc Once 8K 313 | MALLOC 72.4M 314 | MALLOC (admin) 32K 315 | Memory Tag 242 12K 316 | Memory Tag 251 8K 317 | STACK GUARD 56.0M 318 | Stack 10.6M 319 | VM_ALLOCATE 16.3M 320 | __DATA 19.1M 321 | __IMAGE 528K 322 | __LINKEDIT 65.5M 323 | __TEXT 87.4M 324 | __UNICODE 544K 325 | mapped file 44.7M 326 | shared memory 4K 327 | =========== ======= 328 | TOTAL 376.7M 329 | 330 | -------------------------------------------------------------------------------- /ImageLogger.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 6D19D0CD18E85FF20094D1B0 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D19D0CC18E85FF20094D1B0 /* UIKit.framework */; }; 11 | 6D19D1A418E8C1C50094D1B0 /* LLImageLogger.m in Sources */ = {isa = PBXBuildFile; fileRef = 6D19D1A318E8C1C50094D1B0 /* LLImageLogger.m */; }; 12 | 6D19D1A518E8C1CA0094D1B0 /* LLImageLogger.m in Sources */ = {isa = PBXBuildFile; fileRef = 6D19D1A318E8C1C50094D1B0 /* LLImageLogger.m */; }; 13 | 6D53E3C418E4384C002B3680 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D53E3C318E4384C002B3680 /* Cocoa.framework */; }; 14 | 6D53E3CE18E4384C002B3680 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6D53E3CC18E4384C002B3680 /* InfoPlist.strings */; }; 15 | 6D53E3D018E4384C002B3680 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 6D53E3CF18E4384C002B3680 /* main.m */; }; 16 | 6D53E3D418E4384C002B3680 /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 6D53E3D218E4384C002B3680 /* Credits.rtf */; }; 17 | 6D53E3D718E4384C002B3680 /* LLAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 6D53E3D618E4384C002B3680 /* LLAppDelegate.m */; }; 18 | 6D53E3DA18E4384C002B3680 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 6D53E3D818E4384C002B3680 /* MainMenu.xib */; }; 19 | 6D53E3DC18E4384C002B3680 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 6D53E3DB18E4384C002B3680 /* Images.xcassets */; }; 20 | 6D53E40318E44281002B3680 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D53E40218E44281002B3680 /* Foundation.framework */; }; 21 | 6D53E40518E44281002B3680 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6D53E40418E44281002B3680 /* CoreGraphics.framework */; }; 22 | 6D53E40D18E44281002B3680 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6D53E40B18E44281002B3680 /* InfoPlist.strings */; }; 23 | 6D53E40F18E44281002B3680 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 6D53E40E18E44281002B3680 /* main.m */; }; 24 | 6D53E41318E44281002B3680 /* LLAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 6D53E41218E44281002B3680 /* LLAppDelegate.m */; }; 25 | 6D53E41518E44281002B3680 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 6D53E41418E44281002B3680 /* Images.xcassets */; }; 26 | /* End PBXBuildFile section */ 27 | 28 | /* Begin PBXFileReference section */ 29 | 6D19D0CC18E85FF20094D1B0 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; }; 30 | 6D19D1A218E8C1C50094D1B0 /* LLImageLogger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LLImageLogger.h; path = Shared/LLImageLogger.h; sourceTree = ""; }; 31 | 6D19D1A318E8C1C50094D1B0 /* LLImageLogger.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = LLImageLogger.m; path = Shared/LLImageLogger.m; sourceTree = ""; }; 32 | 6D53E3C018E4384C002B3680 /* ImageLogger.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ImageLogger.app; sourceTree = BUILT_PRODUCTS_DIR; }; 33 | 6D53E3C318E4384C002B3680 /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; 34 | 6D53E3C618E4384C002B3680 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; }; 35 | 6D53E3C718E4384C002B3680 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; }; 36 | 6D53E3C818E4384C002B3680 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 37 | 6D53E3CB18E4384C002B3680 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 38 | 6D53E3CD18E4384C002B3680 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; 39 | 6D53E3CF18E4384C002B3680 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 40 | 6D53E3D318E4384C002B3680 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = en; path = en.lproj/Credits.rtf; sourceTree = ""; }; 41 | 6D53E3D518E4384C002B3680 /* LLAppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LLAppDelegate.h; sourceTree = ""; }; 42 | 6D53E3D618E4384C002B3680 /* LLAppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = LLAppDelegate.m; sourceTree = ""; }; 43 | 6D53E3D918E4384C002B3680 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = ""; }; 44 | 6D53E3DB18E4384C002B3680 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; 45 | 6D53E40118E44281002B3680 /* ImageLoggerTouch.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ImageLoggerTouch.app; sourceTree = BUILT_PRODUCTS_DIR; }; 46 | 6D53E40218E44281002B3680 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 47 | 6D53E40418E44281002B3680 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; 48 | 6D53E40C18E44281002B3680 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; 49 | 6D53E40E18E44281002B3680 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 50 | 6D53E41118E44281002B3680 /* LLAppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LLAppDelegate.h; sourceTree = ""; }; 51 | 6D53E41218E44281002B3680 /* LLAppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = LLAppDelegate.m; sourceTree = ""; }; 52 | 6D53E41418E44281002B3680 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; 53 | 6D53E43118E44330002B3680 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 54 | /* End PBXFileReference section */ 55 | 56 | /* Begin PBXFrameworksBuildPhase section */ 57 | 6D53E3BD18E4384C002B3680 /* Frameworks */ = { 58 | isa = PBXFrameworksBuildPhase; 59 | buildActionMask = 2147483647; 60 | files = ( 61 | 6D53E3C418E4384C002B3680 /* Cocoa.framework in Frameworks */, 62 | ); 63 | runOnlyForDeploymentPostprocessing = 0; 64 | }; 65 | 6D53E3FE18E44281002B3680 /* Frameworks */ = { 66 | isa = PBXFrameworksBuildPhase; 67 | buildActionMask = 2147483647; 68 | files = ( 69 | 6D19D0CD18E85FF20094D1B0 /* UIKit.framework in Frameworks */, 70 | 6D53E40518E44281002B3680 /* CoreGraphics.framework in Frameworks */, 71 | 6D53E40318E44281002B3680 /* Foundation.framework in Frameworks */, 72 | ); 73 | runOnlyForDeploymentPostprocessing = 0; 74 | }; 75 | /* End PBXFrameworksBuildPhase section */ 76 | 77 | /* Begin PBXGroup section */ 78 | 6D53E3B718E4384C002B3680 = { 79 | isa = PBXGroup; 80 | children = ( 81 | 6D53E42E18E4428E002B3680 /* Shared */, 82 | 6D53E3C918E4384C002B3680 /* ImageLogger */, 83 | 6D53E40818E44281002B3680 /* ImageLogger Touch */, 84 | 6D53E3C218E4384C002B3680 /* Frameworks */, 85 | 6D53E3C118E4384C002B3680 /* Products */, 86 | ); 87 | sourceTree = ""; 88 | }; 89 | 6D53E3C118E4384C002B3680 /* Products */ = { 90 | isa = PBXGroup; 91 | children = ( 92 | 6D53E3C018E4384C002B3680 /* ImageLogger.app */, 93 | 6D53E40118E44281002B3680 /* ImageLoggerTouch.app */, 94 | ); 95 | name = Products; 96 | sourceTree = ""; 97 | }; 98 | 6D53E3C218E4384C002B3680 /* Frameworks */ = { 99 | isa = PBXGroup; 100 | children = ( 101 | 6D53E40218E44281002B3680 /* Foundation.framework */, 102 | 6D53E40418E44281002B3680 /* CoreGraphics.framework */, 103 | 6D19D0CC18E85FF20094D1B0 /* UIKit.framework */, 104 | 6D53E3C318E4384C002B3680 /* Cocoa.framework */, 105 | 6D53E3C518E4384C002B3680 /* Other Frameworks */, 106 | ); 107 | name = Frameworks; 108 | sourceTree = ""; 109 | }; 110 | 6D53E3C518E4384C002B3680 /* Other Frameworks */ = { 111 | isa = PBXGroup; 112 | children = ( 113 | 6D53E3C618E4384C002B3680 /* AppKit.framework */, 114 | 6D53E3C718E4384C002B3680 /* CoreData.framework */, 115 | 6D53E3C818E4384C002B3680 /* Foundation.framework */, 116 | ); 117 | name = "Other Frameworks"; 118 | sourceTree = ""; 119 | }; 120 | 6D53E3C918E4384C002B3680 /* ImageLogger */ = { 121 | isa = PBXGroup; 122 | children = ( 123 | 6D53E3D518E4384C002B3680 /* LLAppDelegate.h */, 124 | 6D53E3D618E4384C002B3680 /* LLAppDelegate.m */, 125 | 6D53E3D818E4384C002B3680 /* MainMenu.xib */, 126 | 6D53E3F718E43864002B3680 /* Other Sources */, 127 | 6D53E3CA18E4384C002B3680 /* Supporting Files */, 128 | 6D53E3DB18E4384C002B3680 /* Images.xcassets */, 129 | ); 130 | path = ImageLogger; 131 | sourceTree = ""; 132 | }; 133 | 6D53E3CA18E4384C002B3680 /* Supporting Files */ = { 134 | isa = PBXGroup; 135 | children = ( 136 | 6D53E3CB18E4384C002B3680 /* Info.plist */, 137 | 6D53E3CC18E4384C002B3680 /* InfoPlist.strings */, 138 | 6D53E3D218E4384C002B3680 /* Credits.rtf */, 139 | ); 140 | name = "Supporting Files"; 141 | sourceTree = ""; 142 | }; 143 | 6D53E3F718E43864002B3680 /* Other Sources */ = { 144 | isa = PBXGroup; 145 | children = ( 146 | 6D53E3CF18E4384C002B3680 /* main.m */, 147 | ); 148 | name = "Other Sources"; 149 | sourceTree = ""; 150 | }; 151 | 6D53E40818E44281002B3680 /* ImageLogger Touch */ = { 152 | isa = PBXGroup; 153 | children = ( 154 | 6D53E41118E44281002B3680 /* LLAppDelegate.h */, 155 | 6D53E41218E44281002B3680 /* LLAppDelegate.m */, 156 | 6D53E42F18E442B0002B3680 /* Other Sources */, 157 | 6D53E40918E44281002B3680 /* Supporting Files */, 158 | 6D53E41418E44281002B3680 /* Images.xcassets */, 159 | ); 160 | name = "ImageLogger Touch"; 161 | path = ImageLoggerTouch; 162 | sourceTree = ""; 163 | }; 164 | 6D53E40918E44281002B3680 /* Supporting Files */ = { 165 | isa = PBXGroup; 166 | children = ( 167 | 6D53E43118E44330002B3680 /* Info.plist */, 168 | 6D53E40B18E44281002B3680 /* InfoPlist.strings */, 169 | ); 170 | name = "Supporting Files"; 171 | sourceTree = ""; 172 | }; 173 | 6D53E42E18E4428E002B3680 /* Shared */ = { 174 | isa = PBXGroup; 175 | children = ( 176 | 6D19D1A218E8C1C50094D1B0 /* LLImageLogger.h */, 177 | 6D19D1A318E8C1C50094D1B0 /* LLImageLogger.m */, 178 | ); 179 | name = Shared; 180 | sourceTree = ""; 181 | }; 182 | 6D53E42F18E442B0002B3680 /* Other Sources */ = { 183 | isa = PBXGroup; 184 | children = ( 185 | 6D53E40E18E44281002B3680 /* main.m */, 186 | ); 187 | name = "Other Sources"; 188 | sourceTree = ""; 189 | }; 190 | /* End PBXGroup section */ 191 | 192 | /* Begin PBXNativeTarget section */ 193 | 6D53E3BF18E4384C002B3680 /* ImageLogger */ = { 194 | isa = PBXNativeTarget; 195 | buildConfigurationList = 6D53E3F118E4384C002B3680 /* Build configuration list for PBXNativeTarget "ImageLogger" */; 196 | buildPhases = ( 197 | 6D53E3BC18E4384C002B3680 /* Sources */, 198 | 6D53E3BD18E4384C002B3680 /* Frameworks */, 199 | 6D53E3BE18E4384C002B3680 /* Resources */, 200 | ); 201 | buildRules = ( 202 | ); 203 | dependencies = ( 204 | ); 205 | name = ImageLogger; 206 | productName = ImageLogger; 207 | productReference = 6D53E3C018E4384C002B3680 /* ImageLogger.app */; 208 | productType = "com.apple.product-type.application"; 209 | }; 210 | 6D53E40018E44281002B3680 /* ImageLoggerTouch */ = { 211 | isa = PBXNativeTarget; 212 | buildConfigurationList = 6D53E42818E44282002B3680 /* Build configuration list for PBXNativeTarget "ImageLoggerTouch" */; 213 | buildPhases = ( 214 | 6D53E3FD18E44281002B3680 /* Sources */, 215 | 6D53E3FE18E44281002B3680 /* Frameworks */, 216 | 6D53E3FF18E44281002B3680 /* Resources */, 217 | ); 218 | buildRules = ( 219 | ); 220 | dependencies = ( 221 | ); 222 | name = ImageLoggerTouch; 223 | productName = ImageLoggerTouch; 224 | productReference = 6D53E40118E44281002B3680 /* ImageLoggerTouch.app */; 225 | productType = "com.apple.product-type.application"; 226 | }; 227 | /* End PBXNativeTarget section */ 228 | 229 | /* Begin PBXProject section */ 230 | 6D53E3B818E4384C002B3680 /* Project object */ = { 231 | isa = PBXProject; 232 | attributes = { 233 | CLASSPREFIX = LL; 234 | LastUpgradeCheck = 0510; 235 | ORGANIZATIONNAME = "Damien DeVille"; 236 | }; 237 | buildConfigurationList = 6D53E3BB18E4384C002B3680 /* Build configuration list for PBXProject "ImageLogger" */; 238 | compatibilityVersion = "Xcode 3.2"; 239 | developmentRegion = English; 240 | hasScannedForEncodings = 0; 241 | knownRegions = ( 242 | en, 243 | Base, 244 | ); 245 | mainGroup = 6D53E3B718E4384C002B3680; 246 | productRefGroup = 6D53E3C118E4384C002B3680 /* Products */; 247 | projectDirPath = ""; 248 | projectRoot = ""; 249 | targets = ( 250 | 6D53E3BF18E4384C002B3680 /* ImageLogger */, 251 | 6D53E40018E44281002B3680 /* ImageLoggerTouch */, 252 | ); 253 | }; 254 | /* End PBXProject section */ 255 | 256 | /* Begin PBXResourcesBuildPhase section */ 257 | 6D53E3BE18E4384C002B3680 /* Resources */ = { 258 | isa = PBXResourcesBuildPhase; 259 | buildActionMask = 2147483647; 260 | files = ( 261 | 6D53E3CE18E4384C002B3680 /* InfoPlist.strings in Resources */, 262 | 6D53E3DC18E4384C002B3680 /* Images.xcassets in Resources */, 263 | 6D53E3D418E4384C002B3680 /* Credits.rtf in Resources */, 264 | 6D53E3DA18E4384C002B3680 /* MainMenu.xib in Resources */, 265 | ); 266 | runOnlyForDeploymentPostprocessing = 0; 267 | }; 268 | 6D53E3FF18E44281002B3680 /* Resources */ = { 269 | isa = PBXResourcesBuildPhase; 270 | buildActionMask = 2147483647; 271 | files = ( 272 | 6D53E40D18E44281002B3680 /* InfoPlist.strings in Resources */, 273 | 6D53E41518E44281002B3680 /* Images.xcassets in Resources */, 274 | ); 275 | runOnlyForDeploymentPostprocessing = 0; 276 | }; 277 | /* End PBXResourcesBuildPhase section */ 278 | 279 | /* Begin PBXSourcesBuildPhase section */ 280 | 6D53E3BC18E4384C002B3680 /* Sources */ = { 281 | isa = PBXSourcesBuildPhase; 282 | buildActionMask = 2147483647; 283 | files = ( 284 | 6D53E3D718E4384C002B3680 /* LLAppDelegate.m in Sources */, 285 | 6D19D1A418E8C1C50094D1B0 /* LLImageLogger.m in Sources */, 286 | 6D53E3D018E4384C002B3680 /* main.m in Sources */, 287 | ); 288 | runOnlyForDeploymentPostprocessing = 0; 289 | }; 290 | 6D53E3FD18E44281002B3680 /* Sources */ = { 291 | isa = PBXSourcesBuildPhase; 292 | buildActionMask = 2147483647; 293 | files = ( 294 | 6D53E41318E44281002B3680 /* LLAppDelegate.m in Sources */, 295 | 6D19D1A518E8C1CA0094D1B0 /* LLImageLogger.m in Sources */, 296 | 6D53E40F18E44281002B3680 /* main.m in Sources */, 297 | ); 298 | runOnlyForDeploymentPostprocessing = 0; 299 | }; 300 | /* End PBXSourcesBuildPhase section */ 301 | 302 | /* Begin PBXVariantGroup section */ 303 | 6D53E3CC18E4384C002B3680 /* InfoPlist.strings */ = { 304 | isa = PBXVariantGroup; 305 | children = ( 306 | 6D53E3CD18E4384C002B3680 /* en */, 307 | ); 308 | name = InfoPlist.strings; 309 | sourceTree = ""; 310 | }; 311 | 6D53E3D218E4384C002B3680 /* Credits.rtf */ = { 312 | isa = PBXVariantGroup; 313 | children = ( 314 | 6D53E3D318E4384C002B3680 /* en */, 315 | ); 316 | name = Credits.rtf; 317 | sourceTree = ""; 318 | }; 319 | 6D53E3D818E4384C002B3680 /* MainMenu.xib */ = { 320 | isa = PBXVariantGroup; 321 | children = ( 322 | 6D53E3D918E4384C002B3680 /* Base */, 323 | ); 324 | name = MainMenu.xib; 325 | sourceTree = ""; 326 | }; 327 | 6D53E40B18E44281002B3680 /* InfoPlist.strings */ = { 328 | isa = PBXVariantGroup; 329 | children = ( 330 | 6D53E40C18E44281002B3680 /* en */, 331 | ); 332 | name = InfoPlist.strings; 333 | sourceTree = ""; 334 | }; 335 | /* End PBXVariantGroup section */ 336 | 337 | /* Begin XCBuildConfiguration section */ 338 | 6D53E3EF18E4384C002B3680 /* Debug */ = { 339 | isa = XCBuildConfiguration; 340 | buildSettings = { 341 | ALWAYS_SEARCH_USER_PATHS = NO; 342 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 343 | CLANG_CXX_LIBRARY = "libc++"; 344 | CLANG_ENABLE_MODULES = YES; 345 | CLANG_ENABLE_OBJC_ARC = YES; 346 | CLANG_WARN_BOOL_CONVERSION = YES; 347 | CLANG_WARN_CONSTANT_CONVERSION = YES; 348 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 349 | CLANG_WARN_EMPTY_BODY = YES; 350 | CLANG_WARN_ENUM_CONVERSION = YES; 351 | CLANG_WARN_INT_CONVERSION = YES; 352 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 353 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 354 | COPY_PHASE_STRIP = NO; 355 | GCC_C_LANGUAGE_STANDARD = gnu99; 356 | GCC_DYNAMIC_NO_PIC = NO; 357 | GCC_ENABLE_OBJC_EXCEPTIONS = YES; 358 | GCC_OPTIMIZATION_LEVEL = 0; 359 | GCC_PREPROCESSOR_DEFINITIONS = ( 360 | "DEBUG=1", 361 | "$(inherited)", 362 | ); 363 | GCC_SYMBOLS_PRIVATE_EXTERN = NO; 364 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 365 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 366 | GCC_WARN_UNDECLARED_SELECTOR = YES; 367 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 368 | GCC_WARN_UNUSED_FUNCTION = YES; 369 | GCC_WARN_UNUSED_VARIABLE = YES; 370 | MACOSX_DEPLOYMENT_TARGET = 10.9; 371 | ONLY_ACTIVE_ARCH = YES; 372 | SDKROOT = macosx; 373 | WARNING_CFLAGS = "-Wall"; 374 | }; 375 | name = Debug; 376 | }; 377 | 6D53E3F018E4384C002B3680 /* Release */ = { 378 | isa = XCBuildConfiguration; 379 | buildSettings = { 380 | ALWAYS_SEARCH_USER_PATHS = NO; 381 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 382 | CLANG_CXX_LIBRARY = "libc++"; 383 | CLANG_ENABLE_MODULES = YES; 384 | CLANG_ENABLE_OBJC_ARC = YES; 385 | CLANG_WARN_BOOL_CONVERSION = YES; 386 | CLANG_WARN_CONSTANT_CONVERSION = YES; 387 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 388 | CLANG_WARN_EMPTY_BODY = YES; 389 | CLANG_WARN_ENUM_CONVERSION = YES; 390 | CLANG_WARN_INT_CONVERSION = YES; 391 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 392 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 393 | COPY_PHASE_STRIP = YES; 394 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 395 | ENABLE_NS_ASSERTIONS = NO; 396 | GCC_C_LANGUAGE_STANDARD = gnu99; 397 | GCC_ENABLE_OBJC_EXCEPTIONS = YES; 398 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 399 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 400 | GCC_WARN_UNDECLARED_SELECTOR = YES; 401 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 402 | GCC_WARN_UNUSED_FUNCTION = YES; 403 | GCC_WARN_UNUSED_VARIABLE = YES; 404 | MACOSX_DEPLOYMENT_TARGET = 10.9; 405 | SDKROOT = macosx; 406 | WARNING_CFLAGS = "-Wall"; 407 | }; 408 | name = Release; 409 | }; 410 | 6D53E3F218E4384C002B3680 /* Debug */ = { 411 | isa = XCBuildConfiguration; 412 | buildSettings = { 413 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 414 | COMBINE_HIDPI_IMAGES = YES; 415 | INFOPLIST_FILE = ImageLogger/Info.plist; 416 | PRODUCT_NAME = "$(TARGET_NAME)"; 417 | WRAPPER_EXTENSION = app; 418 | }; 419 | name = Debug; 420 | }; 421 | 6D53E3F318E4384C002B3680 /* Release */ = { 422 | isa = XCBuildConfiguration; 423 | buildSettings = { 424 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 425 | COMBINE_HIDPI_IMAGES = YES; 426 | INFOPLIST_FILE = ImageLogger/Info.plist; 427 | PRODUCT_NAME = "$(TARGET_NAME)"; 428 | WRAPPER_EXTENSION = app; 429 | }; 430 | name = Release; 431 | }; 432 | 6D53E42918E44282002B3680 /* Debug */ = { 433 | isa = XCBuildConfiguration; 434 | buildSettings = { 435 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 436 | ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; 437 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 438 | FRAMEWORK_SEARCH_PATHS = ( 439 | "$(inherited)", 440 | "$(DEVELOPER_FRAMEWORKS_DIR)", 441 | ); 442 | GCC_PREPROCESSOR_DEFINITIONS = ( 443 | "DEBUG=1", 444 | "$(inherited)", 445 | ); 446 | INFOPLIST_FILE = ImageLoggerTouch/Info.plist; 447 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 448 | PRODUCT_NAME = "$(TARGET_NAME)"; 449 | SDKROOT = iphoneos; 450 | WRAPPER_EXTENSION = app; 451 | }; 452 | name = Debug; 453 | }; 454 | 6D53E42A18E44282002B3680 /* Release */ = { 455 | isa = XCBuildConfiguration; 456 | buildSettings = { 457 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 458 | ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; 459 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 460 | FRAMEWORK_SEARCH_PATHS = ( 461 | "$(inherited)", 462 | "$(DEVELOPER_FRAMEWORKS_DIR)", 463 | ); 464 | INFOPLIST_FILE = ImageLoggerTouch/Info.plist; 465 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 466 | PRODUCT_NAME = "$(TARGET_NAME)"; 467 | SDKROOT = iphoneos; 468 | VALIDATE_PRODUCT = YES; 469 | WRAPPER_EXTENSION = app; 470 | }; 471 | name = Release; 472 | }; 473 | /* End XCBuildConfiguration section */ 474 | 475 | /* Begin XCConfigurationList section */ 476 | 6D53E3BB18E4384C002B3680 /* Build configuration list for PBXProject "ImageLogger" */ = { 477 | isa = XCConfigurationList; 478 | buildConfigurations = ( 479 | 6D53E3EF18E4384C002B3680 /* Debug */, 480 | 6D53E3F018E4384C002B3680 /* Release */, 481 | ); 482 | defaultConfigurationIsVisible = 0; 483 | defaultConfigurationName = Release; 484 | }; 485 | 6D53E3F118E4384C002B3680 /* Build configuration list for PBXNativeTarget "ImageLogger" */ = { 486 | isa = XCConfigurationList; 487 | buildConfigurations = ( 488 | 6D53E3F218E4384C002B3680 /* Debug */, 489 | 6D53E3F318E4384C002B3680 /* Release */, 490 | ); 491 | defaultConfigurationIsVisible = 0; 492 | defaultConfigurationName = Release; 493 | }; 494 | 6D53E42818E44282002B3680 /* Build configuration list for PBXNativeTarget "ImageLoggerTouch" */ = { 495 | isa = XCConfigurationList; 496 | buildConfigurations = ( 497 | 6D53E42918E44282002B3680 /* Debug */, 498 | 6D53E42A18E44282002B3680 /* Release */, 499 | ); 500 | defaultConfigurationIsVisible = 0; 501 | defaultConfigurationName = Release; 502 | }; 503 | /* End XCConfigurationList section */ 504 | }; 505 | rootObject = 6D53E3B818E4384C002B3680 /* Project object */; 506 | } 507 | -------------------------------------------------------------------------------- /ImageLogger.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ImageLogger.xcodeproj/xcshareddata/xcschemes/ImageLogger.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 33 | 39 | 40 | 41 | 43 | 49 | 50 | 51 | 52 | 53 | 59 | 60 | 61 | 62 | 71 | 72 | 78 | 79 | 80 | 81 | 82 | 83 | 89 | 90 | 96 | 97 | 98 | 99 | 101 | 102 | 105 | 106 | 107 | -------------------------------------------------------------------------------- /ImageLogger/Base.lproj/MainMenu.xib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 220 | 221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 243 | 244 | 245 | 246 | 247 | 248 | 249 | 250 | 251 | 252 | 253 | 254 | 255 | 256 | 257 | 258 | 259 | 260 | 261 | 262 | 263 | 264 | 265 | 266 | 267 | 268 | 269 | 270 | 271 | 272 | 273 | 274 | 275 | 276 | 277 | 278 | 279 | 280 | 281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 | 291 | 292 | 293 | 294 | 295 | 296 | 297 | 298 | 299 | 300 | 301 | 302 | 303 | 304 | 305 | 306 | 307 | 308 | 309 | 310 | 311 | 312 | 313 | 314 | 315 | 316 | 317 | 318 | 319 | 320 | 321 | 322 | 323 | 324 | 325 | 326 | 327 | 328 | 329 | 330 | 331 | 332 | 333 | 334 | 335 | 336 | 337 | 338 | 339 | 340 | 341 | 342 | 343 | 344 | 345 | 346 | 347 | 348 | 349 | 350 | 351 | 352 | 353 | 354 | 355 | 356 | 357 | 358 | 359 | 360 | 361 | 362 | 363 | 364 | 365 | 366 | 367 | 368 | 369 | 370 | 371 | 372 | 373 | 374 | 375 | 376 | 377 | 378 | 379 | 380 | 381 | 382 | 383 | 384 | 385 | 386 | 387 | 388 | 389 | 390 | 391 | 392 | 393 | 394 | 395 | 396 | 397 | 398 | 399 | 400 | 401 | 402 | 403 | 404 | 405 | 406 | 407 | 408 | 409 | 410 | 411 | 412 | 413 | 414 | 415 | 416 | 417 | 418 | 419 | 420 | 421 | 422 | 423 | 424 | 425 | 426 | 427 | 428 | 429 | 430 | 431 | 432 | 433 | 434 | 435 | 436 | 437 | 438 | 439 | 440 | 441 | 442 | 443 | 444 | 445 | 446 | 447 | 448 | 449 | 450 | 451 | 452 | 453 | 454 | 455 | 456 | 457 | 458 | 459 | 460 | 461 | 462 | 463 | 464 | 465 | 466 | 467 | 468 | 469 | 470 | 471 | 472 | 473 | 474 | 475 | 476 | 477 | 478 | 479 | 480 | 481 | 482 | 483 | 484 | 485 | 486 | 487 | 488 | 489 | 490 | 491 | 492 | 493 | 494 | 495 | 496 | 497 | 498 | 499 | 500 | 501 | 502 | 503 | 504 | 505 | 506 | 507 | 508 | 509 | 510 | 511 | 512 | 513 | 514 | 515 | 516 | 517 | 518 | 519 | 520 | 521 | 522 | 523 | 524 | 525 | 526 | 527 | 528 | 529 | 530 | 531 | 532 | 533 | 534 | 535 | 536 | 537 | 538 | Default 539 | 540 | 541 | 542 | 543 | 544 | 545 | Left to Right 546 | 547 | 548 | 549 | 550 | 551 | 552 | Right to Left 553 | 554 | 555 | 556 | 557 | 558 | 559 | 560 | 561 | 562 | 563 | Default 564 | 565 | 566 | 567 | 568 | 569 | 570 | Left to Right 571 | 572 | 573 | 574 | 575 | 576 | 577 | Right to Left 578 | 579 | 580 | 581 | 582 | 583 | 584 | 585 | 586 | 587 | 588 | 589 | 590 | 591 | 592 | 593 | 594 | 595 | 596 | 597 | 598 | 599 | 600 | 601 | 602 | 603 | 604 | 605 | 606 | 607 | 608 | 609 | 610 | 611 | 612 | 613 | 614 | 615 | 616 | 617 | 618 | 619 | 620 | 621 | 622 | 623 | 624 | 625 | 626 | 627 | 628 | 629 | 630 | 631 | 632 | 633 | 634 | 635 | 636 | 637 | 638 | 639 | 640 | 641 | 642 | 643 | 644 | 645 | 646 | 647 | 648 | 649 | 650 | 651 | 652 | 653 | 654 | 655 | 656 | 657 | 658 | 659 | 660 | 661 | 662 | 663 | 664 | 665 | 666 | 667 | 668 | 669 | 670 | 671 | 672 | 673 | 674 | 675 | 676 | 677 | 678 | 679 | 680 | 681 | -------------------------------------------------------------------------------- /ImageLogger/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "mac", 5 | "size" : "16x16", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "mac", 10 | "size" : "16x16", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "mac", 15 | "size" : "32x32", 16 | "scale" : "1x" 17 | }, 18 | { 19 | "idiom" : "mac", 20 | "size" : "32x32", 21 | "scale" : "2x" 22 | }, 23 | { 24 | "idiom" : "mac", 25 | "size" : "128x128", 26 | "scale" : "1x" 27 | }, 28 | { 29 | "idiom" : "mac", 30 | "size" : "128x128", 31 | "scale" : "2x" 32 | }, 33 | { 34 | "idiom" : "mac", 35 | "size" : "256x256", 36 | "scale" : "1x" 37 | }, 38 | { 39 | "idiom" : "mac", 40 | "size" : "256x256", 41 | "scale" : "2x" 42 | }, 43 | { 44 | "idiom" : "mac", 45 | "size" : "512x512", 46 | "scale" : "1x" 47 | }, 48 | { 49 | "idiom" : "mac", 50 | "size" : "512x512", 51 | "scale" : "2x" 52 | } 53 | ], 54 | "info" : { 55 | "version" : 1, 56 | "author" : "xcode" 57 | } 58 | } -------------------------------------------------------------------------------- /ImageLogger/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIconFile 10 | 11 | CFBundleIdentifier 12 | com.ddeville.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1 25 | LSMinimumSystemVersion 26 | ${MACOSX_DEPLOYMENT_TARGET} 27 | NSHumanReadableCopyright 28 | Copyright © 2014 Damien DeVille. All rights reserved. 29 | NSMainNibFile 30 | MainMenu 31 | NSPrincipalClass 32 | NSApplication 33 | 34 | 35 | -------------------------------------------------------------------------------- /ImageLogger/LLAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // LLAppDelegate.h 3 | // ImageLogger 4 | // 5 | // Created by Damien DeVille on 3/27/14. 6 | // Copyright (c) 2014 Damien DeVille. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface LLAppDelegate : NSObject 12 | 13 | @property (assign) IBOutlet NSWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ImageLogger/LLAppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // LLAppDelegate.m 3 | // ImageLogger 4 | // 5 | // Created by Damien DeVille on 3/27/14. 6 | // Copyright (c) 2014 Damien DeVille. All rights reserved. 7 | // 8 | 9 | #import "LLAppDelegate.h" 10 | 11 | @implementation LLAppDelegate 12 | 13 | - (void)applicationDidFinishLaunching:(NSNotification *)notification 14 | { 15 | // nop 16 | } 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /ImageLogger/en.lproj/Credits.rtf: -------------------------------------------------------------------------------- 1 | {\rtf0\ansi{\fonttbl\f0\fswiss Helvetica;} 2 | {\colortbl;\red255\green255\blue255;} 3 | \paperw9840\paperh8400 4 | \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\tx6160\tx6720\ql\qnatural 5 | 6 | \f0\b\fs24 \cf0 Engineering: 7 | \b0 \ 8 | Some people\ 9 | \ 10 | 11 | \b Human Interface Design: 12 | \b0 \ 13 | Some other people\ 14 | \ 15 | 16 | \b Testing: 17 | \b0 \ 18 | Hopefully not nobody\ 19 | \ 20 | 21 | \b Documentation: 22 | \b0 \ 23 | Whoever\ 24 | \ 25 | 26 | \b With special thanks to: 27 | \b0 \ 28 | Mom\ 29 | } 30 | -------------------------------------------------------------------------------- /ImageLogger/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ImageLogger/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // ImageLogger 4 | // 5 | // Created by Damien DeVille on 3/27/14. 6 | // Copyright (c) 2014 Damien DeVille. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, const char **argv) 12 | { 13 | return NSApplicationMain(argc, argv); 14 | } 15 | -------------------------------------------------------------------------------- /ImageLoggerTouch/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "40x40", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "60x60", 16 | "scale" : "2x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /ImageLoggerTouch/Images.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "portrait", 5 | "idiom" : "iphone", 6 | "extent" : "full-screen", 7 | "minimum-system-version" : "7.0", 8 | "scale" : "2x" 9 | }, 10 | { 11 | "orientation" : "portrait", 12 | "idiom" : "iphone", 13 | "subtype" : "retina4", 14 | "extent" : "full-screen", 15 | "minimum-system-version" : "7.0", 16 | "scale" : "2x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /ImageLoggerTouch/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | com.ddeville.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIRequiredDeviceCapabilities 28 | 29 | armv7 30 | 31 | UISupportedInterfaceOrientations 32 | 33 | UIInterfaceOrientationPortrait 34 | UIInterfaceOrientationLandscapeLeft 35 | UIInterfaceOrientationLandscapeRight 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /ImageLoggerTouch/LLAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // LLAppDelegate.h 3 | // ImageLoggerTouch 4 | // 5 | // Created by Damien DeVille on 3/27/14. 6 | // Copyright (c) 2014 Damien DeVille. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface LLAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /ImageLoggerTouch/LLAppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // LLAppDelegate.m 3 | // ImageLoggerTouch 4 | // 5 | // Created by Damien DeVille on 3/27/14. 6 | // Copyright (c) 2014 Damien DeVille. All rights reserved. 7 | // 8 | 9 | #import "LLAppDelegate.h" 10 | 11 | @implementation LLAppDelegate 12 | 13 | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 14 | { 15 | UIWindow *window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 16 | [window setBackgroundColor:[UIColor whiteColor]]; 17 | [self setWindow:window]; 18 | 19 | UIViewController *viewController = [[UIViewController alloc] init]; 20 | [window setRootViewController:viewController]; 21 | 22 | [window makeKeyAndVisible]; 23 | 24 | return YES; 25 | } 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /ImageLoggerTouch/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /ImageLoggerTouch/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // ImageLoggerTouch 4 | // 5 | // Created by Damien DeVille on 3/27/14. 6 | // Copyright (c) 2014 Damien DeVille. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, char **argv) 12 | { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, @"LLAppDelegate"); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | Image Logger 2 | 3 | -------------------------------------------------------------------------------- /Shared/LLImageLogger.h: -------------------------------------------------------------------------------- 1 | // 2 | // LLImageLogger.h 3 | // ImageLogger 4 | // 5 | // Created by Damien DeVille on 3/27/14. 6 | // Copyright (c) 2014 Damien DeVille. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface LLImageLogger : NSObject 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Shared/LLImageLogger.m: -------------------------------------------------------------------------------- 1 | // 2 | // LLImageLogger.m 3 | // ImageLogger 4 | // 5 | // Created by Damien DeVille on 3/27/14. 6 | // Copyright (c) 2014 Damien DeVille. All rights reserved. 7 | // 8 | 9 | #import "LLImageLogger.h" 10 | 11 | #import 12 | #import 13 | #import 14 | 15 | @implementation LLImageLogger 16 | 17 | + (void)load 18 | { 19 | _dyld_register_func_for_add_image(&image_added); 20 | _dyld_register_func_for_remove_image(&image_removed); 21 | } 22 | 23 | #pragma mark - Callbacks 24 | 25 | static void image_added(const struct mach_header *mh, intptr_t slide) 26 | { 27 | _print_image(mh, true); 28 | } 29 | 30 | static void image_removed(const struct mach_header *mh, intptr_t slide) 31 | { 32 | _print_image(mh, false); 33 | } 34 | 35 | #pragma mark - Logger 36 | 37 | static void _print_image(const struct mach_header *mh, bool added) 38 | { 39 | Dl_info image_info; 40 | int result = dladdr(mh, &image_info); 41 | 42 | if (result == 0) { 43 | printf("Could not print info for mach_header: %p\n\n", mh); 44 | return; 45 | } 46 | 47 | const char *image_name = image_info.dli_fname; 48 | 49 | const intptr_t image_base_address = (intptr_t)image_info.dli_fbase; 50 | const uint64_t image_text_size = _image_text_segment_size(mh); 51 | 52 | char image_uuid[37]; 53 | const uuid_t *image_uuid_bytes = _image_retrieve_uuid(mh); 54 | uuid_unparse(*image_uuid_bytes, image_uuid); 55 | 56 | const char *log = added ? "Added" : "Removed"; 57 | printf("%s: 0x%02lx (0x%02llx) %s <%s>\n\n", log, image_base_address, image_text_size, image_name, image_uuid); 58 | } 59 | 60 | #pragma mark - Private 61 | 62 | static uint32_t _image_header_size(const struct mach_header *mh) 63 | { 64 | bool is_header_64_bit = (mh->magic == MH_MAGIC_64 || mh->magic == MH_CIGAM_64); 65 | return (is_header_64_bit ? sizeof(struct mach_header_64) : sizeof(struct mach_header)); 66 | } 67 | 68 | static void _image_visit_load_commands(const struct mach_header *mh, void (^visitor)(struct load_command *lc, bool *stop)) 69 | { 70 | assert(visitor != NULL); 71 | 72 | uintptr_t lc_cursor = (uintptr_t)mh + _image_header_size(mh); 73 | 74 | for (uint32_t idx = 0; idx < mh->ncmds; idx++) { 75 | struct load_command *lc = (struct load_command *)lc_cursor; 76 | 77 | bool stop = false; 78 | visitor(lc, &stop); 79 | 80 | if (stop) { 81 | return; 82 | } 83 | 84 | lc_cursor += lc->cmdsize; 85 | } 86 | } 87 | 88 | static uint64_t _image_text_segment_size(const struct mach_header *mh) 89 | { 90 | static const char *text_segment_name = "__TEXT"; 91 | 92 | __block uint64_t text_size = 0; 93 | 94 | _image_visit_load_commands(mh, ^ (struct load_command *lc, bool *stop) { 95 | if (lc->cmdsize == 0) { 96 | return; 97 | } 98 | if (lc->cmd == LC_SEGMENT) { 99 | struct segment_command *seg_cmd = (struct segment_command *)lc; 100 | if (strcmp(seg_cmd->segname, text_segment_name) == 0) { 101 | text_size = seg_cmd->vmsize; 102 | *stop = true; 103 | return; 104 | } 105 | } 106 | if (lc->cmd == LC_SEGMENT_64) { 107 | struct segment_command_64 *seg_cmd = (struct segment_command_64 *)lc; 108 | if (strcmp(seg_cmd->segname, text_segment_name) == 0) { 109 | text_size = seg_cmd->vmsize; 110 | *stop = true; 111 | return; 112 | } 113 | } 114 | }); 115 | 116 | return text_size; 117 | } 118 | 119 | static const uuid_t *_image_retrieve_uuid(const struct mach_header *mh) 120 | { 121 | __block const struct uuid_command *uuid_cmd = NULL; 122 | 123 | _image_visit_load_commands(mh, ^ (struct load_command *lc, bool *stop) { 124 | if (lc->cmdsize == 0) { 125 | return; 126 | } 127 | if (lc->cmd == LC_UUID) { 128 | uuid_cmd = (const struct uuid_command *)lc; 129 | *stop = true; 130 | } 131 | }); 132 | 133 | if (uuid_cmd == NULL) { 134 | return NULL; 135 | } 136 | 137 | return &uuid_cmd->uuid; 138 | } 139 | 140 | @end 141 | --------------------------------------------------------------------------------