~ubuntu-branches/ubuntu/precise/libmtp/precise-proposed

« back to all changes in this revision

Viewing changes to ChangeLog

  • Committer: Bazaar Package Importer
  • Author(s): Alessio Treglia
  • Date: 2010-02-04 16:34:58 UTC
  • mto: (16.1.5 sid) (0.2.1 upstream)
  • mto: This revision was merged to the branch mainline in revision 26.
  • Revision ID: james.westby@ubuntu.com-20100204163458-pegywpiiisrzx72w
Tags: upstream-1.0.2
ImportĀ upstreamĀ versionĀ 1.0.2

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
2010-01-30  Linus Walleij <triad@df.lth.se>
 
2
 
 
3
        * examples/connect.c: bad prototype for sendtrack_.
 
4
        * examples/sentr.c: bad prototype.
 
5
        * src/ptp.c: sync to upstream.
 
6
        * src/ptp.h: dito.
 
7
        * src/ptp-pack.c: dito.
 
8
 
 
9
2010-01-19  Linus Walleij <triad@df.lth.se>
 
10
 
 
11
        * src/libmtp.c: handle a root folder with a number of
 
12
          0xffffffffU (-1), even if the spec says that 0x00000000
 
13
          is the root folder. Add some warnings.
 
14
        * src/libmtp.c: patch from Kevin Hester to fix the erroneous
 
15
          setting of genre or release date to NULL on some devices.
 
16
        * src/libusb-glue.c: patch to fix a bug in some multithread
 
17
          contexts affecting e.g. Rhythmbox, also by Kevin Hester.
 
18
        * examples/Makefile.am: fix the bad prefixing that came in
 
19
          as part of the Windows fixes. Keep $(EXEEXT).
 
20
 
 
21
2010-01-07  Linus Walleij <triad@df.lth.se>
 
22
 
 
23
        * src/libmtp.c: detect "My_Foo" default folders as well
 
24
          as "My Foo" (underscore) as well.
 
25
 
 
26
2010-01-01  Linus Walleij <triad@df.lth.se>
 
27
 
 
28
        * src/libmtp.h.in: we use time_t so include <time.h>
 
29
 
 
30
2009-12-16  Linus Walleij <triad@df.lth.se>
 
31
 
 
32
        * src/libusb-glue.c: don't complain so much about the
 
33
          response to command 2.
 
34
 
 
35
2009-11-30  Linus Walleij <triad@df.lth.se>
 
36
 
 
37
        * src/libusb-glue.c: bus detection fix for libusb -
 
38
          bus->location was not properly initialized.
 
39
 
 
40
2009-10-10  Linus Walleij <triad@df.lth.se>
 
41
 
 
42
        * src/libmtp.h.in: move debugmacros to util.h
 
43
        * src/util.h: dito
 
44
        * libmtp.pc.in: erroneouse Libs.private, lacking ":"
 
45
 
 
46
2009-09-28  Nicolas VIVIEN <nicolas@vivien.fr>
 
47
 
 
48
        * examples/albumart.c : add d option, to enable or not debug
 
49
          ouput.
 
50
        * examples/albums.c : dito.
 
51
        * examples/detect.c : dito.
 
52
        * src/libmtp.c : Add LIBMTP_Set_Debug function.
 
53
        * src/libmtp.h.in : Add LIBMTP_Set_Debug function to API.
 
54
        * src/libmtp.sym : Add LIBMTP_Set_Debug function to exported symbol.
 
55
        * src/libusb-glue.h : Add LIBMTP_USB_DEBUG / LIBMTP_DATA_DEBUG macros.
 
56
        * src/libusb-glue.c : Use previous macros inside of printf.
 
57
        * src/playlist-spl.c : Add LIBMTP_PLST_DEBUG macro.
 
58
 
 
59
2009-09-25  Linus Walleij <triad@df.lth.se>
 
60
 
 
61
        * src/libusb-glue.c: some more BlackBerry fixing from
 
62
          Nicolas.
 
63
        * examples/albumart.c: add p and s switches, to support
 
64
          storage and parent ID:s. (Nicolas)
 
65
        * examples/newplaylist.c: dito. (Nicolas)
 
66
 
 
67
2009-09-23  Linus Walleij <triad@df.lth.se>
 
68
 
 
69
        * src/libmtp.c: patch from Nyall Dawson to make all
 
70
          filenames unique if the device requires this.
 
71
        * src/libusb-glue.h: dito.
 
72
        * src/device-flags.h: dito.
 
73
        * src/music-players.h: dito.
 
74
 
 
75
2009-09-23  Linus Walleij <triad@df.lth.se>
 
76
 
 
77
        * src/libusb-glue.c: several patches from Nicolas Vivien to
 
78
          support the BlackBerry Storm.
 
79
        * src/device-flags.h: add special flag for the BlackBerry
 
80
          "switch mode" command.
 
81
        * src/libusb-glue.h: dito.
 
82
        * src/music-players.h: tag the BlackBerry with this flag.
 
83
 
 
84
2009-09-21  Linus Walleij <triad@df.lth.se>
 
85
 
 
86
        * examples/sendtr.c: patch from Andrea Grillini to support
 
87
          quiet mode operation.
 
88
 
 
89
2009-09-12  Linus Walleij <triad@df.lth.se>
 
90
 
 
91
        * src/libusb-glue.c: skip interfaces with != 3 endpoints
 
92
          and make sure we locate 1 bulk in, 1 bulk out and 1 interrupt
 
93
          endpoint on the interface, else SKIP IT. Based on a patch
 
94
          from Nicolas Vivien <nicolas@vivien.fr>.
 
95
 
1
96
2009-09-12  Linus Walleij <triad@df.lth.se>
2
97
 
3
98
        * configure.ac: bump version to libmtp 1.0.1 and release!
321
416
 
322
417
        * configure.ac: bump to 0.3.6 and release.
323
418
        * src/Makefile.am: interface bump to libmtp.so.8.2.1
324
 
        
 
419
 
325
420
2009-01-16  Linus Walleij <triad@df.lth.se>
326
421
 
327
422
        * src/ptp.c: sync to upstream.
422
517
        * Release libmtp 0.3.4.
423
518
        * configure.ac: let's release 0.3.4.
424
519
        * src/Makefile.am: compatible API and ABI.
425
 
        
 
520
 
426
521
2008-11-05  Linus Walleij <triad@df.lth.se>
427
522
 
428
523
        * src/libmtp.c: fix the association type problem on
470
565
        * configure.ac: bump to 0.3.3.
471
566
        * src/Makefile.am: interface to .so.8.1.0
472
567
        * Release as 0.3.3.
473
 
        
 
568
 
474
569
2008-09-24  Linus Walleij <triad@df.lth.se>
475
570
 
476
571
        * src/libmtp.h.in: add new filename setting functions, patch
495
590
 
496
591
2008-09-20  Joe Nahmias <joe@nahmias.net>
497
592
 
498
 
        * examples/sendtr.c: added option to specify which 
 
593
        * examples/sendtr.c: added option to specify which
499
594
          storage_id the track should be copied.
500
595
 
501
596
2008-09-20  Linus Walleij <triad@df.lth.se>
527
622
 
528
623
2008-09-04  Linus Walleij <triad@df.lth.se>
529
624
 
530
 
        * src/libmtp.c: look up the filename for playlists if the name is 
 
625
        * src/libmtp.c: look up the filename for playlists if the name is
531
626
          missing or not properly set. Not doing the same for albums -
532
627
          these must have proper metadata.
533
628
        * src/music-players.h: more players as usual.
619
714
          It's NOT compatible!
620
715
        * RELEASE libmtp 0.3.0 and let the apps developers have
621
716
          their apps fixed!
622
 
        
 
717
 
623
718
2008-06-22  Linus Walleij <triad@df.lth.se>
624
719
 
625
720
        * src/libmtp.h.in: removed the parenthandle argument from
660
755
        * src/libmtp.c: only look for default folders in the
661
756
          primary storage, and only try to put files there
662
757
          if they are targetting the primary storage.
663
 
        
 
758
 
664
759
2008-06-08  Linus Walleij <triad@df.lth.se>
665
760
 
666
761
        * configure.ac: check for the langinfo.h header.
667
762
        * examples/connect.c: check charset properly.
668
763
        * examples/sendtr.c: dito.
669
764
        * src/music-players.h: new devices galore.
670
 
        
 
765
 
671
766
2008-06-03  Linus Walleij <triad@df.lth.se>
672
767
 
673
768
        * src/device-flags.h: new device flag for devices that
691
786
          switching on the device flags and increase the code
692
787
          readability.
693
788
        * src/libmtp.c: use the new accessor functions.
694
 
        
 
789
 
695
790
2008-06-01  Linus Walleij <triad@df.lth.se>
696
791
 
697
792
        * src/libmtp.c: use LIBMTP_Detect_Raw_Devices() and
698
 
          LIBMTP_Open_Raw_Device() inside 
 
793
          LIBMTP_Open_Raw_Device() inside
699
794
          LIBMTP_Get_First_Device() refactoring. Move
700
795
          params creation into this file.
701
796
        * src/libusb-glue.c: move params creation away
754
849
2008-05-05  Linus Walleij <triad@df.lth.se>
755
850
 
756
851
        * src/libusb-glue.c: assign device name and flags to
757
 
          detected raw devices, slowly preparing to move to 
 
852
          detected raw devices, slowly preparing to move to
758
853
          using the raw device detection internally as well.
759
854
 
760
855
2008-05-04  Linus Walleij <triad@df.lth.se>
784
879
          types and tidy up a bit.
785
880
 
786
881
2008-04-24  Linus Walleij <triad@df.lth.se>
787
 
        
 
882
 
788
883
        * src/libmtp.h.in: added preliminary interface for getting
789
884
          raw devices.
790
885
        * src/libusb-glue.c: the implementation is all here!
791
886
        * src/libusb-glue.h: add some bus and device fields to the
792
887
          internal device list.
793
888
        * examples/detect.c: exercise the raw device detection code.
794
 
        
 
889
 
795
890
2008-03-26  Linus Walleij <triad@df.lth.se>
796
891
 
797
892
        * examples/pathutils.c: fix a folder identification bug,
820
915
2008-03-02  Linus Walleij <triad@df.lth.se>
821
916
 
822
917
        * configure.ac: prepare 0.2.6 release.
823
 
        * src/Makefile.am: bump to compatible interface, 
 
918
        * src/Makefile.am: bump to compatible interface,
824
919
        * src/ptp.c: sync in upstream, a Sansa fix!
825
920
        * src/ptp.h: sync in upstream.
826
921
        * doc/Doxyfile.in: retire obsoleted parameters.
827
922
        * Release this as 0.2.6!
828
 
        
 
923
 
829
924
2008-02-24  Richard Low <richard@wentnet.com>
830
925
 
831
926
        * src/music-players.h: add DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL
857
952
 
858
953
        * src/libmtp.c: LIBMTP_Get_Filemetadata() return metadata for
859
954
          folders (associations) too. There is really no reason why it
860
 
          shouldn't and it's good for use internally. 
 
955
          shouldn't and it's good for use internally.
861
956
          LIBMTP_Get_Filelisting_With_Callback() will still not return
862
957
          any associations however. We want to use the folder functions
863
958
          for that.
866
961
 
867
962
        * src/libmtp.h.in: withdraw LIBMTP_Set_Object_Parent() function,
868
963
          no known devices will support this.
869
 
        * src/libmtp.c: dito. Fix up some problems with the 
 
964
        * src/libmtp.c: dito. Fix up some problems with the
870
965
          LIBMTP_Set_Object_Filename() function.
871
966
 
872
967
2008-01-27  Linus Walleij <triad@df.lth.se>
899
994
        * src/libmtp.h.in: ditto
900
995
 
901
996
2008-01-14  Linus Walleij <triad@df.lth.se>
902
 
        
 
997
 
903
998
        * src/libmtp.c: add LIBMTP_Get_Manufacturername(). Remember
904
999
          to bump soname (compatible) in 0.2.6 (or whatever we name it).
905
1000
          0.3.0 perhaps?
912
1007
        * examples/pathutils.c: recognize .bin files as firmware,
913
1008
          used by e.g. RockBox developers. Doesn't cost anything to
914
1009
          add.
915
 
        
 
1010
 
916
1011
2008-01-08  Linus Walleij <triad@df.lth.se>
917
1012
 
918
1013
        * configure.ac: bump to 0.2.5.
1028
1123
          RAZR2 V8 has this problem.
1029
1124
        * src/libusb-glue.h: flag for broken set object proplist.
1030
1125
        * libmtp.c: avoid broken set object proplist.
1031
 
        
 
1126
 
1032
1127
2007-10-09  Jeff Mitchell <kde-dev@emailgoeshere.com>
1033
1128
 
1034
1129
        * src/libusb-glue.c: add separate vendor and product strings
1043
1138
        * src/Makefile.am: interface to libmtp.so.6.0.2 (compatible)
1044
1139
        * Release as 0.2.2. Now is as good time as ever. Release
1045
1140
          early and release often.
1046
 
        
 
1141
 
1047
1142
2007-10-03  Linus Walleij <triad@df.lth.se>
1048
1143
 
1049
1144
        * src/libusb-glue.c: tag the OLD Creative devices with
1057
1152
        * src/libmtp.c: devices which represented file size with a
1058
1153
          32bit value (some Creative devices) would return a bananas
1059
1154
          file size. Fixed it up by...
1060
 
        * src/libmtp.h.in: recycling the uint8_t "interface" 
1061
 
          field in the device struct as a holder of the object size 
1062
 
          for the device. This will make the new library binary 
1063
 
          compatible with version 0.2.1 since no-one should *ever* 
1064
 
          dereference that value (which used to be the USB interface 
 
1155
        * src/libmtp.h.in: recycling the uint8_t "interface"
 
1156
          field in the device struct as a holder of the object size
 
1157
          for the device. This will make the new library binary
 
1158
          compatible with version 0.2.1 since no-one should *ever*
 
1159
          dereference that value (which used to be the USB interface
1065
1160
          number and is now the object size).
1066
1161
        * examples/files.c: display 64bit file sizes in hex correctly.
1067
1162
 
1102
1197
        * src/libusb-glue.c: flag the Samsung YH-820 with
1103
1198
          DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL after tests by Stephan
1104
1199
          Fabel.
1105
 
        
 
1200
 
1106
1201
2007-09-18  Linus Walleij <triad@df.lth.se>
1107
1202
 
1108
1203
        * src/libusb-glue.c: stop the endpoint unhalting/unstalling when
1109
 
          closing the USB device. It was AYBABTU the Samsungs 
 
1204
          closing the USB device. It was AYBABTU the Samsungs
1110
1205
          (and others).
1111
1206
 
1112
1207
2007-09-17  Linus Walleij <triad@df.lth.se>
1148
1243
        * src/ptp.c: reflect changes.
1149
1244
        * src/ptp.h: reflect changes.
1150
1245
        * src/libmtp.c: reflect changes.
1151
 
        
 
1246
 
1152
1247
2007-09-06  Linus Walleij <triad@df.lth.se>
1153
1248
 
1154
1249
        * examples/hotplug.c: edit up into a udev ruleset that is
1178
1273
          object ID.
1179
1274
        * hotplug.sh.in: explicitly call BASH instead of just sh. Warn
1180
1275
          if script is not run as root.
1181
 
        
 
1276
 
1182
1277
2007-08-29  Linus Walleij <triad@df.lth.se>
1183
1278
 
1184
1279
        * examples/Makefile.am: move include define from AM_CFLAGS to
1185
 
          AM_CPPFLAGS (as it should be) bug found by Petar Petrov 
 
1280
          AM_CPPFLAGS (as it should be) bug found by Petar Petrov
1186
1281
          <pesho.petrov@gmail.com>.
1187
1282
        * src/libusb-glue.c: strange misleading message corrected. Fix
1188
1283
          up the horrid interface passing back-and-forward and confusing.
1197
1292
          size in advance. Add in some code to fall back on the recursive
1198
1293
          metadata retrieveal if getting the whole long list fails.
1199
1294
        * src/libusb-glue.c: tag all Sansas as having broken GetObjectPropList
1200
 
          when all tags for all objects are requested. Scan each INTERFACE 
 
1295
          when all tags for all objects are requested. Scan each INTERFACE
1201
1296
          of the device for device descriptors.
1202
1297
 
1203
1298
2007-08-24  Linus Walleij <triad@df.lth.se>
1216
1311
          are ranges or enums, rounding and twiddling if need be. This is
1217
1312
          needed because some new devices (like the TrekStor Sweez,
1218
1313
          has duration defined as a range: MIN 0, MAX 65535000, STEP 1
1219
 
          and Sandisk Sansa c240 has duration as range: MIN 0, MAX 2147483000, 
 
1314
          and Sandisk Sansa c240 has duration as range: MIN 0, MAX 2147483000,
1220
1315
          STEP 1000) whereas old devices would just accept any value.
1221
1316
 
1222
1317
2007-08-16  Richard Low <richard@wentnet.com>
1340
1435
 
1341
1436
2007-07-10  Linus Walleij <triad@df.lth.se>
1342
1437
 
1343
 
        * examples/hotplug.c: force HAL OGG support on iriver devices. 
1344
 
          They all have it! Also force for two other devices that does 
 
1438
        * examples/hotplug.c: force HAL OGG support on iriver devices.
 
1439
          They all have it! Also force for two other devices that does
1345
1440
          this.
1346
1441
 
1347
1442
2007-07-07  Linus Walleij <triad@df.lth.se>
1439
1534
 
1440
1535
        * src/ptp.c: sync to upstream gPhoto source.
1441
1536
        * src/ptp.h: dito.
1442
 
        
 
1537
 
1443
1538
2007-04-17  Richard Low <richard@wentnet.com>
1444
1539
 
1445
1540
        * src/libusb-glue.c: new device
1456
1551
 
1457
1552
        * examples/files.c: some WIN32 64bit prefix fixup.
1458
1553
        * examples/tracks.c: dito.
1459
 
        
 
1554
 
1460
1555
2007-03-28  Ted Bullock <tbullock@canada.com>
1461
1556
 
1462
1557
        * examples/*.c: Print library version number on execution of examples.
1476
1571
 
1477
1572
        * src/libmtp.c: refactored MTP property list handling code to make
1478
1573
          things simple. Removed the flag for MTP enhanced: there are devices
1479
 
          that will not work without MTP enhanced (for example the Samsung 
1480
 
          YP-K5 will only support setting object property lists, not 
1481
 
          individual object properties, leaving out parts of the MTP basic 
1482
 
          subset), thus we are allowed to reverse-engineer and implement this 
1483
 
          for interoperability. I also made the output from 
1484
 
          LIBMTP_Dump_Device_Info() considerably more verbose, plotting out 
1485
 
          the ranges and possible enumerated values of all object properties.
1486
 
          For example you can see that the secret values associated with 
1487
 
          Audible.com property 0xda01 is an enumerated value that can be 
 
1574
          that will not work without MTP enhanced (for example the Samsung
 
1575
          YP-K5 will only support setting object property lists, not
 
1576
          individual object properties, leaving out parts of the MTP basic
 
1577
          subset), thus we are allowed to reverse-engineer and implement this
 
1578
          for interoperability. I also made the output from
 
1579
          LIBMTP_Dump_Device_Info() considerably more verbose, plotting out
 
1580
          the ranges and possible enumerated values of all object properties
 
1581
          For example you can see that the secret values associated with
 
1582
          Audible.com property 0xda01 is an enumerated value that can be
1488
1583
          2, 3 or 4 (etc).
1489
1584
 
1490
1585
2007-03-22  Richard Low <richard@wentnet.com>
1512
1607
2007-03-12  Linus Walleij <triad@df.lth.se>
1513
1608
 
1514
1609
        * Makefile.am: cleanup patch from Rafael Laboissiere.
1515
 
        * src/libusb-glue.c: refactored device detection code to 
1516
 
          immediately test if the device is in the known devices list if it 
1517
 
          does not feature a MTP device descriptor. This fixes the problem 
1518
 
          of not being able to mix devices with proper descriptors and 
 
1610
        * src/libusb-glue.c: refactored device detection code to
 
1611
          immediately test if the device is in the known devices list if it
 
1612
          does not feature a MTP device descriptor. This fixes the problem
 
1613
          of not being able to mix devices with proper descriptors and
1519
1614
          non-detected devices.
1520
1615
 
1521
1616
2007-03-07  Linus Walleij <triad@df.lth.se>
1523
1618
        * src/libusb-glue.c: remove libgphoto2 functions that we
1524
1619
          don't use.
1525
1620
        * src/libusb-glue.h: export the free_mtpdevice_list() function,
1526
 
          new signature of find_usb_devices().  
 
1621
          new signature of find_usb_devices().
1527
1622
        * src/libmtp.c: shrink code, pass as list of devices instead of
1528
1623
          several huge arrays between libmtp.c and USB glue layer in
1529
1624
          libusb-glue.c using the nifty list struct defined in libusb-glue.h.
1531
1626
 
1532
1627
2007-03-06  Linus Walleij <triad@df.lth.se>
1533
1628
 
1534
 
        * src/libusb-glue.c: rewrote one more function to be 
 
1629
        * src/libusb-glue.c: rewrote one more function to be
1535
1630
          non-recursive, perhaps I found the remaining bug, just
1536
1631
          cannot see that right now, will test tomorrow.
1537
 
        
 
1632
 
1538
1633
2007-03-05  Linus Walleij <triad@df.lth.se>
1539
1634
 
1540
1635
        * src/libmtp.c: rewrite recursive function to linear.
1545
1640
          linear, use wrapper objects, don't copy the libusb device
1546
1641
          struct, instead just store a pointer to it. This magically
1547
1642
          solved a bug...
1548
 
        
 
1643
 
1549
1644
2007-03-04  Linus Walleij <triad@df.lth.se>
1550
1645
 
1551
1646
        * src/Makefile.am: bump library interface to libmtp.so.5.2.0
1552
1647
          backwards compatible with any libmtp.so.5 interface, for
1553
1648
          imminent libmtp 0.1.4 release.
1554
 
        
 
1649
 
1555
1650
2007-03-03  Ted Bullock  <tbullock@canada.com>
1556
1651
 
1557
1652
        * src/libusb-glue.c: Don't echo warnings about reading a single
1567
1662
2007-03-03  Linus Walleij <triad@df.lth.se>
1568
1663
 
1569
1664
        * src/libusb-glue.h: Tiresome ramblings to explain exactly what
1570
 
          the (now renamed) device flag DEVICE_FLAG_NO_ZERO_READS really 
 
1665
          the (now renamed) device flag DEVICE_FLAG_NO_ZERO_READS really
1571
1666
          means.
1572
1667
        * src/libusb-glue.c: Renamed flag. Indent code :-) Reading the code
1573
1668
          and being impressed by our ability to iron out the root cause
1583
1678
2007-02-28  Linus Walleij <triad@df.lth.se>
1584
1679
 
1585
1680
        * src/ptp.h: Upstream accepted our patch so synced it in.
1586
 
        
 
1681
 
1587
1682
2007-02-27  Linus Walleij <triad@df.lth.se>
1588
1683
 
1589
 
        * src/ptp.c: Synced in upstream version which removes the 
 
1684
        * src/ptp.c: Synced in upstream version which removes the
1590
1685
          offending line.
1591
1686
        * src/libmtp.c: replaces strcmp() for strcasecmp() in folder
1592
1687
          detection since Windows and some devices (such as iRivers)
1593
1688
          ignore case and user capital letters for default folders.
1594
 
        
 
1689
 
1595
1690
2007-02-22  Ted Bullock  <tbullock@canada.com>
1596
1691
 
1597
 
        * src/ptp.c: Comment out line in ptp_exit_fd_handler that was 
1598
 
          closing a file descriptor.  This is not the responsibility of 
 
1692
        * src/ptp.c: Comment out line in ptp_exit_fd_handler that was
 
1693
          closing a file descriptor.  This is not the responsibility of
1599
1694
          the PTP Layer. Defect and solution found by Rob Reardon
1600
1695
 
1601
1696
2007-02-26  Linus Walleij <triad@df.lth.se>
1602
1697
 
1603
 
        * src/libmtp.c: Implement a check for PTP_OC_MTP_SetObjectPropValue 
1604
 
          in the LIBMTP_Update_Track_Metadata() function, there are 
1605
 
          obviously devices that do not support this, but only 
1606
 
          PTP_OC_MTP_SetObjPropList instead (such as the Samsung YH 925-GS), 
1607
 
          but we haven't implemented that yet. Problems are 
 
1698
        * src/libmtp.c: Implement a check for PTP_OC_MTP_SetObjectPropValue
 
1699
          in the LIBMTP_Update_Track_Metadata() function, there are
 
1700
          obviously devices that do not support this, but only
 
1701
          PTP_OC_MTP_SetObjPropList instead (such as the Samsung YH 925-GS),
 
1702
          but we haven't implemented that yet. Problems are
1608
1703
          atleast reported correctly now.
1609
1704
 
1610
1705
2007-02-24  Richard Low <richard@wentnet.com>
1615
1710
2007-02-23  Linus Walleij <triad@df.lth.se>
1616
1711
 
1617
1712
        * src/libmtp.c: Undeprecate getting first device code.
1618
 
        
 
1713
 
1619
1714
2007-02-23  Richard Low <richard@wentnet.com>
1620
1715
 
1621
1716
        * src/libmtp.c: Fix crash when no devices connected
1627
1722
        * src/libusb-glue.h: Remove old uni-device cruft code
1628
1723
        * Replace LIBMTP_ERROR_N0_DEVICE_ATTACHED with
1629
1724
                LIBMTP_ERROR_NO_DEVICE_ATTACHED across entire project
1630
 
        
 
1725
 
1631
1726
2007-02-22  Ted Bullock  <tbullock@canada.com>
1632
1727
 
1633
1728
        * examples/albums.c: Updated to use new multi device code
1667
1762
 
1668
1763
        * examples/folders.c: Updated to use new multi device code
1669
1764
        * src/libmtp.c: Fixed potential memory leaks
1670
 
        * src/libusb-glue.c: Fixed potential memory leaks and fixed device 
 
1765
        * src/libusb-glue.c: Fixed potential memory leaks and fixed device
1671
1766
          release segfault for multiple devices
1672
1767
 
1673
1768
2007-02-14  Ted Bullock  <tbullock@canada.com>
1674
1769
 
1675
 
        * src/libusb-glue.c: Wrote three new recursive functions to avoid 
1676
 
          extreme levels of multiple indirection and to clean the code up 
 
1770
        * src/libusb-glue.c: Wrote three new recursive functions to avoid
 
1771
          extreme levels of multiple indirection and to clean the code up
1677
1772
          a bit for multiple devices.
1678
 
        * examples/detect.c: Adjusted function calls to use new multiple 
 
1773
        * examples/detect.c: Adjusted function calls to use new multiple
1679
1774
          device code.
1680
1775
        * src/libmtp.h.in: Added prototype for LIBMTP_Release_Device_List
1681
1776
 
1682
1777
2007-02-12  Ted Bullock  <tbullock@canada.com>
1683
1778
 
1684
 
        * src/libmtp.c: Two new functions (create_usb_mtp_devices and 
 
1779
        * src/libmtp.c: Two new functions (create_usb_mtp_devices and
1685
1780
          LIBMTP_Get_Connected_Devices) to add support for multiple devices
1686
1781
          to client applications
1687
1782
        * src/libmtp.h: Added LIBMTP_Get_Connected_Devices as a publicly
1760
1855
          (but let's not do that renaming since it would break the API).
1761
1856
          For now let's understand this is a USB-only function by
1762
1857
          simply putting it in the libusb-glue.c file.
1763
 
        
 
1858
 
1764
1859
2007-01-22  Ted Bullock <tbullock@canada.com>
1765
1860
 
1766
1861
        * src/libusb-glue.c: first hack at creating an interface
1779
1874
          errors and adjust examples to make use of the error
1780
1875
          stack.
1781
1876
        * src/libmtp.c: dito.
1782
 
        
 
1877
 
1783
1878
2007-01-20  Richard Low <richard@wentnet.com>
1784
1879
 
1785
1880
        * src/libusb-glue.c: new device 'Philips PSA235'
1808
1903
          a little bit.
1809
1904
        * src/libmtp.c: don't assign values to writes or reads, use the
1810
1905
          PTP transport intrinsics instead.
1811
 
        
 
1906
 
1812
1907
2007-01-07  Orson Teodoro <orsonteodoro@yahoo.com>
1813
1908
 
1814
1909
        * src/ptp.h: Encoding profile.
1839
1934
 
1840
1935
2007-01-02  Linus Walleij <triad@df.lth.se>
1841
1936
 
1842
 
        * src/libusb-glue.c: fix up comments, remove things 
 
1937
        * src/libusb-glue.c: fix up comments, remove things
1843
1938
          refering to stuff we don't have.
1844
1939
 
1845
1940
2007-01-02  Richard Low <richard@wentnet.com>
1863
1958
 
1864
1959
2007-01-01  Orson Teodoro <orsonteodoro@yahoo.com>
1865
1960
 
1866
 
        * src/ptp.h: changed some WMDRMND def codes to AAVT def codes. 
 
1961
        * src/ptp.h: changed some WMDRMND def codes to AAVT def codes.
1867
1962
          addition of AAVT error codes.
1868
1963
        * src/ptp.c: changes to reflect modifications done in ptp.h
1869
1964
 
1936
2031
        * src/ptp.c: sync to upstream.
1937
2032
        * src/ptp.h: dito.
1938
2033
        * src/ptp-pack.c: dito.
1939
 
        
 
2034
 
1940
2035
2006-12-15  Linus Walleij <triad@df.lth.se>
1941
2036
 
1942
2037
        * src/libmtp.h.in: make the format function take a storage as
1950
2045
        * src/libmtp.c: make get_first_storage_freespace() always query
1951
2046
          the first storage when the space is requested. And some other
1952
2047
          janitorial stuff.
1953
 
        
 
2048
 
1954
2049
2006-12-13  Linus Walleij <triad@df.lth.se>
1955
2050
 
1956
2051
        * src/libusb-glue.c: one more device.
2031
2126
 
2032
2127
2006-11-30  Matthew Wilcox <matthew@wil.cx>
2033
2128
 
2034
 
        * src/ptp.c: on some devices, surplus packet data is 
 
2129
        * src/ptp.c: on some devices, surplus packet data is
2035
2130
          sometimes returned during read, i.e. a header of the
2036
 
          next package is typically attacked to the incoming 
2037
 
          data, as if someone was sending several packets at 
 
2131
          next package is typically attacked to the incoming
 
2132
          data, as if someone was sending several packets at
2038
2133
          once. If this happens we buffer the surplus packet.
2039
2134
        * src/libusb-glue.c: revert my own mistakes by making
2040
2135
          them Windows-only.
2047
2142
        * src/libmtp.h.in: removed external object interface.
2048
2143
        * src/libmtp.c: dito. Made all object manipulation functions
2049
2144
          static.
2050
 
        
 
2145
 
2051
2146
2006-11-29  Richard Low <richard@wentnet.com>
2052
2147
 
2053
2148
        * src/libusb-glue.c: added new devices
2059
2154
          Windows.
2060
2155
        * src/libmtp.c: various fixups to enable use of Windows
2061
2156
          <io.h> include file.
2062
 
        * README.windows.txt: added a quick porting guide for 
 
2157
        * README.windows.txt: added a quick porting guide for
2063
2158
          MSVC by Farooq Zaman.
2064
2159
 
2065
2160
2006-11-28  Linus Walleij <triad@df.lth.se>
2083
2178
 
2084
2179
2006-11-25  Marcus Meissner <marcus@jet.franken.de>
2085
2180
 
2086
 
        * examples/hotplug.c: adding HAL style XML output for 
 
2181
        * examples/hotplug.c: adding HAL style XML output for
2087
2182
          the devices.
2088
 
        * examples/Makefile.am: fixing a bug in the automake 
 
2183
        * examples/Makefile.am: fixing a bug in the automake
2089
2184
          file (pathutils.h missing!)
2090
2185
        * Makefile.am: fix the problem with re-making sources
2091
2186
          (you had to run ./autogen.sh before!)
2119
2214
 
2120
2215
2006-11-20  Andy Kelk <andy@mopoke.co.uk>
2121
2216
 
2122
 
        * src/libmtp.h.in: add "parent_id" property to LIBMTP_track_struct. 
 
2217
        * src/libmtp.h.in: add "parent_id" property to LIBMTP_track_struct.
2123
2218
        * src/libmtp.c: get "parent_id" property when reading tracks.
2124
2219
        * examples/emptyfolders.c: new example program for pruning empty
2125
2220
          folders. (does a dummy run by default).
2134
2229
2006-11-19  Daniel Williams <danielw@iinet.net.au>
2135
2230
 
2136
2231
        * src/libusb-glue.c: fix error on reconnect.
2137
 
        
 
2232
 
2138
2233
2006-11-18  Richard Low <richard@wentnet.com>
2139
2234
 
2140
2235
        * src/ptp.c: tidy up ptp_usb_getdata
2159
2254
        * src/libmtp.c: use enhanced MTP commands to create albums and
2160
2255
          add detection of the default album folder.
2161
2256
        * src/libmtp.h.in: add a holder for album default folder.
2162
 
        
 
2257
 
2163
2258
2006-11-15  Richard Low <richard@wentnet.com>
2164
2259
 
2165
2260
        * src/ptp-pack.c: set string buffer to correct size.
2166
2261
 
2167
2262
2006-11-14  Richard Low <richard@wentnet.com>
2168
 
        
 
2263
 
2169
2264
        * examples/tracks.c: really use undeprecated API entry.
2170
2265
 
2171
2266
2006-11-13  Richard Low <richard@wentnet.com>, Linus Walleij <triad@df.lth.se>
2177
2272
        * examples/tracks.c: use undeprecated API entry.
2178
2273
        * examples/connect.c: ditto.
2179
2274
        * examples/detect.c: ditto.
2180
 
        * examples/files.c: ditto.      
 
2275
        * examples/files.c: ditto.
2181
2276
        * src/ptp.c: working on getting object prop lists.
2182
2277
        * src/ptp.h: dito.
2183
2278
 
2205
2300
2006-10-29  Andy Kelk <andy@mopoke.co.uk>
2206
2301
 
2207
2302
        * examples/albumart.c: simple tool for adding album art.
2208
 
        * src/libmtp.c: graceful handling of players not supporting 
 
2303
        * src/libmtp.c: graceful handling of players not supporting
2209
2304
          abstract album objects.
2210
2305
 
2211
2306
2006-10-27  Linus Walleij <triad@df.lth.se>
2229
2324
2006-10-20  Linus Walleij <triad@df.lth.se>
2230
2325
 
2231
2326
        * Release 0.0.21 to get all the new device support out.
2232
 
        
 
2327
 
2233
2328
2006-10-16  Linus Walleij <triad@df.lth.se>
2234
2329
 
2235
2330
        * configure.ac: bump to 0.0.21.
2239
2334
 
2240
2335
2006-10-11  Linus Walleij <triad@df.lth.se>
2241
2336
 
2242
 
        * examples/delfile.c: patch from Chris Debenham 
 
2337
        * examples/delfile.c: patch from Chris Debenham
2243
2338
          straingtening out the command-line interface a bit
2244
2339
          more.
2245
2340
 
2246
2341
2006-10-10  Linus Walleij <triad@df.lth.se>
2247
2342
 
2248
 
        * examples/delfile.c: patch from Chris Debenham to make 
2249
 
          this command take an optional filename as parameter 
 
2343
        * examples/delfile.c: patch from Chris Debenham to make
 
2344
          this command take an optional filename as parameter
2250
2345
          instead of file ID.
2251
2346
 
2252
2347
2006-09-26  Linus Walleij <triad@df.lth.se>
2288
2383
 
2289
2384
        * configure.ac: bump release. Released 0.0.18 yesterday.
2290
2385
        * src/libmtp.c: do not try to read battery max level unless
2291
 
          the device supports it. (Bug occurred on Toshiba Gigabeat 
 
2386
          the device supports it. (Bug occurred on Toshiba Gigabeat
2292
2387
          P10.)
2293
2388
 
2294
2389
2006-09-11  Linus Walleij <triad@df.lth.se>
2297
2392
          detection so as to bring closer to libgphoto2 detection algorithm.
2298
2393
          I've seen things that might be false positives, possibly USB mass
2299
2394
          storage devices with additional MSFT descriptors to indicate they
2300
 
          have Janus DRM. 
 
2395
          have Janus DRM.
2301
2396
        * src/libmtp.c: use UCS-2-INTERNAL if we're not on glibc. glibc
2302
2397
          knows that UCS-2 is in machine endianness but Darwin and *BSD does
2303
2398
          not. Detect C library and switch accordingly.
2340
2435
 
2341
2436
2006-09-02  Linus Walleij <triad@df.lth.se>
2342
2437
 
2343
 
        * src/libmtp.c: add some code to have 
 
2438
        * src/libmtp.c: add some code to have
2344
2439
          LIBMTP_Send_File_From_File_Descriptor() accept a stream
2345
2440
          if size is set to (uint64_t) -1, plus documentation fixes.
2346
2441
          I don't think the streaming code will work but whoever want
2406
2501
2006-08-22  Linus Walleij <triad@df.lth.se>
2407
2502
 
2408
2503
        * configure.ac: bump to 0.0.13, also released 0.0.12 now.
2409
 
        
 
2504
 
2410
2505
2006-08-21  Linus Walleij <triad@df.lth.se>
2411
2506
 
2412
 
        * src/libmtp.c: fixup mmap() usage and add madvise() 
 
2507
        * src/libmtp.c: fixup mmap() usage and add madvise()
2413
2508
          as result of experiments by Gavin McCullagh. Upstream
2414
2509
          accept patch to get files directly to file descriptor.
2415
2510
          Move iconv() converters into device struct for thread
2428
2523
        * src/libmtp.c: dito.
2429
2524
        * examples/detect.c: reflect changes.
2430
2525
        * src/Makefile.am: interface is incompatible so age it.
2431
 
        
 
2526
 
2432
2527
2006-08-19  Linus Walleij <triad@df.lth.se>
2433
2528
 
2434
2529
        * src/libmtp.h.in: add function to get syncronization
2447
2542
          to using iconv() instead.
2448
2543
        * src/unicode.h: dito.
2449
2544
        * src/libmtp.c: reflect changes.
2450
 
        
 
2545
 
2451
2546
2006-08-09  Linus Walleij <triad@df.lth.se>
2452
2547
 
2453
2548
        * Release libmtp 0.0.11.
2456
2551
 
2457
2552
        * src/libmtp.c: patch from Dan Aloni to make sendfile
2458
2553
          use mmap and avoid memory drainage.
2459
 
        * src/libusb-glue.c: patch from Andy Kelk to avoid 
 
2554
        * src/libusb-glue.c: patch from Andy Kelk to avoid
2460
2555
          exit():ing when the interface cannot be claimed.
2461
2556
        * configure.ac: version bump.
2462
2557
 
2463
2558
2006-07-27  Linus Walleij <triad@df.lth.se>
2464
 
        
 
2559
 
2465
2560
        * Release libmtp 0.0.10.
2466
2561
 
2467
2562
2006-07-26  Linus Walleij <triad@df.lth.se>
2480
2575
2006-06-21  Linus Walleij <triad@df.lth.se>
2481
2576
 
2482
2577
        * src/libmtp.h.in: added function to retrieve supported
2483
 
          filetypes.    
 
2578
          filetypes.
2484
2579
        * src/libmtp.c: ditto.
2485
2580
        * examples/detect.c: use that function.
2486
2581
 
2487
2582
2006-06-19  Linus Walleij <triad@df.lth.se>
2488
2583
 
2489
 
        * src/unicode.c: support all endianness, detect 
 
2584
        * src/unicode.c: support all endianness, detect
2490
2585
          byte-order-mark
2491
2586
        * src/unicode.h: ditto.
2492
2587
        * src/libmtp.c: ditto.
2494
2589
        * src/libmtp.h.in: add some more track properties.
2495
2590
        * src/libmtp.c: ditto.
2496
2591
        * examples/tracks.c: ditto.
2497
 
        
 
2592
 
2498
2593
2006-06-16  Linus Walleij <triad@df.lth.se>
2499
2594
 
2500
2595
        * src/libmtp.h.in: new interfaces for single metadata post
2523
2618
        * examples/playlists.c: new example program.
2524
2619
        * configure.ac: bump to 0.0.9
2525
2620
        * src/Makefile.am: bump library interface.
2526
 
        
 
2621
 
2527
2622
2006-06-05  Linus Walleij <triad@df.lth.se>
2528
2623
 
2529
2624
        * examples/sendtr.c: fixed annoying bug that made this
2552
2647
          bad use of return code.
2553
2648
        * src/libusb-glue.c: fixed a loop exiting problem with
2554
2649
          good 'ol GOTO.
2555
 
        
 
2650
 
2556
2651
2006-05-29  Linus Walleij <triad@df.lth.se>
2557
2652
 
2558
2653
        * src/libusb-glue.c: one more device.
2576
2671
        * src/libmtp.h.in: ditto
2577
2672
        * examples/refactortest.c: Added simple example to use refactoring
2578
2673
        * examples/getplaylist.c: Added example to extract playlist data
2579
 
        * src/ptp.c: Re-added ptp_get/set_objectreferences to allow 
 
2674
        * src/ptp.c: Re-added ptp_get/set_objectreferences to allow
2580
2675
          for playlist handling
2581
2676
        * src/ptp.h: ditto
2582
2677
 
2585
2680
        * src/libmtp.h.in: add simple detection function.
2586
2681
        * src/libusb-glue.c: implement MTP "OS descriptor" for
2587
2682
          looking for MTP devices.
2588
 
        * examples/detect.c: make it possible to do very 
 
2683
        * examples/detect.c: make it possible to do very
2589
2684
          rudimentary detection with "detect -p".
2590
2685
        * configure.ac: bump to 0.0.5.
2591
2686
 
2600
2695
2006-05-04  Linus Walleij  <triad@df.lth.se>
2601
2696
 
2602
2697
        * examples/sendfile.c: fixes some more filetypes.
2603
 
        * src/libmtp.c: respectfully rearranged to use a filetype mapping 
 
2698
        * src/libmtp.c: respectfully rearranged to use a filetype mapping
2604
2699
          table.
2605
2700
        * src/ptp-pack.c: real nasty unicode packing bug.
2606
2701
        * Release libmtp 0.0.4.
2627
2722
        * examples/Makefile.am: new program, new entry.
2628
2723
        * src/libmtp.c: reflect this new functionality.
2629
2724
        * src/libmtp.h.in: dito.
2630
 
        
 
2725
 
2631
2726
2006-04-25  Linus Walleij  <triad@df.lth.se>
2632
2727
 
2633
2728
        * Rebased the sources around libgphoto2 instead.
2660
2755
        * examples/folders.c: dito.
2661
2756
        * examples/newfolder.c: dito.
2662
2757
        * examples/trexist.c: dito.
2663
 
        
 
2758
 
2664
2759
2006-03-28  Linus Walleij  <triad@df.lth.se>
2665
2760
 
2666
2761
        * m4/*: updated macros to work with GCC 4.1.0.
2703
2798
 
2704
2799
        * Deltr example program to delete tracks, plus corresponding
2705
2800
          interface call.
2706
 
        
 
2801
 
2707
2802
2006-02-23  Linus Walleij  <triad@df.lth.se>
2708
2803
 
2709
2804
        * Fixed up sendtr program and metadata tagging function that is
2713
2808
 
2714
2809
        * Untested gettr.c and sendtr.c programs to get and send tracks
2715
2810
          created.
2716
 
        
 
2811
 
2717
2812
2006-01-30  Linus Walleij  <triad@df.lth.se>
2718
2813
 
2719
2814
        * Created the initial GNU source directory structure.