Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse code

Handle photo library also in simulator and fixed a potential crash in…

… exif library while in release mode. Credit to Michael Krause for the patch.
  • Loading branch information...
commit 9a39967207dcf540c82e8ee40df874380932afde 1 parent ce9a9d2
Nicolas Seriot authored
4 Classes/EXFMetaData.m
@@ -1264,7 +1264,9 @@ -(void) parseExif: (CFDataRef*) exifData
1264 1264
1265 1265 // get the endian of the bytes
1266 1266 UInt8 order[2];
1267   - CFDataGetBytes(*exifData, CFRangeMake(6,8), order);
  1267 + //CFDataGetBytes(*exifData, CFRangeMake(6,8), order);
  1268 + CFDataGetBytes(*exifData, CFRangeMake(6,2), order);
  1269 +
1268 1270
1269 1271 if (M_ORDER == order[0] && M_ORDER == order[1]){
1270 1272 self.bigEndianOrder =YES;
12 Classes/SPSourcePhotosTVC.m
@@ -29,10 +29,16 @@ - (void)mapButtonClicked:(id)sender {
29 29 - (NSArray *)jpgPaths {
30 30 NSMutableArray *a = [NSMutableArray array];
31 31
32   - NSString *path = @"/var/mobile/Media/DCIM";
  32 +// NSString *path = @"/var/mobile/Media/DCIM";
  33 + NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
  34 + NSString *documentsDirectory = [paths count] ? [paths objectAtIndex:0] : nil;
  35 + NSString *path = [documentsDirectory stringByAppendingPathComponent:@"../../../Media/DCIM"];
  36 + path = [path stringByStandardizingPath];
  37 +
33 38 NSDirectoryEnumerator *dirEnumerator = [[NSFileManager defaultManager] enumeratorAtPath:path];
34   -
  39 +
35 40 BOOL isDir;
  41 +
36 42 BOOL exists;
37 43 NSString *filePath = nil;
38 44
@@ -58,7 +64,7 @@ - (void)loadData {
58 64 self.annotations = [NSMutableArray array];
59 65
60 66
61   - NSEnumerator *e = [[[self jpgPaths] reverseObjectEnumerator] init];
  67 + NSEnumerator *e = [[self jpgPaths] reverseObjectEnumerator];
62 68 NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
63 69
64 70 NSString *s = nil;
564 SpyPhone.xcodeproj/nst.pbxuser
@@ -267,9 +267,9 @@
267 267 };
268 268 0328F80E10B0A8B70074A5A1 /* SPSourcePhotosTVC.m */ = {
269 269 uiCtxt = {
270   - sepNavIntBoundsRect = "{{0, 0}, {1391, 1703}}";
271   - sepNavSelRange = "{1807, 0}";
272   - sepNavVisRange = "{1510, 676}";
  270 + sepNavIntBoundsRect = "{{0, 0}, {1391, 1820}}";
  271 + sepNavSelRange = "{730, 0}";
  272 + sepNavVisRange = "{447, 708}";
273 273 };
274 274 };
275 275 0328F8BE10B0B1AE0074A5A1 /* SPWebViewVC.h */ = {
@@ -372,9 +372,9 @@
372 372 };
373 373 032A7B9B10B829DB00E7FB65 /* EXFJpeg.m */ = {
374 374 uiCtxt = {
375   - sepNavIntBoundsRect = "{{0, 0}, {1078, 7202}}";
376   - sepNavSelRange = "{14938, 0}";
377   - sepNavVisRange = "{0, 1208}";
  375 + sepNavIntBoundsRect = "{{0, 0}, {1078, 6890}}";
  376 + sepNavSelRange = "{6632, 5}";
  377 + sepNavVisRange = "{5973, 907}";
378 378 };
379 379 };
380 380 032A7B9C10B829DB00E7FB65 /* EXFMutableMetaData.h */ = {
@@ -386,16 +386,16 @@
386 386 };
387 387 032A7B9D10B829DB00E7FB65 /* EXFMetaData.h */ = {
388 388 uiCtxt = {
389   - sepNavIntBoundsRect = "{{0, 0}, {1078, 1703}}";
  389 + sepNavIntBoundsRect = "{{0, 0}, {1078, 1625}}";
390 390 sepNavSelRange = "{816, 0}";
391   - sepNavVisRange = "{634, 866}";
  391 + sepNavVisRange = "{475, 1464}";
392 392 };
393 393 };
394 394 032A7B9E10B829DB00E7FB65 /* EXFMetaData.m */ = {
395 395 uiCtxt = {
396   - sepNavIntBoundsRect = "{{0, 0}, {1078, 22620}}";
397   - sepNavSelRange = "{56412, 0}";
398   - sepNavVisRange = "{44077, 1177}";
  396 + sepNavIntBoundsRect = "{{0, 0}, {1078, 22971}}";
  397 + sepNavSelRange = "{43328, 0}";
  398 + sepNavVisRange = "{42615, 1382}";
399 399 };
400 400 };
401 401 032A7B9F10B829DB00E7FB65 /* EXFTagDefinitionHolder.h */ = {
@@ -538,6 +538,452 @@
538 538 isa = PBXBookmark;
539 539 fRef = 032A80F110B8816300E7FB65 /* white_hat.png */;
540 540 };
  541 + 03B265AC10D3DE2B00132B6C /* PBXTextBookmark */ = {
  542 + isa = PBXTextBookmark;
  543 + fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
  544 + name = "main.m: 5";
  545 + rLen = 0;
  546 + rLoc = 68;
  547 + rType = 0;
  548 + vrLen = 390;
  549 + vrLoc = 0;
  550 + };
  551 + 03B265AF10D5113B00132B6C /* PBXTextBookmark */ = {
  552 + isa = PBXTextBookmark;
  553 + fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
  554 + name = "main.m: 19";
  555 + rLen = 0;
  556 + rLoc = 390;
  557 + rType = 0;
  558 + vrLen = 390;
  559 + vrLoc = 0;
  560 + };
  561 + 03B265B710D6E15800132B6C /* PBXTextBookmark */ = {
  562 + isa = PBXTextBookmark;
  563 + fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
  564 + name = "main.m: 19";
  565 + rLen = 0;
  566 + rLoc = 390;
  567 + rType = 0;
  568 + vrLen = 390;
  569 + vrLoc = 0;
  570 + };
  571 + 03B265BB10D706F300132B6C /* PBXTextBookmark */ = {
  572 + isa = PBXTextBookmark;
  573 + fRef = 03B265BC10D706F300132B6C /* stdio.h */;
  574 + name = "stdio.h: 277";
  575 + rLen = 72;
  576 + rLoc = 10236;
  577 + rType = 0;
  578 + vrLen = 2110;
  579 + vrLoc = 9406;
  580 + };
  581 + 03B265BC10D706F300132B6C /* stdio.h */ = {
  582 + isa = PBXFileReference;
  583 + name = stdio.h;
  584 + path = /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.2.sdk/usr/include/stdio.h;
  585 + sourceTree = "<absolute>";
  586 + };
  587 + 03B265BD10D706F300132B6C /* PBXTextBookmark */ = {
  588 + isa = PBXTextBookmark;
  589 + fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
  590 + name = "main.m: 19";
  591 + rLen = 6;
  592 + rLoc = 391;
  593 + rType = 0;
  594 + vrLen = 396;
  595 + vrLoc = 0;
  596 + };
  597 + 03B265BE10D706F300132B6C /* PBXTextBookmark */ = {
  598 + isa = PBXTextBookmark;
  599 + fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
  600 + name = "main.m: 19";
  601 + rLen = 0;
  602 + rLoc = 390;
  603 + rType = 0;
  604 + vrLen = 390;
  605 + vrLoc = 0;
  606 + };
  607 + 03B265C110D70C6200132B6C /* PBXTextBookmark */ = {
  608 + isa = PBXTextBookmark;
  609 + fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
  610 + name = "main.m: 19";
  611 + rLen = 0;
  612 + rLoc = 390;
  613 + rType = 0;
  614 + vrLen = 390;
  615 + vrLoc = 0;
  616 + };
  617 + 03B265C210D70C6300132B6C /* PBXTextBookmark */ = {
  618 + isa = PBXTextBookmark;
  619 + fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
  620 + name = "main.m: 19";
  621 + rLen = 0;
  622 + rLoc = 390;
  623 + rType = 0;
  624 + vrLen = 390;
  625 + vrLoc = 0;
  626 + };
  627 + 03B265C310D70C7A00132B6C /* PBXTextBookmark */ = {
  628 + isa = PBXTextBookmark;
  629 + fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
  630 + name = "main.m: 19";
  631 + rLen = 0;
  632 + rLoc = 390;
  633 + rType = 0;
  634 + vrLen = 390;
  635 + vrLoc = 0;
  636 + };
  637 + 03B265C410D70C7C00132B6C /* PBXTextBookmark */ = {
  638 + isa = PBXTextBookmark;
  639 + fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
  640 + name = "main.m: 19";
  641 + rLen = 0;
  642 + rLoc = 390;
  643 + rType = 0;
  644 + vrLen = 390;
  645 + vrLoc = 0;
  646 + };
  647 + 03B265CA10D70CB200132B6C /* PBXTextBookmark */ = {
  648 + isa = PBXTextBookmark;
  649 + fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
  650 + name = "main.m: 19";
  651 + rLen = 0;
  652 + rLoc = 390;
  653 + rType = 0;
  654 + vrLen = 390;
  655 + vrLoc = 0;
  656 + };
  657 + 03B265CB10D70CB300132B6C /* PBXTextBookmark */ = {
  658 + isa = PBXTextBookmark;
  659 + fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
  660 + name = "main.m: 19";
  661 + rLen = 0;
  662 + rLoc = 390;
  663 + rType = 0;
  664 + vrLen = 390;
  665 + vrLoc = 0;
  666 + };
  667 + 03B265CE10D70D0800132B6C /* PBXTextBookmark */ = {
  668 + isa = PBXTextBookmark;
  669 + fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
  670 + name = "main.m: 19";
  671 + rLen = 0;
  672 + rLoc = 390;
  673 + rType = 0;
  674 + vrLen = 390;
  675 + vrLoc = 0;
  676 + };
  677 + 03B265CF10D70D0900132B6C /* PBXTextBookmark */ = {
  678 + isa = PBXTextBookmark;
  679 + fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
  680 + name = "main.m: 19";
  681 + rLen = 0;
  682 + rLoc = 390;
  683 + rType = 0;
  684 + vrLen = 390;
  685 + vrLoc = 0;
  686 + };
  687 + 03B265D010D70D2900132B6C /* PBXTextBookmark */ = {
  688 + isa = PBXTextBookmark;
  689 + fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
  690 + name = "main.m: 19";
  691 + rLen = 0;
  692 + rLoc = 390;
  693 + rType = 0;
  694 + vrLen = 390;
  695 + vrLoc = 0;
  696 + };
  697 + 03B265D110D70D3900132B6C /* PBXTextBookmark */ = {
  698 + isa = PBXTextBookmark;
  699 + fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
  700 + name = "main.m: 19";
  701 + rLen = 0;
  702 + rLoc = 390;
  703 + rType = 0;
  704 + vrLen = 390;
  705 + vrLoc = 0;
  706 + };
  707 + 03B265D210D70DAE00132B6C /* PBXTextBookmark */ = {
  708 + isa = PBXTextBookmark;
  709 + fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
  710 + name = "main.m: 19";
  711 + rLen = 0;
  712 + rLoc = 390;
  713 + rType = 0;
  714 + vrLen = 390;
  715 + vrLoc = 0;
  716 + };
  717 + 03B265D310D70DAE00132B6C /* PBXTextBookmark */ = {
  718 + isa = PBXTextBookmark;
  719 + fRef = 032A7B9D10B829DB00E7FB65 /* EXFMetaData.h */;
  720 + name = "EXFMetaData.h: 33";
  721 + rLen = 0;
  722 + rLoc = 816;
  723 + rType = 0;
  724 + vrLen = 1464;
  725 + vrLoc = 475;
  726 + };
  727 + 03B265D410D70DAE00132B6C /* PBXTextBookmark */ = {
  728 + isa = PBXTextBookmark;
  729 + fRef = 032A7B9E10B829DB00E7FB65 /* EXFMetaData.m */;
  730 + name = "EXFMetaData.m: 1574";
  731 + rLen = 0;
  732 + rLoc = 56469;
  733 + rType = 0;
  734 + vrLen = 1489;
  735 + vrLoc = 43999;
  736 + };
  737 + 03B265D510D70DAE00132B6C /* PBXTextBookmark */ = {
  738 + isa = PBXTextBookmark;
  739 + fRef = 032A7B9B10B829DB00E7FB65 /* EXFJpeg.m */;
  740 + name = "EXFJpeg.m: 294";
  741 + rLen = 5;
  742 + rLoc = 6632;
  743 + rType = 0;
  744 + vrLen = 907;
  745 + vrLoc = 5973;
  746 + };
  747 + 03B265D610D70DAE00132B6C /* PBXTextBookmark */ = {
  748 + isa = PBXTextBookmark;
  749 + fRef = 0328F80E10B0A8B70074A5A1 /* SPSourcePhotosTVC.m */;
  750 + name = "SPSourcePhotosTVC.m: 66";
  751 + rLen = 0;
  752 + rLoc = 2117;
  753 + rType = 0;
  754 + vrLen = 1676;
  755 + vrLoc = 1242;
  756 + };
  757 + 03B265D710D70DAE00132B6C /* PBXTextBookmark */ = {
  758 + isa = PBXTextBookmark;
  759 + fRef = 0328F80E10B0A8B70074A5A1 /* SPSourcePhotosTVC.m */;
  760 + name = "SPSourcePhotosTVC.m: 66";
  761 + rLen = 0;
  762 + rLoc = 2117;
  763 + rType = 0;
  764 + vrLen = 1676;
  765 + vrLoc = 1242;
  766 + };
  767 + 03B265D810D70DBC00132B6C /* PBXTextBookmark */ = {
  768 + isa = PBXTextBookmark;
  769 + fRef = 0328F80E10B0A8B70074A5A1 /* SPSourcePhotosTVC.m */;
  770 + name = "SPSourcePhotosTVC.m: 61";
  771 + rLen = 0;
  772 + rLoc = 1987;
  773 + rType = 0;
  774 + vrLen = 1661;
  775 + vrLoc = 1226;
  776 + };
  777 + 03B265DB10D70E3400132B6C /* PBXTextBookmark */ = {
  778 + isa = PBXTextBookmark;
  779 + fRef = 0328F80E10B0A8B70074A5A1 /* SPSourcePhotosTVC.m */;
  780 + name = "SPSourcePhotosTVC.m: 33";
  781 + rLen = 0;
  782 + rLoc = 730;
  783 + rType = 0;
  784 + vrLen = 1429;
  785 + vrLoc = 342;
  786 + };
  787 + 03B265DC10D70E3400132B6C /* PBXTextBookmark */ = {
  788 + isa = PBXTextBookmark;
  789 + fRef = 0328F80E10B0A8B70074A5A1 /* SPSourcePhotosTVC.m */;
  790 + name = "SPSourcePhotosTVC.m: 33";
  791 + rLen = 0;
  792 + rLoc = 730;
  793 + rType = 0;
  794 + vrLen = 1271;
  795 + vrLoc = 342;
  796 + };
  797 + 03B265DD10D70E6900132B6C /* PBXTextBookmark */ = {
  798 + isa = PBXTextBookmark;
  799 + fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
  800 + name = "main.m: 19";
  801 + rLen = 0;
  802 + rLoc = 390;
  803 + rType = 0;
  804 + vrLen = 390;
  805 + vrLoc = 0;
  806 + };
  807 + 03B265DE10D70E6900132B6C /* PBXTextBookmark */ = {
  808 + isa = PBXTextBookmark;
  809 + fRef = 0328F80E10B0A8B70074A5A1 /* SPSourcePhotosTVC.m */;
  810 + name = "SPSourcePhotosTVC.m: 33";
  811 + rLen = 0;
  812 + rLoc = 730;
  813 + rType = 0;
  814 + vrLen = 708;
  815 + vrLoc = 447;
  816 + };
  817 + 03B265E110D70E7700132B6C /* PBXTextBookmark */ = {
  818 + isa = PBXTextBookmark;
  819 + fRef = 0328F80E10B0A8B70074A5A1 /* SPSourcePhotosTVC.m */;
  820 + name = "SPSourcePhotosTVC.m: 33";
  821 + rLen = 0;
  822 + rLoc = 730;
  823 + rType = 0;
  824 + vrLen = 1429;
  825 + vrLoc = 342;
  826 + };
  827 + 03B265E210D70E7700132B6C /* PBXTextBookmark */ = {
  828 + isa = PBXTextBookmark;
  829 + fRef = 032A7B9E10B829DB00E7FB65 /* EXFMetaData.m */;
  830 + name = "EXFMetaData.m: 1574";
  831 + rLen = 0;
  832 + rLoc = 56469;
  833 + rType = 0;
  834 + vrLen = 1489;
  835 + vrLoc = 43999;
  836 + };
  837 + 03B265E310D70E7700132B6C /* PBXTextBookmark */ = {
  838 + isa = PBXTextBookmark;
  839 + fRef = 032A7B9E10B829DB00E7FB65 /* EXFMetaData.m */;
  840 + name = "EXFMetaData.m: 1267";
  841 + rLen = 0;
  842 + rLoc = 43328;
  843 + rType = 0;
  844 + vrLen = 1382;
  845 + vrLoc = 42615;
  846 + };
  847 + 03B265E410D70E7800132B6C /* PBXTextBookmark */ = {
  848 + isa = PBXTextBookmark;
  849 + fRef = 032A7B9E10B829DB00E7FB65 /* EXFMetaData.m */;
  850 + name = "EXFMetaData.m: 1267";
  851 + rLen = 0;
  852 + rLoc = 43328;
  853 + rType = 0;
  854 + vrLen = 1328;
  855 + vrLoc = 42615;
  856 + };
  857 + 03B265E710D70E8700132B6C /* PBXTextBookmark */ = {
  858 + isa = PBXTextBookmark;
  859 + fRef = 0328F80E10B0A8B70074A5A1 /* SPSourcePhotosTVC.m */;
  860 + name = "SPSourcePhotosTVC.m: 33";
  861 + rLen = 0;
  862 + rLoc = 730;
  863 + rType = 0;
  864 + vrLen = 708;
  865 + vrLoc = 447;
  866 + };
  867 + 03B265E810D70E8700132B6C /* PBXTextBookmark */ = {
  868 + isa = PBXTextBookmark;
  869 + fRef = 032A7B9E10B829DB00E7FB65 /* EXFMetaData.m */;
  870 + name = "EXFMetaData.m: 1267";
  871 + rLen = 0;
  872 + rLoc = 43328;
  873 + rType = 0;
  874 + vrLen = 574;
  875 + vrLoc = 43008;
  876 + };
  877 + 03B265E910D70E9400132B6C /* PBXTextBookmark */ = {
  878 + isa = PBXTextBookmark;
  879 + fRef = 032A7B9E10B829DB00E7FB65 /* EXFMetaData.m */;
  880 + name = "EXFMetaData.m: 1267";
  881 + rLen = 0;
  882 + rLoc = 43328;
  883 + rType = 0;
  884 + vrLen = 1382;
  885 + vrLoc = 42615;
  886 + };
  887 + 03B265EB10D70EB700132B6C /* PBXTextBookmark */ = {
  888 + isa = PBXTextBookmark;
  889 + fRef = 032A7B9E10B829DB00E7FB65 /* EXFMetaData.m */;
  890 + name = "EXFMetaData.m: 1267";
  891 + rLen = 0;
  892 + rLoc = 43328;
  893 + rType = 0;
  894 + vrLen = 574;
  895 + vrLoc = 43008;
  896 + };
  897 + 03B265EC10D70ECD00132B6C /* PBXTextBookmark */ = {
  898 + isa = PBXTextBookmark;
  899 + fRef = 032A7B9E10B829DB00E7FB65 /* EXFMetaData.m */;
  900 + name = "EXFMetaData.m: 1267";
  901 + rLen = 0;
  902 + rLoc = 43328;
  903 + rType = 0;
  904 + vrLen = 1382;
  905 + vrLoc = 42615;
  906 + };
  907 + 03B265F510D70F0000132B6C /* PBXTextBookmark */ = {
  908 + isa = PBXTextBookmark;
  909 + fRef = 032A7B9E10B829DB00E7FB65 /* EXFMetaData.m */;
  910 + name = "EXFMetaData.m: 1267";
  911 + rLen = 0;
  912 + rLoc = 43328;
  913 + rType = 0;
  914 + vrLen = 1382;
  915 + vrLoc = 42615;
  916 + };
  917 + 03B265F710D70F1D00132B6C /* PBXTextBookmark */ = {
  918 + isa = PBXTextBookmark;
  919 + fRef = 032A7B9E10B829DB00E7FB65 /* EXFMetaData.m */;
  920 + name = "EXFMetaData.m: 1267";
  921 + rLen = 0;
  922 + rLoc = 43328;
  923 + rType = 0;
  924 + vrLen = 1382;
  925 + vrLoc = 42615;
  926 + };
  927 + 03B265FA10D70F3500132B6C /* PBXTextBookmark */ = {
  928 + isa = PBXTextBookmark;
  929 + fRef = 032A7B9E10B829DB00E7FB65 /* EXFMetaData.m */;
  930 + name = "EXFMetaData.m: 1267";
  931 + rLen = 0;
  932 + rLoc = 43328;
  933 + rType = 0;
  934 + vrLen = 574;
  935 + vrLoc = 43008;
  936 + };
  937 + 03B265FB10D70F3700132B6C /* PBXTextBookmark */ = {
  938 + isa = PBXTextBookmark;
  939 + fRef = 032A7B9E10B829DB00E7FB65 /* EXFMetaData.m */;
  940 + name = "EXFMetaData.m: 1267";
  941 + rLen = 0;
  942 + rLoc = 43328;
  943 + rType = 0;
  944 + vrLen = 1382;
  945 + vrLoc = 42615;
  946 + };
  947 + 03B265FC10D70F3800132B6C /* PBXTextBookmark */ = {
  948 + isa = PBXTextBookmark;
  949 + fRef = 032A7B9E10B829DB00E7FB65 /* EXFMetaData.m */;
  950 + name = "EXFMetaData.m: 1267";
  951 + rLen = 0;
  952 + rLoc = 43328;
  953 + rType = 0;
  954 + vrLen = 1382;
  955 + vrLoc = 42615;
  956 + };
  957 + 03B265FD10D70F4300132B6C /* PBXTextBookmark */ = {
  958 + isa = PBXTextBookmark;
  959 + fRef = 032A7B9E10B829DB00E7FB65 /* EXFMetaData.m */;
  960 + name = "EXFMetaData.m: 1267";
  961 + rLen = 0;
  962 + rLoc = 43328;
  963 + rType = 0;
  964 + vrLen = 1328;
  965 + vrLoc = 42615;
  966 + };
  967 + 03B265FE10D70F5700132B6C /* PBXTextBookmark */ = {
  968 + isa = PBXTextBookmark;
  969 + fRef = 032A7B9E10B829DB00E7FB65 /* EXFMetaData.m */;
  970 + name = "EXFMetaData.m: 1267";
  971 + rLen = 0;
  972 + rLoc = 43328;
  973 + rType = 0;
  974 + vrLen = 574;
  975 + vrLoc = 43008;
  976 + };
  977 + 03B265FF10D70F5800132B6C /* PBXTextBookmark */ = {
  978 + isa = PBXTextBookmark;
  979 + fRef = 032A7B9E10B829DB00E7FB65 /* EXFMetaData.m */;
  980 + name = "EXFMetaData.m: 1267";
  981 + rLen = 0;
  982 + rLoc = 43328;
  983 + rType = 0;
  984 + vrLen = 1382;
  985 + vrLoc = 42615;
  986 + };
541 987 03B6EFC910BB547600CF9139 /* gpl-2.0.txt */ = {
542 988 uiCtxt = {
543 989 sepNavIntBoundsRect = "{{0, 0}, {1078, 4420}}";
@@ -550,7 +996,7 @@
550 996 fRef = 0328F80E10B0A8B70074A5A1 /* SPSourcePhotosTVC.m */;
551 997 name = "SPSourcePhotosTVC.m: 66";
552 998 rLen = 0;
553   - rLoc = 1807;
  999 + rLoc = 2117;
554 1000 rType = 0;
555 1001 vrLen = 1679;
556 1002 vrLoc = 1242;
@@ -565,26 +1011,6 @@
565 1011 vrLen = 1262;
566 1012 vrLoc = 0;
567 1013 };
568   - 03D631ED10CAD51A00485DA5 /* PBXTextBookmark */ = {
569   - isa = PBXTextBookmark;
570   - fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
571   - name = "main.m: 19";
572   - rLen = 0;
573   - rLoc = 390;
574   - rType = 0;
575   - vrLen = 415;
576   - vrLoc = 0;
577   - };
578   - 03D631EE10CAD51A00485DA5 /* PBXTextBookmark */ = {
579   - isa = PBXTextBookmark;
580   - fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
581   - name = "main.m: 5";
582   - rLen = 0;
583   - rLoc = 68;
584   - rType = 0;
585   - vrLen = 390;
586   - vrLoc = 0;
587   - };
588 1014 1D3623240D0F684500981E51 /* SpyPhoneAppDelegate.h */ = {
589 1015 uiCtxt = {
590 1016 sepNavIntBoundsRect = "{{0, 0}, {1160, 446}}";
@@ -629,7 +1055,7 @@
629 1055 29B97313FDCFA39411CA2CEA /* Project object */ = {
630 1056 activeBuildConfigurationName = Debug;
631 1057 activeExecutable = 0328F4AB10B05E890074A5A1 /* SpyPhone */;
632   - activeSDKPreference = iphoneos3.1.2;
  1058 + activeSDKPreference = iphonesimulator3.1.2;
633 1059 activeTarget = 1D6058900D05DD3D006BFB54 /* SpyPhone */;
634 1060 addToTargets = (
635 1061 1D6058900D05DD3D006BFB54 /* SpyPhone */,
@@ -736,21 +1162,63 @@
736 1162 PBXFileDataSource_Warnings_ColumnID,
737 1163 );
738 1164 };
739   - PBXPerProjectTemplateStateSaveDate = 281673515;
740   - PBXWorkspaceStateSaveDate = 281673515;
  1165 + PBXPerProjectTemplateStateSaveDate = 282517844;
  1166 + PBXWorkspaceStateSaveDate = 282517844;
741 1167 };
742 1168 perUserProjectItems = {
743   - 03AE1B0F10C741AA00E8F628 /* PBXBookmark */ = 03AE1B0F10C741AA00E8F628 /* PBXBookmark */;
744   - 03AE1B1010C741AA00E8F628 /* PBXBookmark */ = 03AE1B1010C741AA00E8F628 /* PBXBookmark */;
745   - 03AE1B1110C741AA00E8F628 /* PBXBookmark */ = 03AE1B1110C741AA00E8F628 /* PBXBookmark */;
746   - 03AE1B1210C741AA00E8F628 /* PBXBookmark */ = 03AE1B1210C741AA00E8F628 /* PBXBookmark */;
747   - 03AE1B1310C741AA00E8F628 /* PBXBookmark */ = 03AE1B1310C741AA00E8F628 /* PBXBookmark */;
748   - 03AE1B1410C741AA00E8F628 /* PBXBookmark */ = 03AE1B1410C741AA00E8F628 /* PBXBookmark */;
749   - 03AE1B1510C741AA00E8F628 /* PBXBookmark */ = 03AE1B1510C741AA00E8F628 /* PBXBookmark */;
750   - 03D631EB10CAD51A00485DA5 /* PBXTextBookmark */ = 03D631EB10CAD51A00485DA5 /* PBXTextBookmark */;
751   - 03D631EC10CAD51A00485DA5 /* PBXTextBookmark */ = 03D631EC10CAD51A00485DA5 /* PBXTextBookmark */;
752   - 03D631ED10CAD51A00485DA5 /* PBXTextBookmark */ = 03D631ED10CAD51A00485DA5 /* PBXTextBookmark */;
753   - 03D631EE10CAD51A00485DA5 /* PBXTextBookmark */ = 03D631EE10CAD51A00485DA5 /* PBXTextBookmark */;
  1169 + 03AE1B0F10C741AA00E8F628 = 03AE1B0F10C741AA00E8F628 /* PBXBookmark */;
  1170 + 03AE1B1010C741AA00E8F628 = 03AE1B1010C741AA00E8F628 /* PBXBookmark */;
  1171 + 03AE1B1110C741AA00E8F628 = 03AE1B1110C741AA00E8F628 /* PBXBookmark */;
  1172 + 03AE1B1210C741AA00E8F628 = 03AE1B1210C741AA00E8F628 /* PBXBookmark */;
  1173 + 03AE1B1310C741AA00E8F628 = 03AE1B1310C741AA00E8F628 /* PBXBookmark */;
  1174 + 03AE1B1410C741AA00E8F628 = 03AE1B1410C741AA00E8F628 /* PBXBookmark */;
  1175 + 03AE1B1510C741AA00E8F628 = 03AE1B1510C741AA00E8F628 /* PBXBookmark */;
  1176 + 03B265AC10D3DE2B00132B6C = 03B265AC10D3DE2B00132B6C /* PBXTextBookmark */;
  1177 + 03B265AF10D5113B00132B6C = 03B265AF10D5113B00132B6C /* PBXTextBookmark */;
  1178 + 03B265B710D6E15800132B6C /* PBXTextBookmark */ = 03B265B710D6E15800132B6C /* PBXTextBookmark */;
  1179 + 03B265BB10D706F300132B6C /* PBXTextBookmark */ = 03B265BB10D706F300132B6C /* PBXTextBookmark */;
  1180 + 03B265BD10D706F300132B6C /* PBXTextBookmark */ = 03B265BD10D706F300132B6C /* PBXTextBookmark */;
  1181 + 03B265BE10D706F300132B6C /* PBXTextBookmark */ = 03B265BE10D706F300132B6C /* PBXTextBookmark */;
  1182 + 03B265C110D70C6200132B6C /* PBXTextBookmark */ = 03B265C110D70C6200132B6C /* PBXTextBookmark */;
  1183 + 03B265C210D70C6300132B6C /* PBXTextBookmark */ = 03B265C210D70C6300132B6C /* PBXTextBookmark */;
  1184 + 03B265C310D70C7A00132B6C /* PBXTextBookmark */ = 03B265C310D70C7A00132B6C /* PBXTextBookmark */;
  1185 + 03B265C410D70C7C00132B6C /* PBXTextBookmark */ = 03B265C410D70C7C00132B6C /* PBXTextBookmark */;
  1186 + 03B265CA10D70CB200132B6C /* PBXTextBookmark */ = 03B265CA10D70CB200132B6C /* PBXTextBookmark */;
  1187 + 03B265CB10D70CB300132B6C /* PBXTextBookmark */ = 03B265CB10D70CB300132B6C /* PBXTextBookmark */;
  1188 + 03B265CE10D70D0800132B6C /* PBXTextBookmark */ = 03B265CE10D70D0800132B6C /* PBXTextBookmark */;
  1189 + 03B265CF10D70D0900132B6C /* PBXTextBookmark */ = 03B265CF10D70D0900132B6C /* PBXTextBookmark */;
  1190 + 03B265D010D70D2900132B6C /* PBXTextBookmark */ = 03B265D010D70D2900132B6C /* PBXTextBookmark */;
  1191 + 03B265D110D70D3900132B6C /* PBXTextBookmark */ = 03B265D110D70D3900132B6C /* PBXTextBookmark */;
  1192 + 03B265D210D70DAE00132B6C /* PBXTextBookmark */ = 03B265D210D70DAE00132B6C /* PBXTextBookmark */;
  1193 + 03B265D310D70DAE00132B6C /* PBXTextBookmark */ = 03B265D310D70DAE00132B6C /* PBXTextBookmark */;
  1194 + 03B265D410D70DAE00132B6C /* PBXTextBookmark */ = 03B265D410D70DAE00132B6C /* PBXTextBookmark */;
  1195 + 03B265D510D70DAE00132B6C /* PBXTextBookmark */ = 03B265D510D70DAE00132B6C /* PBXTextBookmark */;
  1196 + 03B265D610D70DAE00132B6C /* PBXTextBookmark */ = 03B265D610D70DAE00132B6C /* PBXTextBookmark */;
  1197 + 03B265D710D70DAE00132B6C /* PBXTextBookmark */ = 03B265D710D70DAE00132B6C /* PBXTextBookmark */;
  1198 + 03B265D810D70DBC00132B6C /* PBXTextBookmark */ = 03B265D810D70DBC00132B6C /* PBXTextBookmark */;
  1199 + 03B265DB10D70E3400132B6C /* PBXTextBookmark */ = 03B265DB10D70E3400132B6C /* PBXTextBookmark */;
  1200 + 03B265DC10D70E3400132B6C /* PBXTextBookmark */ = 03B265DC10D70E3400132B6C /* PBXTextBookmark */;
  1201 + 03B265DD10D70E6900132B6C /* PBXTextBookmark */ = 03B265DD10D70E6900132B6C /* PBXTextBookmark */;
  1202 + 03B265DE10D70E6900132B6C /* PBXTextBookmark */ = 03B265DE10D70E6900132B6C /* PBXTextBookmark */;
  1203 + 03B265E110D70E7700132B6C /* PBXTextBookmark */ = 03B265E110D70E7700132B6C /* PBXTextBookmark */;
  1204 + 03B265E210D70E7700132B6C /* PBXTextBookmark */ = 03B265E210D70E7700132B6C /* PBXTextBookmark */;
  1205 + 03B265E310D70E7700132B6C /* PBXTextBookmark */ = 03B265E310D70E7700132B6C /* PBXTextBookmark */;
  1206 + 03B265E410D70E7800132B6C /* PBXTextBookmark */ = 03B265E410D70E7800132B6C /* PBXTextBookmark */;
  1207 + 03B265E710D70E8700132B6C /* PBXTextBookmark */ = 03B265E710D70E8700132B6C /* PBXTextBookmark */;
  1208 + 03B265E810D70E8700132B6C /* PBXTextBookmark */ = 03B265E810D70E8700132B6C /* PBXTextBookmark */;
  1209 + 03B265E910D70E9400132B6C /* PBXTextBookmark */ = 03B265E910D70E9400132B6C /* PBXTextBookmark */;
  1210 + 03B265EB10D70EB700132B6C /* PBXTextBookmark */ = 03B265EB10D70EB700132B6C /* PBXTextBookmark */;
  1211 + 03B265EC10D70ECD00132B6C /* PBXTextBookmark */ = 03B265EC10D70ECD00132B6C /* PBXTextBookmark */;
  1212 + 03B265F510D70F0000132B6C /* PBXTextBookmark */ = 03B265F510D70F0000132B6C /* PBXTextBookmark */;
  1213 + 03B265F710D70F1D00132B6C /* PBXTextBookmark */ = 03B265F710D70F1D00132B6C /* PBXTextBookmark */;
  1214 + 03B265FA10D70F3500132B6C /* PBXTextBookmark */ = 03B265FA10D70F3500132B6C /* PBXTextBookmark */;
  1215 + 03B265FB10D70F3700132B6C /* PBXTextBookmark */ = 03B265FB10D70F3700132B6C /* PBXTextBookmark */;
  1216 + 03B265FC10D70F3800132B6C /* PBXTextBookmark */ = 03B265FC10D70F3800132B6C /* PBXTextBookmark */;
  1217 + 03B265FD10D70F4300132B6C /* PBXTextBookmark */ = 03B265FD10D70F4300132B6C /* PBXTextBookmark */;
  1218 + 03B265FE10D70F5700132B6C /* PBXTextBookmark */ = 03B265FE10D70F5700132B6C /* PBXTextBookmark */;
  1219 + 03B265FF10D70F5800132B6C /* PBXTextBookmark */ = 03B265FF10D70F5800132B6C /* PBXTextBookmark */;
  1220 + 03D631EB10CAD51A00485DA5 = 03D631EB10CAD51A00485DA5 /* PBXTextBookmark */;
  1221 + 03D631EC10CAD51A00485DA5 = 03D631EC10CAD51A00485DA5 /* PBXTextBookmark */;
754 1222 };
755 1223 sourceControlManager = 0328F4B810B05E8E0074A5A1 /* Source Control */;
756 1224 userBuildSettings = {
@@ -758,8 +1226,8 @@
758 1226 };
759 1227 29B97316FDCFA39411CA2CEA /* main.m */ = {
760 1228 uiCtxt = {
761   - sepNavIntBoundsRect = "{{0, 0}, {1078, 587}}";
762   - sepNavSelRange = "{68, 0}";
  1229 + sepNavIntBoundsRect = "{{0, 0}, {1391, 247}}";
  1230 + sepNavSelRange = "{390, 0}";
763 1231 sepNavVisRange = "{0, 390}";
764 1232 };
765 1233 };
61 SpyPhone.xcodeproj/nst.perspectivev3
@@ -305,13 +305,14 @@
305 305 <key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
306 306 <array>
307 307 <array>
308   - <integer>78</integer>
309   - <integer>76</integer>
  308 + <integer>19</integer>
  309 + <integer>3</integer>
  310 + <integer>2</integer>
310 311 <integer>0</integer>
311 312 </array>
312 313 </array>
313 314 <key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
314   - <string>{{0, 721}, {291, 760}}</string>
  315 + <string>{{0, 0}, {291, 760}}</string>
315 316 </dict>
316 317 <key>PBXTopSmartGroupGIDs</key>
317 318 <array/>
@@ -341,14 +342,12 @@
341 342 <key>Dock</key>
342 343 <array>
343 344 <dict>
344   - <key>BecomeActive</key>
345   - <true/>
346 345 <key>ContentConfiguration</key>
347 346 <dict>
348 347 <key>PBXProjectModuleGUID</key>
349 348 <string>0328F4B210B05E8E0074A5A1</string>
350 349 <key>PBXProjectModuleLabel</key>
351   - <string>main.m</string>
  350 + <string>EXFMetaData.m</string>
352 351 <key>PBXSplitModuleInNavigatorKey</key>
353 352 <dict>
354 353 <key>Split0</key>
@@ -356,23 +355,23 @@
356 355 <key>PBXProjectModuleGUID</key>
357 356 <string>0328F4B310B05E8E0074A5A1</string>
358 357 <key>PBXProjectModuleLabel</key>
359   - <string>main.m</string>
  358 + <string>EXFMetaData.m</string>
360 359 <key>_historyCapacity</key>
361 360 <integer>10</integer>
362 361 <key>bookmark</key>
363   - <string>03D631EE10CAD51A00485DA5</string>
  362 + <string>03B265FF10D70F5800132B6C</string>
364 363 <key>history</key>
365 364 <array>
366   - <string>03AE1B0F10C741AA00E8F628</string>
367   - <string>03AE1B1010C741AA00E8F628</string>
368   - <string>03AE1B1110C741AA00E8F628</string>
369   - <string>03AE1B1210C741AA00E8F628</string>
370 365 <string>03AE1B1310C741AA00E8F628</string>
371 366 <string>03AE1B1410C741AA00E8F628</string>
372 367 <string>03AE1B1510C741AA00E8F628</string>
373   - <string>03D631EB10CAD51A00485DA5</string>
374 368 <string>03D631EC10CAD51A00485DA5</string>
375   - <string>03D631ED10CAD51A00485DA5</string>
  369 + <string>03B265BB10D706F300132B6C</string>
  370 + <string>03B265D210D70DAE00132B6C</string>
  371 + <string>03B265D310D70DAE00132B6C</string>
  372 + <string>03B265D510D70DAE00132B6C</string>
  373 + <string>03B265E110D70E7700132B6C</string>
  374 + <string>03B265FE10D70F5700132B6C</string>
376 375 </array>
377 376 </dict>
378 377 <key>SplitCount</key>
@@ -386,18 +385,18 @@
386 385 <key>GeometryConfiguration</key>
387 386 <dict>
388 387 <key>Frame</key>
389   - <string>{{0, 0}, {1127, 619}}</string>
  388 + <string>{{0, 0}, {1127, 611}}</string>
390 389 <key>RubberWindowFrame</key>
391 390 <string>0 59 1440 819 0 0 1440 878 </string>
392 391 </dict>
393 392 <key>Module</key>
394 393 <string>PBXNavigatorGroup</string>
395 394 <key>Proportion</key>
396   - <string>619pt</string>
  395 + <string>611pt</string>
397 396 </dict>
398 397 <dict>
399 398 <key>Proportion</key>
400   - <string>154pt</string>
  399 + <string>162pt</string>
401 400 <key>Tabs</key>
402 401 <array>
403 402 <dict>
@@ -411,7 +410,7 @@
411 410 <key>GeometryConfiguration</key>
412 411 <dict>
413 412 <key>Frame</key>
414   - <string>{{10, 27}, {1127, 319}}</string>
  413 + <string>{{10, 27}, {1127, 135}}</string>
415 414 </dict>
416 415 <key>Module</key>
417 416 <string>XCDetailModule</string>
@@ -427,7 +426,7 @@
427 426 <key>GeometryConfiguration</key>
428 427 <dict>
429 428 <key>Frame</key>
430   - <string>{{10, 27}, {1127, 260}}</string>
  429 + <string>{{10, 27}, {1127, 135}}</string>
431 430 </dict>
432 431 <key>Module</key>
433 432 <string>PBXProjectFindModule</string>
@@ -465,7 +464,7 @@
465 464 <key>GeometryConfiguration</key>
466 465 <dict>
467 466 <key>Frame</key>
468   - <string>{{10, 27}, {1127, 127}}</string>
  467 + <string>{{10, 27}, {1127, 135}}</string>
469 468 <key>RubberWindowFrame</key>
470 469 <string>0 59 1440 819 0 0 1440 878 </string>
471 470 </dict>
@@ -495,11 +494,11 @@
495 494 </array>
496 495 <key>TableOfContents</key>
497 496 <array>
498   - <string>03D6319F10C9FF3200485DA5</string>
  497 + <string>03B265B810D6E15800132B6C</string>
499 498 <string>1CA23ED40692098700951B8B</string>
500   - <string>03D631A010C9FF3200485DA5</string>
  499 + <string>03B265B910D6E15800132B6C</string>
501 500 <string>0328F4B210B05E8E0074A5A1</string>
502   - <string>03D631A110C9FF3200485DA5</string>
  501 + <string>03B265BA10D6E15800132B6C</string>
503 502 <string>1CA23EDF0692099D00951B8B</string>
504 503 <string>1CA23EE00692099D00951B8B</string>
505 504 <string>1CA23EE10692099D00951B8B</string>
@@ -648,13 +647,13 @@
648 647 </array>
649 648 <key>TableOfContents</key>
650 649 <array>
651   - <string>03D631BE10CA024300485DA5</string>
  650 + <string>03B265C510D70C7C00132B6C</string>
652 651 <string>1CCC7628064C1048000F2A68</string>
653 652 <string>1CCC7629064C1048000F2A68</string>
654   - <string>03D631BF10CA024300485DA5</string>
655   - <string>03D631C010CA024300485DA5</string>
656   - <string>03D631C110CA024300485DA5</string>
657   - <string>03D631C210CA024300485DA5</string>
  653 + <string>03B265C610D70C7C00132B6C</string>
  654 + <string>03B265C710D70C7C00132B6C</string>
  655 + <string>03B265C810D70C7C00132B6C</string>
  656 + <string>03B265C910D70C7C00132B6C</string>
658 657 <string>0328F4B210B05E8E0074A5A1</string>
659 658 </array>
660 659 <key>ToolbarConfigUserDefaultsMinorVersion</key>
@@ -672,7 +671,7 @@
672 671 <key>StatusbarIsVisible</key>
673 672 <true/>
674 673 <key>TimeStamp</key>
675   - <real>281728282.589513</real>
  674 + <real>282529624.59688199</real>
676 675 <key>ToolbarConfigUserDefaultsMinorVersion</key>
677 676 <string>2</string>
678 677 <key>ToolbarDisplayMode</key>
@@ -689,8 +688,8 @@
689 688 <integer>5</integer>
690 689 <key>WindowOrderList</key>
691 690 <array>
692   - <string>03D631C410CA024300485DA5</string>
693   - <string>03D631C510CA024300485DA5</string>
  691 + <string>03B265ED10D70ECD00132B6C</string>
  692 + <string>03B265EE10D70ECD00132B6C</string>
694 693 <string>/Users/nst/Projects/SpyPhone/SpyPhone.xcodeproj</string>
695 694 </array>
696 695 <key>WindowString</key>

0 comments on commit 9a39967

Please sign in to comment.
Something went wrong with that request. Please try again.