[Pkg-gtkpod-devel] r384 - in libgpod/branches/upstream/current: . bindings bindings/python bindings/python/examples bindings/python/tests docs docs/reference docs/reference/html docs/reference/tmpl docs/reference/xml m4 po src tests tools

Frank Lichtenheld djpig at alioth.debian.org
Fri Jun 19 20:28:03 UTC 2009


Author: djpig
Date: 2009-06-19 20:28:03 +0000 (Fri, 19 Jun 2009)
New Revision: 384

Added:
   libgpod/branches/upstream/current/tools/ipod-scsi.c
   libgpod/branches/upstream/current/tools/ipod-time-sync.c
Removed:
   libgpod/branches/upstream/current/tools/ipod-scsi-inquiry.c
Modified:
   libgpod/branches/upstream/current/ChangeLog
   libgpod/branches/upstream/current/Makefile.am
   libgpod/branches/upstream/current/Makefile.in
   libgpod/branches/upstream/current/NEWS
   libgpod/branches/upstream/current/README.SysInfo
   libgpod/branches/upstream/current/TROUBLESHOOTING
   libgpod/branches/upstream/current/bindings/Makefile.in
   libgpod/branches/upstream/current/bindings/python/Makefile.am
   libgpod/branches/upstream/current/bindings/python/Makefile.in
   libgpod/branches/upstream/current/bindings/python/examples/Makefile.in
   libgpod/branches/upstream/current/bindings/python/tests/Makefile.in
   libgpod/branches/upstream/current/config.h.in
   libgpod/branches/upstream/current/configure
   libgpod/branches/upstream/current/configure.ac
   libgpod/branches/upstream/current/docs/Makefile.in
   libgpod/branches/upstream/current/docs/reference/Makefile.in
   libgpod/branches/upstream/current/docs/reference/html/ch01.html
   libgpod/branches/upstream/current/docs/reference/html/index.html
   libgpod/branches/upstream/current/docs/reference/html/index.sgml
   libgpod/branches/upstream/current/docs/reference/html/libgpod-Artwork.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-Chapter-Data.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-Device.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-File-handling-functions.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-Low-level-functions.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-Photo-database.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-Playlists.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-Smart-Playlists.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-The-Itdb-iTunesDB-structure.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-Time-handling.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod-Tracks.html
   libgpod/branches/upstream/current/docs/reference/html/libgpod.devhelp
   libgpod/branches/upstream/current/docs/reference/html/libgpod.devhelp2
   libgpod/branches/upstream/current/docs/reference/libgpod-sections.txt
   libgpod/branches/upstream/current/docs/reference/tmpl/device.sgml
   libgpod/branches/upstream/current/docs/reference/tmpl/itunesdb-db.sgml
   libgpod/branches/upstream/current/docs/reference/xml/device.xml
   libgpod/branches/upstream/current/docs/reference/xml/itunesdb-db.xml
   libgpod/branches/upstream/current/m4/Makefile.in
   libgpod/branches/upstream/current/po/POTFILES.in
   libgpod/branches/upstream/current/po/de.po
   libgpod/branches/upstream/current/po/es.po
   libgpod/branches/upstream/current/po/fr.po
   libgpod/branches/upstream/current/po/he.po
   libgpod/branches/upstream/current/po/it.po
   libgpod/branches/upstream/current/po/ja.po
   libgpod/branches/upstream/current/po/ro.po
   libgpod/branches/upstream/current/po/sv.po
   libgpod/branches/upstream/current/po/zh_CN.po
   libgpod/branches/upstream/current/src/Makefile.in
   libgpod/branches/upstream/current/src/db-artwork-parser.c
   libgpod/branches/upstream/current/src/db-itunes-parser.h
   libgpod/branches/upstream/current/src/itdb.h
   libgpod/branches/upstream/current/src/itdb_device.c
   libgpod/branches/upstream/current/src/itdb_device.h
   libgpod/branches/upstream/current/src/itdb_itunesdb.c
   libgpod/branches/upstream/current/src/itdb_private.h
   libgpod/branches/upstream/current/src/itdb_sysinfo_extended_parser.c
   libgpod/branches/upstream/current/src/itdb_sysinfo_extended_parser.h
   libgpod/branches/upstream/current/src/itdb_thumb.c
   libgpod/branches/upstream/current/tests/Makefile.in
   libgpod/branches/upstream/current/tools/Makefile.am
   libgpod/branches/upstream/current/tools/Makefile.in
Log:
[svn-upgrade] Integrating new upstream version, libgpod (0.7.2)

Modified: libgpod/branches/upstream/current/ChangeLog
===================================================================
--- libgpod/branches/upstream/current/ChangeLog	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/ChangeLog	2009-06-19 20:28:03 UTC (rev 384)
@@ -1,5 +1,274 @@
+2009-04-15  Todd Zullinger  <tmz at pobox.com>
+
+	* configure.ac: Bump version for 0.7.2 final
+
+2009-04-05  Christophe Fergeau  <cfergeau at mandriva.com>
+
+	* configure.ac: time for a rc2 since we had forgotten a few
+	interesting patches.
+
+2009-04-05  Christophe Fergeau  <cfergeau at mandriva.com>
+
+	Patch from: Javier Kohen:
+
+	* src/itdb_itunesdb.c: avoid O(N^2) behaviour in main tracklist
+	parsing.
+
+2009-04-05  Christophe Fergeau  <cfergeau at mandriva.com>
+
+	Patch from: Javier Kohen:
+
+	* src/itdb_itunesdb.c: avoid O(N^2) behaviour in playcount reading
+
+2009-04-05  Christophe Fergeau  <cfergeau at mandriva.com>
+
+	Patch from: Javier Kohen:
+
+	* src/itdb_itunesdb.c: rename playcount_get_next to
+	playcount_take_next which is a more descriptive name
+
+2009-04-05  Christophe Fergeau  <cfergeau at mandriva.com>
+
+	Patch from: Erik Hovland
+
+	* src/itdb_thumb.c: don't shadow itdb_thumb_to_pixbuf_at_size
+	parameter with a local variable.
+
+2009-04-04  Todd Zullinger  <tmzullinger at users.sourceforge.net>
+
+	* configure.ac: Bump version and soname for 0.7.2rc1
+
+2009-04-03  Todd Zullinger  <tmzullinger at users.sourceforge.net>
+
+	* docs/reference/libgpod-sections.txt
+	  docs/reference/tmpl/device.sgml
+	  src/itdb_device.c: Update documenation.  Add new
+	itdb_device_supports_{chapter_image,podcast} functions and
+	mark some other additions as private.
+
+	* po/de.po
+	  po/es.po
+	  po/fr.po
+	  po/he.po
+	  po/it.po
+	  po/ja.po
+	  po/libgpod.pot
+	  po/ro.po
+	  po/sv.po
+	  po/zh_CN.po: Update po files
+
+	* po/POTFILES.in: Add tools/ipod-time-sync.c
+
+2009-03-29  Christophe Fergeau  <cfergeau at mandriva.com>
+
+	* src/itdb_device.c: don't call tzset even when calling localtime_r
+	since we aren't interested in its side effects.
+
+2009-03-26  Christophe Fergeau  <cfergeau at mandriva.com>
+
+	* tools/ipod-scsi.c:
+	* tools/ipod-time-sync.c: add ipod time sync support using
+	information from the rockbox project. It's still preliminary.
+
+2009-03-22  Christophe Fergeau  <cfergeau at mandriva.com>
+
+	* src/itdb_device.c: add warning about itdb_set_mountpoint use,
+	describe model_number parameter of itdb_init_ipod
+	* src/itdb_itunesdb.c: add warning about itdb_device_read_sysinfo
+	and itdb_device_set_mountpoint use, explain when
+	itdb_device_get_ipod_info_table can be useful.
+	* doc/reference/libgpod-sections.txt: move around a few functions
+	(mainly itdb_init_ipod and itdb_device_*_sysinfo_*)
+
+2009-03-21  Christophe Fergeau  <cfergeau at mandriva.com>
+
+	Patch from: Andrew W. Nosenko  <andrew.nosenko at toatech.com>
+
+	Avoid using of the global variable 'timezone' in favor of struct
+	tm.tm_gmtoff (if available).
+
+	* src/itdb_device.c (get_local_timezone): Use struct tm.tm_gmtoff
+	if available (through localtime_r() or localtime(), depending on
+	the localtime_r() existence) if available and fallback to the
+	'timezone' or _timezone global variables if struct tm.tm_gmtoff
+	field is not available.
+
+	* configure.ac: Check for existence of localtime_r() function and
+	struct tm.tm_gmtoff field.
+
+	Avoid using of the global variable 'timezone' in favor of struct
+	tm.tm_gmtoff (if available).
+
+	* src/itdb_device.c (get_local_timezone): Use struct tm.tm_gmtoff
+	if available (through localtime_r() or localtime(), depending on
+	the localtime_r() existence) if available and fallback to the
+	'timezone' or _timezone global variables if struct tm.tm_gmtoff
+	field is not available.
+
+	* configure.ac: Check for existence of localtime_r() function and
+	struct tm.tm_gmtoff field.
+
+2009-03-21  Christophe Fergeau  <cfergeau at mandriva.com>
+
+	Patch from: Jorg Schuller
+
+	* src/itdb_itunesdb.c: simplify pos_comp, make get_playlist more
+	efficient
+
+2009-03-21  Christophe Fergeau  <cfergeau at mandriva.com>
+
+	* src/itdb_itunesdb.c: remove commented out code
+	(g_return_val_if_fail)
+
+2009-03-14  Christophe Fergeau  <cfergeau at mandriva.com>
+
+	* src/itdb_device.c: directly read firewire ID from SysInfoExtended
+	when it's available.
+
+2009-03-14  Christophe Fergeau  <cfergeau at mandriva.com>
+
+	* src/itdb.h
+	* src/itdb_device.c
+	* src/itdb_device.h: add itdb_device_supports_chapter_image method
+	to test if an iPod support chapter images or not.
+
+2009-03-14  Christophe Fergeau  <cfergeau at mandriva.com>
+
+	* src/itdb_device.c: factorize some code in legacy artwork
+	handling
+
+2009-03-14  Christophe Fergeau  <cfergeau at mandriva.com>
+
+	* src/itdb.h:
+	* src/itdb_device.c:
+	* src/itdb_sysinfo_extended_parser.c:
+	* src/itdb_sysinfo_extended_parser.h: add
+	itdb_device_supports_podcast method to test if an iPod supports
+	podcasts or not.
+
+2009-03-14  Jorg Schuler <jcsjcs at users.sourceforge.net>
+
+	* src/itdb_itunesdb.c
+	  src/itdb_private.h
+
+	  Implement reading of big/little endian integers/floats using
+	  references to the respective functions rather than if/then
+	  statements. Thanks to Javier Kohen for the patch.
+
+2009-03-01  Christophe Fergeau <cfergeau at mandriva.com>
+
+	* src/itdb_device.c: fix nano3g/ipod classic artwork information
+
+2009-02-28  Christophe Fergeau <cfergeau at mandriva.com>
+
+	* src/itdb_itunesdb.c: Set field at offset 0x70 in the mhbd to 2
+	        
+	If this field isn't set to 2, iTunes thinks databases written 
+	to the iPhone are corrupted
+
+2009-02-28  Javier Kohen <jkohen at users.sourceforge.net>
+
+	* src/itdb_itunesdb.c:
+	* src/itdb_private.h: avoid linked list scans in get_playlist/get_mhip.
+
+	Replaced code that scanned the linked list twice on each
+	insertion (once for sorting, once for finding the previous
+	insert position) by a single sort and scan at the end.
+	        
+	As a side-effect removed dependency of get_mhip on Itdb
+	structures (easier to unittest, etc.).
+
+2009-02-28  Javier Kohen <jkohen at users.sourceforge.net>
+
+	* src/db-artwork-parser: replace linear look-up of songs with
+	local hashtable.
+
+2009-02-09  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/itdb_itunesdb.c: fix crash when generating the album list
+	when a track has a NULL album. Thanks to Peter and Todd for
+	reporting that bug and pinpointing what was wrong.
+
+2009-01-31  Todd Zullinger  <tmzullinger at users.sourceforge.net>
+
+	* README.SysInfo: Add info on determining FirewireGUID on
+	FreeBSD. Also reformat the text to make the example commands
+	stand out more.
+
+2009-01-31  Todd Zullinger  <tmzullinger at users.sourceforge.net>
+
+	* configure.ac: Remove unused expanded_libdir definition. This
+	was only used when setting the hal callout dir, and is no
+	longer needed.
+
+2009-01-31  Todd Zullinger  <tmzullinger at users.sourceforge.net>
+
+	* Makefile.am, configure.ac, tools/Makefile.am,	TROUBLESHOOTING:
+	Improve the default hal callout path. The search path hal uses
+	for its callouts differs on various platforms. The new path
+	should work on more systems out of the box. The fdi file now
+	also defaults to a path more likely to work by default.
+
+2009-01-31  Todd Zullinger  <tmzullinger at users.sourceforge.net>
+
+	* bindings/python/Makefile.am, configure.ac:
+	Only use PYGOBJECT_{CFLAGS,LIBS} in bindings/python.  Thanks
+	to Frank Lichtenheld (fixes Debian bug #452829).
+
+2009-01-21  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/itdb_device.c: fix itdb_device_new prototype
+
+2009-01-21  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/itdb_device.c: itdb_device_get_checksum_type can be static
+
+2009-01-21  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/itdb_device.c: itdb_device_write_hash58 should only be called
+	on devices supporting this hash type, it's a programming error to
+	call it with something else
+
+2009-01-21  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/itdb_device.c: set the hashing scheme in
+	itdb_device_write_checksum instead of doing it in itdb_itunesdb,
+	allows more flexibility if we ever add different checksumming
+	methods
+
+2009-01-21  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/itdb_device.c:
+	* src/itdb_private.h: get rid of itdb_device_requires_checksum
+	which is now unused
+
+2009-01-21  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/itdb_device.c:
+	* src/itdb_device.h:
+	* src/itdb_itunesdb.c: move checksumming function from
+	itdb_itunesdb.c to itdb_device.c to make it easier to support
+	different checksumming methods depending on the ipod model
+
+2009-01-21  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/db-itunes-parser.h: add tons of new fields to struct MhbdHeader 
+
+2009-01-20  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/itdb_itunesdb.c: generate list of albums and write it in a
+	MHLA header in the iTunesDB
+	* src/itdb_private.h: store album list in FExport
+
+2009-01-20  Christophe Fergeau  <teuf at gnome.org>
+
+	* src/itdb_itunesdb.c: add new enum value for MHOD types found as
+	children of the MHLA header (list of albums)
+
 2009-01-18  Todd Zullinger  <tmzullinger at users.sourceforge.net>
 
+	* configure.ac: Bump version to 0.7.1SVN for further development
+
 	* configure.ac: Bump version for 0.7.0 final
 
 	* src/db-artwork-parser.c: Quiet artwork mhii_link warning

Modified: libgpod/branches/upstream/current/Makefile.am
===================================================================
--- libgpod/branches/upstream/current/Makefile.am	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/Makefile.am	2009-06-19 20:28:03 UTC (rev 384)
@@ -1,7 +1,9 @@
 SUBDIRS=src tools tests po m4 docs bindings 
 
 # build documentation when doing a distcheck.
-DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc
+DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc		\
+	--with-hal-callouts-dir="`pwd`/hal/scripts"	\
+	--with-hal-fdi-dir="`pwd`/hal/fdi"
 
 ACLOCAL_AMFLAGS = -I m4
 

Modified: libgpod/branches/upstream/current/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/Makefile.in	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/Makefile.in	2009-06-19 20:28:03 UTC (rev 384)
@@ -126,6 +126,7 @@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
 HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HALFDIDIR = @HALFDIDIR@
 HAL_CFLAGS = @HAL_CFLAGS@
 HAL_LIBS = @HAL_LIBS@
 HTML_DIR = @HTML_DIR@
@@ -274,7 +275,10 @@
 SUBDIRS = src tools tests po m4 docs bindings 
 
 # build documentation when doing a distcheck.
-DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc
+DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc		\
+	--with-hal-callouts-dir="`pwd`/hal/scripts"	\
+	--with-hal-fdi-dir="`pwd`/hal/fdi"
+
 pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = libgpod-1.0.pc
 EXTRA_DIST = \

Modified: libgpod/branches/upstream/current/NEWS
===================================================================
--- libgpod/branches/upstream/current/NEWS	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/NEWS	2009-06-19 20:28:03 UTC (rev 384)
@@ -1,3 +1,24 @@
+Overview of changes in libgpod 0.7.2
+====================================
+
+* Performance work (thanks a lot to Javier Kohen for his patches)
+
+* Add itdb_device_supports_podcast and itdb_device_supports_chapter_image
+  methods
+
+* Fix static iPod Classic/Nano 3G artwork formats
+
+* Change installation directory for the HAL callout in the hope that it
+  will work out of the box on more systems
+
+* BSD portability fixes (courtesy of Andrew Nosenko)
+
+* Write MHLA (list of albums) headers to iTunesDB
+
+* Small improvements for iPhone support though iPhone 3G are still
+  unsupported because we can't checksum the iPhone iTunesDB.
+
+
 Overview of changes in libgpod 0.7.0
 ====================================
 

Modified: libgpod/branches/upstream/current/README.SysInfo
===================================================================
--- libgpod/branches/upstream/current/README.SysInfo	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/README.SysInfo	2009-06-19 20:28:03 UTC (rev 384)
@@ -9,44 +9,57 @@
 installed before running configure/autogen.sh. If you built libgpod without
 them, run configure/make/make install after you install them.
 
-A hal callout and .fdi file will be built and installed. This will query an iPod
-when it is plugged in and save the SysInfoExtended file in the proper place.
-This should be entirely automatic. If you have trouble with this, see the
-TROUBLESHOOTING file for some hints.
+A hal callout and .fdi file will be built and installed. This will query an
+iPod when it is plugged in and save the SysInfoExtended file in the proper
+place. This should be entirely automatic. If you have trouble with this, see
+the TROUBLESHOOTING file for some hints.
 
 If you build with libsgutils but without hal, the next best method is mostly
-automatic. You should have an ipod-read-sysinfo-extended tool available. Run it
-with the iPod device path and the iPod mount point /mnt/ipod) as arguments. For
-example:
+automatic. You should have an ipod-read-sysinfo-extended tool available. Run
+it with the iPod device path and the iPod mount point /mnt/ipod) as arguments.
+For example:
 
     $ ipod-read-sysinfo-extended /dev/sda /mnt/ipod
 
-This may require root privileges. It reads an XML file from the iPod and writes
-it as /mnt/ipod/iPod_Control/Device/SysInfoExtended. More details on this method
-can be found at http://ipodlinux.org/Device_Information.
+This may require root privileges. It reads an XML file from the iPod and
+writes it as /mnt/ipod/iPod_Control/Device/SysInfoExtended. More details on
+this method can be found at http://ipodlinux.org/Device_Information.
 
-Having the SysInfoExtended file created by ipod-read-sysinfo-extended or the hal
-callout is enough for libgpod to figure out the iPod firewire id.
+Having the SysInfoExtended file created by ipod-read-sysinfo-extended or the
+hal callout is enough for libgpod to figure out the iPod firewire id.
 
-The last method requires more manual intervention. First, you need to get your
-firewire id manually. To do that, run "sudo lsusb -v | grep -i Serial" (without
-the "") with your iPod plugged in, this should print a 16 character long string
-like 00A1234567891231. For an iPod Touch, this number will be much longer than
-16 characters, the firewire ID is constituted by the first 16 characters.
-Once you have that number, create/edit /mnt/ipod/iPod_Control/Device/SysInfo 
-(if your iPod is mounted at /mnt/ipod). Add to that file the line below:
+The last method requires more manual intervention. First, you need to
+determine the firewire id of the iPod. To do that on Linux, plug in the iPod
+in and run (with root privileges):
+
+    $ lsusb -v | grep -i Serial
+
+This should print a 16 character long string like 00A1234567891231. For an
+iPod Touch, this number will be much longer than 16 characters, the firewire
+ID is constituted by the first 16 characters.
+
+On FreeBSD, there is a tool to get the serial number at:
+
+    http://50hz.ws/dev/getserial.c
+
+Once you have the serial number, edit /mnt/ipod/iPod_Control/Device/SysInfo,
+creating the file if it does not exist. (Replace /mnt/ipod with the path to
+where the iPod is mounted). Add a line like this to the SysInfo file:
+
 FirewireGuid: 0xffffffffffffffff
-(replace ffffffffffffffff with the string you obtained at the previous step
-and don't forget the trailing 0x before the string)
-Save that file, and you should be all set. Be careful when using apps which 
-lets you manually specify which iPod model you own, they may overwrite that 
-file when you do that. So if after doing that libgpod still seems to write 
-invalid content to the iPod, double-check the content of that SysInfo file to
-make sure the FirewireGuid line you added isn't gone. If that happens, readd it
-to the end of the file, and make sure libgpod rewrite the iPod content.
 
+Replace ffffffffffffffff with the serial number you obtained in the previous
+step. Don't forget the 0x before the string. After you add the FirewireGuid to
+the SysInfo file you need to rewrite the iTunesDB for the change to take
+effect. For example, add a new song or adjust the playcount of an existing
+song and save the changes in gtkpod.
 
+Be careful when using applications which let you manually specify the iPod
+model. They may overwrite the SysInfo file and undo the changes.
 
-Once that is done, if you compiled libgpod from source, you can test that 
-libgpod can find the firewire ID on your iPod by running 
-libgpod/tests/test-firewire-id /ipod/mount/point
+Finally, if you compiled libgpod from source, you can test that libgpod can
+find the firewire ID on the iPod using the test-firewire-id program in the
+tests/ dir of the libgpod source. For example:
+
+    $ cd ~/src/libgpod/tests
+    $ ./test-firewire-id /ipod/mount/point

Modified: libgpod/branches/upstream/current/TROUBLESHOOTING
===================================================================
--- libgpod/branches/upstream/current/TROUBLESHOOTING	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/TROUBLESHOOTING	2009-06-19 20:28:03 UTC (rev 384)
@@ -102,14 +102,8 @@
 when it is plugged in and save the SysInfoExtended file in the proper place.
 This should be completely automatic. However, for this to work, the callout must
 be installed in hal's callout path. $libdir/hal/scripts is the most portable
-location (hal's $libdir can be found using pkg-config). If you are building
-libgpod from source with the default $prefix (/usr/local), you need to take care
-to install the callout and .fdi file in the proper locations. The easiest way to
-do this at the moment is by passing the locations to the make command. For
-example:
+location (hal's $libdir can be found using pkg-config). If the default paths for
+the callout or fdi file are not detected properly, you can specify the proper
+locations manually, via configure:
 
-    $ ./configure && make
-    ...
-    $ make haldir="$(pkg-config --variable libdir hal)/hal/scripts" \
-           fdidir="$(pkg-config --variable prefix hal)/share/hal/fdi" \
-           install
+    $ ./configure --with-hal-callouts-dir=DIR --with-hal-fdi-dir=DIR

Modified: libgpod/branches/upstream/current/bindings/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/bindings/Makefile.in	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/bindings/Makefile.in	2009-06-19 20:28:03 UTC (rev 384)
@@ -100,6 +100,7 @@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
 HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HALFDIDIR = @HALFDIDIR@
 HAL_CFLAGS = @HAL_CFLAGS@
 HAL_LIBS = @HAL_LIBS@
 HTML_DIR = @HTML_DIR@

Modified: libgpod/branches/upstream/current/bindings/python/Makefile.am
===================================================================
--- libgpod/branches/upstream/current/bindings/python/Makefile.am	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/bindings/python/Makefile.am	2009-06-19 20:28:03 UTC (rev 384)
@@ -40,9 +40,9 @@
 nodist_gpod_PYTHON = gpod.py
 gpod_LTLIBRARIES = _gpod.la
 nodist__gpod_la_SOURCES = gpod_wrap.c
-_gpod_la_CPPFLAGS = $(PYTHON_INCLUDES) $(LIBGPOD_CFLAGS) $(INCLUDES)
+_gpod_la_CPPFLAGS = $(PYTHON_INCLUDES) $(LIBGPOD_CFLAGS) $(PYGOBJECT_CFLAGS) $(INCLUDES)
 _gpod_la_LDFLAGS = -module -avoid-version
-_gpod_la_LIBADD = $(LIBGPOD_LIBS) $(top_builddir)/src/libgpod.la
+_gpod_la_LIBADD = $(LIBGPOD_LIBS) $(PYGOBJECT_LIBS) $(top_builddir)/src/libgpod.la
 
 gpod_doc.i: $(srcdir)/gpod_doc.i.in $(srcdir)/gtkdoc-to-swig.xsl
 	cat $< > $@

Modified: libgpod/branches/upstream/current/bindings/python/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/bindings/python/Makefile.in	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/bindings/python/Makefile.in	2009-06-19 20:28:03 UTC (rev 384)
@@ -57,6 +57,7 @@
 LTLIBRARIES = $(gpod_LTLIBRARIES)
 am__DEPENDENCIES_1 =
 @HAVE_PYTHON_TRUE at _gpod_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \
+ at HAVE_PYTHON_TRUE@	$(am__DEPENDENCIES_1) \
 @HAVE_PYTHON_TRUE@	$(top_builddir)/src/libgpod.la
 @HAVE_PYTHON_TRUE at nodist__gpod_la_OBJECTS = _gpod_la-gpod_wrap.lo
 _gpod_la_OBJECTS = $(nodist__gpod_la_OBJECTS)
@@ -138,6 +139,7 @@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
 HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HALFDIDIR = @HALFDIDIR@
 HAL_CFLAGS = @HAL_CFLAGS@
 HAL_LIBS = @HAL_LIBS@
 HTML_DIR = @HTML_DIR@
@@ -313,9 +315,9 @@
 @HAVE_PYTHON_TRUE at nodist_gpod_PYTHON = gpod.py
 @HAVE_PYTHON_TRUE at gpod_LTLIBRARIES = _gpod.la
 @HAVE_PYTHON_TRUE at nodist__gpod_la_SOURCES = gpod_wrap.c
- at HAVE_PYTHON_TRUE@_gpod_la_CPPFLAGS = $(PYTHON_INCLUDES) $(LIBGPOD_CFLAGS) $(INCLUDES)
+ at HAVE_PYTHON_TRUE@_gpod_la_CPPFLAGS = $(PYTHON_INCLUDES) $(LIBGPOD_CFLAGS) $(PYGOBJECT_CFLAGS) $(INCLUDES)
 @HAVE_PYTHON_TRUE at _gpod_la_LDFLAGS = -module -avoid-version
- at HAVE_PYTHON_TRUE@_gpod_la_LIBADD = $(LIBGPOD_LIBS) $(top_builddir)/src/libgpod.la
+ at HAVE_PYTHON_TRUE@_gpod_la_LIBADD = $(LIBGPOD_LIBS) $(PYGOBJECT_LIBS) $(top_builddir)/src/libgpod.la
 all: $(BUILT_SOURCES)
 	$(MAKE) $(AM_MAKEFLAGS) all-recursive
 

Modified: libgpod/branches/upstream/current/bindings/python/examples/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/bindings/python/examples/Makefile.in	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/bindings/python/examples/Makefile.in	2009-06-19 20:28:03 UTC (rev 384)
@@ -88,6 +88,7 @@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
 HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HALFDIDIR = @HALFDIDIR@
 HAL_CFLAGS = @HAL_CFLAGS@
 HAL_LIBS = @HAL_LIBS@
 HTML_DIR = @HTML_DIR@

Modified: libgpod/branches/upstream/current/bindings/python/tests/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/bindings/python/tests/Makefile.in	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/bindings/python/tests/Makefile.in	2009-06-19 20:28:03 UTC (rev 384)
@@ -88,6 +88,7 @@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
 HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HALFDIDIR = @HALFDIDIR@
 HAL_CFLAGS = @HAL_CFLAGS@
 HAL_LIBS = @HAL_LIBS@
 HTML_DIR = @HTML_DIR@

Modified: libgpod/branches/upstream/current/config.h.in
===================================================================
--- libgpod/branches/upstream/current/config.h.in	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/config.h.in	2009-06-19 20:28:03 UTC (rev 384)
@@ -37,6 +37,9 @@
 /* Define to 1 if you have the <locale.h> header file. */
 #undef HAVE_LOCALE_H
 
+/* Define to 1 if you have the `localtime_r' function. */
+#undef HAVE_LOCALTIME_R
+
 /* Define to 1 if you have the <memory.h> header file. */
 #undef HAVE_MEMORY_H
 
@@ -56,6 +59,9 @@
 /* Define to 1 if you have the <string.h> header file. */
 #undef HAVE_STRING_H
 
+/* Define to 1 if `tm_gmtoff' is member of `struct tm'. */
+#undef HAVE_STRUCT_TM_TM_GMTOFF
+
 /* Define to 1 if you have the <sys/stat.h> header file. */
 #undef HAVE_SYS_STAT_H
 

Modified: libgpod/branches/upstream/current/configure
===================================================================
--- libgpod/branches/upstream/current/configure	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/configure	2009-06-19 20:28:03 UTC (rev 384)
@@ -918,6 +918,7 @@
 HAVE_SGUTILS_TRUE
 HAVE_SGUTILS_FALSE
 HALCALLOUTSDIR
+HALFDIDIR
 HAL_CFLAGS
 HAL_LIBS
 HAVE_HAL_TRUE
@@ -1611,6 +1612,8 @@
   --with-hal-callouts-dir=DIR
                           Directory where HAL expects its callout scripts to
                           be located
+  --with-hal-fdi-dir=DIR  Directory where HAL expects its fdi files to be
+                          located
   --with-html-dir=PATH    path to installed docs
   --with-python=PATH      build python bindings [default=yes]
 
@@ -2086,7 +2089,7 @@
 #
 LIBGPOD_MAJOR_VERSION=0
 LIBGPOD_MINOR_VERSION=7
-LIBGPOD_MICRO_VERSION=0
+LIBGPOD_MICRO_VERSION=2
 # If you need a modifier for the version number.
 # Normally empty, but can be used to make "fixup" releases.
 LIBGPOD_EXTRAVERSION=
@@ -2098,7 +2101,7 @@
 #                 changes to the signature and the semantic)
 #  ? :+1 : ?   == just internal changes
 # CURRENT : REVISION : AGE
-LIBGPOD_SO_VERSION=4:0:0
+LIBGPOD_SO_VERSION=5:0:1
 
 
 
@@ -5607,7 +5610,7 @@
   ;;
 *-*-irix6*)
   # Find out which ABI we are using.
-  echo '#line 5610 "configure"' > conftest.$ac_ext
+  echo '#line 5613 "configure"' > conftest.$ac_ext
   if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
@@ -7468,11 +7471,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7471: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7474: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7475: \$? = $ac_status" >&5
+   echo "$as_me:7478: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -7758,11 +7761,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7761: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7764: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:7765: \$? = $ac_status" >&5
+   echo "$as_me:7768: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -7862,11 +7865,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:7865: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:7868: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:7869: \$? = $ac_status" >&5
+   echo "$as_me:7872: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -10213,7 +10216,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<EOF
-#line 10216 "configure"
+#line 10219 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -10313,7 +10316,7 @@
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<EOF
-#line 10316 "configure"
+#line 10319 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -12733,11 +12736,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:12736: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:12739: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:12740: \$? = $ac_status" >&5
+   echo "$as_me:12743: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -12837,11 +12840,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:12840: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:12843: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:12844: \$? = $ac_status" >&5
+   echo "$as_me:12847: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -14401,11 +14404,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:14404: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:14407: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:14408: \$? = $ac_status" >&5
+   echo "$as_me:14411: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -14505,11 +14508,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:14508: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:14511: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:14512: \$? = $ac_status" >&5
+   echo "$as_me:14515: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -16694,11 +16697,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:16697: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:16700: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:16701: \$? = $ac_status" >&5
+   echo "$as_me:16704: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -16984,11 +16987,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:16987: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:16990: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>conftest.err)
    ac_status=$?
    cat conftest.err >&5
-   echo "$as_me:16991: \$? = $ac_status" >&5
+   echo "$as_me:16994: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s "$ac_outfile"; then
      # The compiler can only warn and ignore the option if not recognized
      # So say no if there are warnings other than the usual output.
@@ -17088,11 +17091,11 @@
    -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
    -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
    -e 's:$: $lt_compiler_flag:'`
-   (eval echo "\"\$as_me:17091: $lt_compile\"" >&5)
+   (eval echo "\"\$as_me:17094: $lt_compile\"" >&5)
    (eval "$lt_compile" 2>out/conftest.err)
    ac_status=$?
    cat out/conftest.err >&5
-   echo "$as_me:17095: \$? = $ac_status" >&5
+   echo "$as_me:17098: \$? = $ac_status" >&5
    if (exit $ac_status) && test -s out/conftest2.$ac_objext
    then
      # The compiler can only warn and ignore the option if not recognized
@@ -20211,7 +20214,205 @@
 
 
 
+for ac_func in localtime_r
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+{ echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
+if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
+   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
+#define $ac_func innocuous_$ac_func
 
+/* System header to define __stub macros and hopefully few prototypes,
+    which can conflict with char $ac_func (); below.
+    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+    <limits.h> exists even on freestanding compilers.  */
+
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+
+#undef $ac_func
+
+/* Override any GCC internal prototype to avoid an error.
+   Use char because int might match the return type of a GCC
+   builtin and then its argument prototype would still apply.  */
+#ifdef __cplusplus
+extern "C"
+#endif
+char $ac_func ();
+/* The GNU C library defines this for functions which it implements
+    to always fail with ENOSYS.  Some functions are actually named
+    something starting with __ and the normal name is an alias.  */
+#if defined __stub_$ac_func || defined __stub___$ac_func
+choke me
+#endif
+
+int
+main ()
+{
+return $ac_func ();
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_link") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest$ac_exeext &&
+       $as_test_x conftest$ac_exeext; then
+  eval "$as_ac_var=yes"
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	eval "$as_ac_var=no"
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
+      conftest$ac_exeext conftest.$ac_ext
+fi
+ac_res=`eval echo '${'$as_ac_var'}'`
+	       { echo "$as_me:$LINENO: result: $ac_res" >&5
+echo "${ECHO_T}$ac_res" >&6; }
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+  cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+done
+
+{ echo "$as_me:$LINENO: checking for struct tm.tm_gmtoff" >&5
+echo $ECHO_N "checking for struct tm.tm_gmtoff... $ECHO_C" >&6; }
+if test "${ac_cv_member_struct_tm_tm_gmtoff+set}" = set; then
+  echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+  cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <time.h>
+
+int
+main ()
+{
+static struct tm ac_aggr;
+if (ac_aggr.tm_gmtoff)
+return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_compile") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest.$ac_objext; then
+  ac_cv_member_struct_tm_tm_gmtoff=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h.  */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h.  */
+#include <time.h>
+
+int
+main ()
+{
+static struct tm ac_aggr;
+if (sizeof ac_aggr.tm_gmtoff)
+return 0;
+  ;
+  return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (ac_try="$ac_compile"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
+  (eval "$ac_compile") 2>conftest.er1
+  ac_status=$?
+  grep -v '^ *+' conftest.er1 >conftest.err
+  rm -f conftest.er1
+  cat conftest.err >&5
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
+  (exit $ac_status); } && {
+	 test -z "$ac_c_werror_flag" ||
+	 test ! -s conftest.err
+       } && test -s conftest.$ac_objext; then
+  ac_cv_member_struct_tm_tm_gmtoff=yes
+else
+  echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+	ac_cv_member_struct_tm_tm_gmtoff=no
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+{ echo "$as_me:$LINENO: result: $ac_cv_member_struct_tm_tm_gmtoff" >&5
+echo "${ECHO_T}$ac_cv_member_struct_tm_tm_gmtoff" >&6; }
+if test $ac_cv_member_struct_tm_tm_gmtoff = yes; then
+
+cat >>confdefs.h <<_ACEOF
+#define HAVE_STRUCT_TM_TM_GMTOFF 1
+_ACEOF
+
+
+fi
+
+
+
 if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
 	if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
@@ -20438,21 +20639,8 @@
 	:
 fi
 
-expanded_libdir=`(
-    case $prefix in
-        NONE) prefix=$ac_default_prefix ;;
-        *) ;;
-    esac
-    case $exec_prefix in
-        NONE) exec_prefix=$prefix ;;
-        *) ;;
-    esac
-    eval echo $libdir
-)`
 
 
-
-
 # Check whether --with-internal-gchecksum was given.
 if test "${with_internal_gchecksum+set}" = set; then
   withval=$with_internal_gchecksum;
@@ -20693,17 +20881,30 @@
 fi
 
 
+hal_callouts_dir="`$PKG_CONFIG --variable libdir hal`/hal/scripts"
 
 # Check whether --with-hal_callouts_dir was given.
 if test "${with_hal_callouts_dir+set}" = set; then
   withval=$with_hal_callouts_dir;
 else
-  with_hal_callouts_dir="${expanded_libdir}/hal"
+  with_hal_callouts_dir="$hal_callouts_dir"
 fi
 
 HALCALLOUTSDIR="$with_hal_callouts_dir"
 
 
+hal_fdi_dir="`$PKG_CONFIG --variable prefix hal`/share/hal/fdi"
+
+# Check whether --with-hal_fdi_dir was given.
+if test "${with_hal_fdi_dir+set}" = set; then
+  withval=$with_hal_fdi_dir;
+else
+  with_hal_fdi_dir="$hal_fdi_dir"
+fi
+
+HALFDIDIR="$with_hal_fdi_dir"
+
+
 if test "x$with_hal" != "xno"; then
 
 pkg_failed=no
@@ -21207,8 +21408,6 @@
 #define HAVE_PYGOBJECT 1
 _ACEOF
 
-   LIBGPOD_CFLAGS="$LIBGPOD_CFLAGS $PYGOBJECT_CFLAGS"
-   LIBGPOD_LIBS="$LIBGPOD_LIBS $PYGOBJECT_LIBS"
 else
    have_pygobject=no
 fi
@@ -21221,6 +21420,8 @@
 fi
 
 
+
+
 ALL_LINGUAS="de es fr he it ja ro sv zh_CN"
 
 GETTEXT_PACKAGE=libgpod
@@ -24378,6 +24579,7 @@
 HAVE_SGUTILS_TRUE!$HAVE_SGUTILS_TRUE$ac_delim
 HAVE_SGUTILS_FALSE!$HAVE_SGUTILS_FALSE$ac_delim
 HALCALLOUTSDIR!$HALCALLOUTSDIR$ac_delim
+HALFDIDIR!$HALFDIDIR$ac_delim
 HAL_CFLAGS!$HAL_CFLAGS$ac_delim
 HAL_LIBS!$HAL_LIBS$ac_delim
 HAVE_HAL_TRUE!$HAVE_HAL_TRUE$ac_delim
@@ -24421,7 +24623,6 @@
 PYTHON_VERSION!$PYTHON_VERSION$ac_delim
 PYTHON_PREFIX!$PYTHON_PREFIX$ac_delim
 PYTHON_EXEC_PREFIX!$PYTHON_EXEC_PREFIX$ac_delim
-PYTHON_PLATFORM!$PYTHON_PLATFORM$ac_delim
 _ACEOF
 
   if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
@@ -24463,6 +24664,7 @@
 ac_delim='%!_!# '
 for ac_last_try in false false false false false :; do
   cat >conf$$subs.sed <<_ACEOF
+PYTHON_PLATFORM!$PYTHON_PLATFORM$ac_delim
 pythondir!$pythondir$ac_delim
 pkgpythondir!$pkgpythondir$ac_delim
 pyexecdir!$pyexecdir$ac_delim
@@ -24477,7 +24679,7 @@
 LTLIBOBJS!$LTLIBOBJS$ac_delim
 _ACEOF
 
-  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 12; then
+  if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 13; then
     break
   elif $ac_last_try; then
     { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5

Modified: libgpod/branches/upstream/current/configure.ac
===================================================================
--- libgpod/branches/upstream/current/configure.ac	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/configure.ac	2009-06-19 20:28:03 UTC (rev 384)
@@ -11,7 +11,7 @@
 #
 LIBGPOD_MAJOR_VERSION=0
 LIBGPOD_MINOR_VERSION=7
-LIBGPOD_MICRO_VERSION=0
+LIBGPOD_MICRO_VERSION=2
 # If you need a modifier for the version number. 
 # Normally empty, but can be used to make "fixup" releases.
 LIBGPOD_EXTRAVERSION=
@@ -24,7 +24,7 @@
 #                 changes to the signature and the semantic)
 #  ? :+1 : ?   == just internal changes
 # CURRENT : REVISION : AGE
-LIBGPOD_SO_VERSION=4:0:0
+LIBGPOD_SO_VERSION=5:0:1
 
 AC_SUBST(LIBGPOD_SO_VERSION)
 AC_SUBST(LIBGPOD_MAJOR_VERSION)
@@ -56,27 +56,11 @@
 AC_PROG_MAKE_SET
 AC_PROG_INTLTOOL([0.21])
 
+AC_CHECK_FUNCS([localtime_r])
+AC_CHECK_MEMBERS([struct tm.tm_gmtoff],,,[#include <time.h>])
 PKG_CHECK_MODULES(LIBGPOD, glib-2.0 >= 2.8.0 gobject-2.0)
 
 dnl **************************************************
-dnl * expand $libdir 
-dnl * by default, it looks like ${prefix}/lib
-dnl * we want to expand prefix
-dnl **************************************************
-expanded_libdir=`(
-    case $prefix in 
-        NONE) prefix=$ac_default_prefix ;; 
-        *) ;; 
-    esac
-    case $exec_prefix in 
-        NONE) exec_prefix=$prefix ;; 
-        *) ;; 
-    esac
-    eval echo $libdir
-)`
-
-
-dnl **************************************************
 dnl we've copied gchecksum from glib 2.16. Only use the
 dnl copy if the version of glib on the system does not
 dnl provide it.
@@ -117,12 +101,20 @@
 AC_ARG_WITH(hal, AC_HELP_STRING([--without-hal],
         [Disable HAL support]))
 
+hal_callouts_dir="`$PKG_CONFIG --variable libdir hal`/hal/scripts"
 AC_ARG_WITH(hal_callouts_dir, AC_HELP_STRING([--with-hal-callouts-dir=DIR],
-	[Directory where HAL expects its callout scripts to be located]), , 
-	with_hal_callouts_dir="${expanded_libdir}/hal")
+	[Directory where HAL expects its callout scripts to be located]),,
+	with_hal_callouts_dir="$hal_callouts_dir")
 HALCALLOUTSDIR="$with_hal_callouts_dir"
 AC_SUBST(HALCALLOUTSDIR)
 
+hal_fdi_dir="`$PKG_CONFIG --variable prefix hal`/share/hal/fdi"
+AC_ARG_WITH(hal_fdi_dir, AC_HELP_STRING([--with-hal-fdi-dir=DIR],
+	[Directory where HAL expects its fdi files to be located]),,
+	with_hal_fdi_dir="$hal_fdi_dir")
+HALFDIDIR="$with_hal_fdi_dir"
+AC_SUBST(HALFDIDIR)
+
 if test "x$with_hal" != "xno"; then
   PKG_CHECK_MODULES(HAL, hal >= 0.5 hal < 0.6, enable_hal=yes, enable_hal=no)
   if test "x$enable_hal" != "xyes" -a "x$with_hal" = "xyes"; then
@@ -212,12 +204,12 @@
 fi
 if test x"$have_pygobject" = xyes; then
    AC_DEFINE_UNQUOTED(HAVE_PYGOBJECT, 1)
-   LIBGPOD_CFLAGS="$LIBGPOD_CFLAGS $PYGOBJECT_CFLAGS"
-   LIBGPOD_LIBS="$LIBGPOD_LIBS $PYGOBJECT_LIBS"
 else
    have_pygobject=no
 fi
 AM_CONDITIONAL(HAVE_PYGOBJECT, test x"$have_pygobject" = xyes)
+AC_SUBST(PYGOBJECT_CFLAGS)
+AC_SUBST(PYGOBJECT_LIBS)
 
 dnl **************************************************
 dnl * internationalization support

Modified: libgpod/branches/upstream/current/docs/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/docs/Makefile.in	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/Makefile.in	2009-06-19 20:28:03 UTC (rev 384)
@@ -100,6 +100,7 @@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
 HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HALFDIDIR = @HALFDIDIR@
 HAL_CFLAGS = @HAL_CFLAGS@
 HAL_LIBS = @HAL_LIBS@
 HTML_DIR = @HTML_DIR@

Modified: libgpod/branches/upstream/current/docs/reference/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/docs/reference/Makefile.in	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/Makefile.in	2009-06-19 20:28:03 UTC (rev 384)
@@ -95,6 +95,7 @@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
 HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HALFDIDIR = @HALFDIDIR@
 HAL_CFLAGS = @HAL_CFLAGS@
 HAL_LIBS = @HAL_LIBS@
 HTML_DIR = @HTML_DIR@

Modified: libgpod/branches/upstream/current/docs/reference/html/ch01.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/ch01.html	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/html/ch01.html	2009-06-19 20:28:03 UTC (rev 384)
@@ -24,7 +24,7 @@
 </tr></table>
 <div class="chapter" lang="en">
 <div class="titlepage"><div><div><h2 class="title">
-<a name="id2734640"></a>iPod database components</h2></div></div></div>
+<a name="id2629782"></a>iPod database components</h2></div></div></div>
 <div class="toc"><dl>
 <dt>
 <span class="refentrytitle"><a href="libgpod-Tracks.html">Tracks</a></span><span class="refpurpose"> &#8212; Data structure to store metadata about an iPod track</span>

Modified: libgpod/branches/upstream/current/docs/reference/html/index.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/index.html	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/html/index.html	2009-06-19 20:28:03 UTC (rev 384)
@@ -35,10 +35,10 @@
 	&#160;&#160;</p></div></div>
 </div>
 </div></div>
-<div><p class="releaseinfo">for libgpod <span>0.7.0</span></p></div>
+<div><p class="releaseinfo">for libgpod <span>0.7.2</span></p></div>
 <div><p class="copyright">Copyright &#169; 2006-2008 Christophe Fergeau</p></div>
 <div><div class="legalnotice">
-<a name="id2740084"></a><p>Permission is granted to copy, distribute and/or modify
+<a name="id2635226"></a><p>Permission is granted to copy, distribute and/or modify
       this document under the terms of the <em class="citetitle">GNU Free
       Documentation License</em>, Version 1.1 or any later
       version published by the Free Software Foundation with no

Modified: libgpod/branches/upstream/current/docs/reference/html/index.sgml
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/index.sgml	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/html/index.sgml	2009-06-19 20:28:03 UTC (rev 384)
@@ -12,6 +12,7 @@
 <ANCHOR id="itdb-write" href="libgpod/libgpod-The-Itdb-iTunesDB-structure.html#itdb-write">
 <ANCHOR id="itdb-set-mountpoint" href="libgpod/libgpod-The-Itdb-iTunesDB-structure.html#itdb-set-mountpoint">
 <ANCHOR id="itdb-get-mountpoint" href="libgpod/libgpod-The-Itdb-iTunesDB-structure.html#itdb-get-mountpoint">
+<ANCHOR id="itdb-init-ipod" href="libgpod/libgpod-The-Itdb-iTunesDB-structure.html#itdb-init-ipod">
 <ANCHOR id="itdb-tracks-number" href="libgpod/libgpod-The-Itdb-iTunesDB-structure.html#itdb-tracks-number">
 <ANCHOR id="itdb-tracks-number-nontransferred" href="libgpod/libgpod-The-Itdb-iTunesDB-structure.html#itdb-tracks-number-nontransferred">
 <ANCHOR id="itdb-playlists-number" href="libgpod/libgpod-The-Itdb-iTunesDB-structure.html#itdb-playlists-number">
@@ -275,15 +276,13 @@
 <ANCHOR id="itdb-device-new" href="libgpod/libgpod-Device.html#itdb-device-new">
 <ANCHOR id="itdb-device-free" href="libgpod/libgpod-Device.html#itdb-device-free">
 <ANCHOR id="itdb-device-set-mountpoint" href="libgpod/libgpod-Device.html#itdb-device-set-mountpoint">
-<ANCHOR id="itdb-device-read-sysinfo" href="libgpod/libgpod-Device.html#itdb-device-read-sysinfo">
-<ANCHOR id="itdb-device-get-sysinfo" href="libgpod/libgpod-Device.html#itdb-device-get-sysinfo">
-<ANCHOR id="itdb-device-set-sysinfo" href="libgpod/libgpod-Device.html#itdb-device-set-sysinfo">
-<ANCHOR id="itdb-device-write-sysinfo" href="libgpod/libgpod-Device.html#itdb-device-write-sysinfo">
-<ANCHOR id="Itdb-IpodInfo" href="libgpod/libgpod-Device.html#Itdb-IpodInfo">
-<ANCHOR id="itdb-device-get-ipod-info" href="libgpod/libgpod-Device.html#itdb-device-get-ipod-info">
 <ANCHOR id="itdb-device-supports-artwork" href="libgpod/libgpod-Device.html#itdb-device-supports-artwork">
+<ANCHOR id="itdb-device-supports-chapter-image" href="libgpod/libgpod-Device.html#itdb-device-supports-chapter-image">
 <ANCHOR id="itdb-device-supports-photo" href="libgpod/libgpod-Device.html#itdb-device-supports-photo">
+<ANCHOR id="itdb-device-supports-podcast" href="libgpod/libgpod-Device.html#itdb-device-supports-podcast">
 <ANCHOR id="itdb-device-supports-video" href="libgpod/libgpod-Device.html#itdb-device-supports-video">
+<ANCHOR id="Itdb-IpodInfo" href="libgpod/libgpod-Device.html#Itdb-IpodInfo">
+<ANCHOR id="itdb-device-get-ipod-info" href="libgpod/libgpod-Device.html#itdb-device-get-ipod-info">
 <ANCHOR id="itdb-info-get-ipod-info-table" href="libgpod/libgpod-Device.html#itdb-info-get-ipod-info-table">
 <ANCHOR id="Itdb-IpodGeneration" href="libgpod/libgpod-Device.html#Itdb-IpodGeneration">
 <ANCHOR id="ITDB-IPOD-GENERATION-UNKNOWN:CAPS" href="libgpod/libgpod-Device.html#ITDB-IPOD-GENERATION-UNKNOWN:CAPS">
@@ -348,8 +347,11 @@
 <ANCHOR id="ITDB-IPOD-MODEL-CLASSIC-BLACK:CAPS" href="libgpod/libgpod-Device.html#ITDB-IPOD-MODEL-CLASSIC-BLACK:CAPS">
 <ANCHOR id="ITDB-IPOD-MODEL-TOUCH-BLACK:CAPS" href="libgpod/libgpod-Device.html#ITDB-IPOD-MODEL-TOUCH-BLACK:CAPS">
 <ANCHOR id="itdb-info-get-ipod-model-name-string" href="libgpod/libgpod-Device.html#itdb-info-get-ipod-model-name-string">
-<ANCHOR id="itdb-init-ipod" href="libgpod/libgpod-Device.html#itdb-init-ipod">
 <ANCHOR id="Itdb-ArtworkFormat" href="libgpod/libgpod-Device.html#Itdb-ArtworkFormat">
+<ANCHOR id="itdb-device-read-sysinfo" href="libgpod/libgpod-Device.html#itdb-device-read-sysinfo">
+<ANCHOR id="itdb-device-get-sysinfo" href="libgpod/libgpod-Device.html#itdb-device-get-sysinfo">
+<ANCHOR id="itdb-device-set-sysinfo" href="libgpod/libgpod-Device.html#itdb-device-set-sysinfo">
+<ANCHOR id="itdb-device-write-sysinfo" href="libgpod/libgpod-Device.html#itdb-device-write-sysinfo">
 <ANCHOR id="libgpod-Photo-database" href="libgpod/libgpod-Photo-database.html">
 <ANCHOR id="Itdb-PhotoDB" href="libgpod/libgpod-Photo-database.html#Itdb-PhotoDB">
 <ANCHOR id="itdb-photodb-create" href="libgpod/libgpod-Photo-database.html#itdb-photodb-create">

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-Artwork.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-Artwork.html	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-Artwork.html	2009-06-19 20:28:03 UTC (rev 384)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="libgpod-Chapter-Data.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2795129" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2715714" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2809475" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2733529" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-Artwork"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2795129"></a><span class="refentrytitle">Artwork</span>
+<a name="id2715714"></a><span class="refentrytitle">Artwork</span>
 </h2>
 <p>Artwork &#8212; Data structure to store iPod artwork (album covers)</p>
 </td>
@@ -120,7 +120,7 @@
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2809475"></a><h2>Description</h2>
+<a name="id2733529"></a><h2>Description</h2>
 <p>
 These functions and structures are for adding, changing, and removing
 album/track artwork.  For working with photos, see the
@@ -128,11 +128,11 @@
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2839616"></a><h2>Details</h2>
+<a name="id2733553"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2839627"></a><h3>
+<a name="id2735063"></a><h3>
 <a name="Itdb-Artwork"></a>Itdb_Artwork</h3>
-<a class="indexterm" name="id2839642"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2735078"></a><pre class="programlisting">typedef struct {
     Itdb_Thumb *thumbnail;
     guint32 id;
     guint64 dbid;
@@ -284,9 +284,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2839036"></a><h3>
+<a name="id2734467"></a><h3>
 <a name="itdb-artwork-new"></a>itdb_artwork_new ()</h3>
-<a class="indexterm" name="id2839051"></a><pre class="programlisting"><a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_artwork_new                    (void);</pre>
+<a class="indexterm" name="id2734482"></a><pre class="programlisting"><a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_artwork_new                    (void);</pre>
 <p>
 Creates a new <a class="link" href="libgpod-Artwork.html#Itdb-Artwork"><span class="type">Itdb_Artwork</span></a></p>
 <p>
@@ -307,9 +307,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2839121"></a><h3>
+<a name="id2734552"></a><h3>
 <a name="itdb-artwork-duplicate"></a>itdb_artwork_duplicate ()</h3>
-<a class="indexterm" name="id2839135"></a><pre class="programlisting"><a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_artwork_duplicate              (<a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork);</pre>
+<a class="indexterm" name="id2734566"></a><pre class="programlisting"><a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_artwork_duplicate              (<a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork);</pre>
 <p>
 Duplicates <em class="parameter"><code>artwork</code></em></p>
 <p>
@@ -336,9 +336,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2839221"></a><h3>
+<a name="id2734652"></a><h3>
 <a name="itdb-artwork-free"></a>itdb_artwork_free ()</h3>
-<a class="indexterm" name="id2839235"></a><pre class="programlisting">void                itdb_artwork_free                   (<a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork);</pre>
+<a class="indexterm" name="id2734666"></a><pre class="programlisting">void                itdb_artwork_free                   (<a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork);</pre>
 <p>
 Frees memory used by <em class="parameter"><code>artwork</code></em></p>
 <p>
@@ -357,9 +357,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2839304"></a><h3>
+<a name="id2734735"></a><h3>
 <a name="itdb-artwork-get-pixbuf"></a>itdb_artwork_get_pixbuf ()</h3>
-<a class="indexterm" name="id2839317"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2734748"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
 >gpointer</a>            itdb_artwork_get_pixbuf             (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
                                                          <a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
@@ -421,9 +421,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2839491"></a><h3>
+<a name="id2734922"></a><h3>
 <a name="itdb-artwork-set-thumbnail"></a>itdb_artwork_set_thumbnail ()</h3>
-<a class="indexterm" name="id2839505"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2734936"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_artwork_set_thumbnail          (<a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
                                                          const <a
@@ -487,9 +487,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2847934"></a><h3>
+<a name="id2743315"></a><h3>
 <a name="itdb-artwork-set-thumbnail-from-data"></a>itdb_artwork_set_thumbnail_from_data ()</h3>
-<a class="indexterm" name="id2847947"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2743327"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_artwork_set_thumbnail_from_data
                                                         (<a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
@@ -562,9 +562,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2848156"></a><h3>
+<a name="id2743536"></a><h3>
 <a name="itdb-artwork-set-thumbnail-from-pixbuf"></a>itdb_artwork_set_thumbnail_from_pixbuf ()</h3>
-<a class="indexterm" name="id2848170"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2743551"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_artwork_set_thumbnail_from_pixbuf
                                                         (<a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork,
@@ -631,9 +631,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2848382"></a><h3>
+<a name="id2743763"></a><h3>
 <a name="itdb-artwork-remove-thumbnails"></a>itdb_artwork_remove_thumbnails ()</h3>
-<a class="indexterm" name="id2848396"></a><pre class="programlisting">void                itdb_artwork_remove_thumbnails      (<a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork);</pre>
+<a class="indexterm" name="id2743777"></a><pre class="programlisting">void                itdb_artwork_remove_thumbnails      (<a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *artwork);</pre>
 <p>
 Removes all thumbnails from <em class="parameter"><code>artwork</code></em></p>
 <p>
@@ -652,9 +652,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2848458"></a><h3>
+<a name="id2743839"></a><h3>
 <a name="Itdb-Thumb"></a>Itdb_Thumb</h3>
-<a class="indexterm" name="id2848471"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2743851"></a><pre class="programlisting">typedef struct {
     ItdbThumbDataType data_type;
     guint rotation;
 } Itdb_Thumb;
@@ -687,9 +687,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2848539"></a><h3>
+<a name="id2743920"></a><h3>
 <a name="itdb-thumb-duplicate"></a>itdb_thumb_duplicate ()</h3>
-<a class="indexterm" name="id2848552"></a><pre class="programlisting"><a class="link" href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a>*         itdb_thumb_duplicate                (<a class="link" href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb);</pre>
+<a class="indexterm" name="id2743932"></a><pre class="programlisting"><a class="link" href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a>*         itdb_thumb_duplicate                (<a class="link" href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb);</pre>
 <p>
 Duplicates the data contained in <em class="parameter"><code>thumb</code></em></p>
 <p>
@@ -717,9 +717,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2848636"></a><h3>
+<a name="id2744017"></a><h3>
 <a name="itdb-thumb-free"></a>itdb_thumb_free ()</h3>
-<a class="indexterm" name="id2848648"></a><pre class="programlisting">void                itdb_thumb_free                     (<a class="link" href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb);</pre>
+<a class="indexterm" name="id2744029"></a><pre class="programlisting">void                itdb_thumb_free                     (<a class="link" href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb);</pre>
 <p>
 Frees the memory used by <em class="parameter"><code>thumb</code></em></p>
 <p>
@@ -738,9 +738,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2848709"></a><h3>
+<a name="id2744090"></a><h3>
 <a name="itdb-thumb-to-pixbuf-at-size"></a>itdb_thumb_to_pixbuf_at_size ()</h3>
-<a class="indexterm" name="id2848723"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2744104"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
 >gpointer</a>            itdb_thumb_to_pixbuf_at_size        (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
                                                          <a class="link" href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb,
@@ -812,9 +812,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2848909"></a><h3>
+<a name="id2744289"></a><h3>
 <a name="itdb-thumb-to-pixbufs"></a>itdb_thumb_to_pixbufs ()</h3>
-<a class="indexterm" name="id2848921"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2744302"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Doubly-Linked-Lists.html#GList"
 >GList</a>*              itdb_thumb_to_pixbufs               (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
                                                          <a class="link" href="libgpod-Artwork.html#Itdb-Thumb">Itdb_Thumb</a> *thumb);</pre>
@@ -879,15 +879,15 @@
 </div>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2849109"></a><h2>See Also</h2>
+<a name="id2744489"></a><h2>See Also</h2>
 <p>
 <a class="link" href="photodb.html" title="Part&#160;II.&#160;Photo database">Photo database</a>
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2849124"></a><div class="refsect2" lang="en"><a name="id2849125"></a></div>
+<a name="id2744504"></a><div class="refsect2" lang="en"><a name="id2744505"></a></div>
 <hr>
-<div class="refsect2" lang="en"><a name="id2849126"></a></div>
+<div class="refsect2" lang="en"><a name="id2744506"></a></div>
 </div>
 </div>
 </body>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-Chapter-Data.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-Chapter-Data.html	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-Chapter-Data.html	2009-06-19 20:28:03 UTC (rev 384)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="libgpod-Device.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2802489" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2680707" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2788846" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2730404" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-Chapter-Data"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2802489"></a><span class="refentrytitle">Chapter Data</span>
+<a name="id2680707"></a><span class="refentrytitle">Chapter Data</span>
 </h2>
 <p>Chapter Data &#8212; Data structure to store chapter data for tracks</p>
 </td>
@@ -67,18 +67,18 @@
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2788846"></a><h2>Description</h2>
+<a name="id2730404"></a><h2>Description</h2>
 <p>
 Chapters allow for a large file to be divided into sections.  The start and stop
 points in the track are defined here, as well as the title for each chapter.
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2788864"></a><h2>Details</h2>
+<a name="id2730422"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2788875"></a><h3>
+<a name="id2729895"></a><h3>
 <a name="Itdb-Chapter"></a>Itdb_Chapter</h3>
-<a class="indexterm" name="id2788889"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2729910"></a><pre class="programlisting">typedef struct {
     guint32 startpos;
     gchar *chaptertitle;
     /* reserved for future use */
@@ -146,9 +146,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2838689"></a><h3>
+<a name="id2740762"></a><h3>
 <a name="Itdb-Chapterdata"></a>Itdb_Chapterdata</h3>
-<a class="indexterm" name="id2838703"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2740776"></a><pre class="programlisting">typedef struct {
     GList *chapters;
     guint32 unk024;
     guint32 unk028;
@@ -231,9 +231,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2838190"></a><h3>
+<a name="id2734118"></a><h3>
 <a name="itdb-chapter-new"></a>itdb_chapter_new ()</h3>
-<a class="indexterm" name="id2838205"></a><pre class="programlisting"><a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapter">Itdb_Chapter</a>*       itdb_chapter_new                    (void);</pre>
+<a class="indexterm" name="id2734133"></a><pre class="programlisting"><a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapter">Itdb_Chapter</a>*       itdb_chapter_new                    (void);</pre>
 <p>
 Creates a new <a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapter"><span class="type">Itdb_Chapter</span></a></p>
 <p>
@@ -254,9 +254,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2838276"></a><h3>
+<a name="id2734204"></a><h3>
 <a name="itdb-chapter-duplicate"></a>itdb_chapter_duplicate ()</h3>
-<a class="indexterm" name="id2838289"></a><pre class="programlisting"><a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapter">Itdb_Chapter</a>*       itdb_chapter_duplicate              (<a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapter">Itdb_Chapter</a> *chapter);</pre>
+<a class="indexterm" name="id2734217"></a><pre class="programlisting"><a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapter">Itdb_Chapter</a>*       itdb_chapter_duplicate              (<a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapter">Itdb_Chapter</a> *chapter);</pre>
 <p>
 Duplicates the data contained in <em class="parameter"><code>chapter</code></em></p>
 <p>
@@ -284,9 +284,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2838385"></a><h3>
+<a name="id2733627"></a><h3>
 <a name="itdb-chapter-free"></a>itdb_chapter_free ()</h3>
-<a class="indexterm" name="id2838400"></a><pre class="programlisting">void                itdb_chapter_free                   (<a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapter">Itdb_Chapter</a> *chapter);</pre>
+<a class="indexterm" name="id2733642"></a><pre class="programlisting">void                itdb_chapter_free                   (<a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapter">Itdb_Chapter</a> *chapter);</pre>
 <p>
 Frees the memory used by <em class="parameter"><code>chapter</code></em></p>
 <p>
@@ -305,9 +305,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2843562"></a><h3>
+<a name="id2733710"></a><h3>
 <a name="itdb-chapterdata-new"></a>itdb_chapterdata_new ()</h3>
-<a class="indexterm" name="id2843575"></a><pre class="programlisting"><a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapterdata">Itdb_Chapterdata</a>*   itdb_chapterdata_new                (void);</pre>
+<a class="indexterm" name="id2733724"></a><pre class="programlisting"><a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapterdata">Itdb_Chapterdata</a>*   itdb_chapterdata_new                (void);</pre>
 <p>
 Creates a new <a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapterdata"><span class="type">Itdb_Chapterdata</span></a></p>
 <p>
@@ -328,9 +328,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2843645"></a><h3>
+<a name="id2733793"></a><h3>
 <a name="itdb-chapterdata-add-chapter"></a>itdb_chapterdata_add_chapter ()</h3>
-<a class="indexterm" name="id2843660"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2733808"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_chapterdata_add_chapter        (<a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapterdata">Itdb_Chapterdata</a> *chapterdata,
                                                          <a
@@ -376,9 +376,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2843785"></a><h3>
+<a name="id2738991"></a><h3>
 <a name="itdb-chapterdata-duplicate"></a>itdb_chapterdata_duplicate ()</h3>
-<a class="indexterm" name="id2843799"></a><pre class="programlisting"><a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapterdata">Itdb_Chapterdata</a>*   itdb_chapterdata_duplicate          (<a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapterdata">Itdb_Chapterdata</a> *chapterdata);</pre>
+<a class="indexterm" name="id2739005"></a><pre class="programlisting"><a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapterdata">Itdb_Chapterdata</a>*   itdb_chapterdata_duplicate          (<a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapterdata">Itdb_Chapterdata</a> *chapterdata);</pre>
 <p>
 Duplicates <em class="parameter"><code>chapterdata</code></em></p>
 <p>
@@ -405,9 +405,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2843884"></a><h3>
+<a name="id2739090"></a><h3>
 <a name="itdb-chapterdata-remove-chapter"></a>itdb_chapterdata_remove_chapter ()</h3>
-<a class="indexterm" name="id2843900"></a><pre class="programlisting">void                itdb_chapterdata_remove_chapter     (<a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapterdata">Itdb_Chapterdata</a> *chapterdata,
+<a class="indexterm" name="id2739106"></a><pre class="programlisting">void                itdb_chapterdata_remove_chapter     (<a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapterdata">Itdb_Chapterdata</a> *chapterdata,
                                                          <a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapter">Itdb_Chapter</a> *chapter);</pre>
 <p>
 Removes <em class="parameter"><code>chapter</code></em> from <em class="parameter"><code>chapterdata</code></em>. The memory used by <em class="parameter"><code>chapter</code></em> is freed.</p>
@@ -434,9 +434,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2844011"></a><h3>
+<a name="id2739217"></a><h3>
 <a name="itdb-chapterdata-remove-chapters"></a>itdb_chapterdata_remove_chapters ()</h3>
-<a class="indexterm" name="id2844027"></a><pre class="programlisting">void                itdb_chapterdata_remove_chapters    (<a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapterdata">Itdb_Chapterdata</a> *chapterdata);</pre>
+<a class="indexterm" name="id2739233"></a><pre class="programlisting">void                itdb_chapterdata_remove_chapters    (<a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapterdata">Itdb_Chapterdata</a> *chapterdata);</pre>
 <p>
 Removes all chapters from <em class="parameter"><code>chapterdata</code></em></p>
 <p>
@@ -455,9 +455,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2844096"></a><h3>
+<a name="id2739302"></a><h3>
 <a name="itdb-chapterdata-free"></a>itdb_chapterdata_free ()</h3>
-<a class="indexterm" name="id2844110"></a><pre class="programlisting">void                itdb_chapterdata_free               (<a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapterdata">Itdb_Chapterdata</a> *chapterdata);</pre>
+<a class="indexterm" name="id2739316"></a><pre class="programlisting">void                itdb_chapterdata_free               (<a class="link" href="libgpod-Chapter-Data.html#Itdb-Chapterdata">Itdb_Chapterdata</a> *chapterdata);</pre>
 <p>
 Frees memory used by <em class="parameter"><code>chapterdata</code></em></p>
 <p>
@@ -476,9 +476,9 @@
 </div>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2844180"></a><div class="refsect2" lang="en"><a name="id2844181"></a></div>
+<a name="id2739386"></a><div class="refsect2" lang="en"><a name="id2739387"></a></div>
 <hr>
-<div class="refsect2" lang="en"><a name="id2844182"></a></div>
+<div class="refsect2" lang="en"><a name="id2739388"></a></div>
 </div>
 </div>
 </body>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-Device.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-Device.html	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-Device.html	2009-06-19 20:28:03 UTC (rev 384)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="photodb.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2803674" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2708554" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2844188" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2739667" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-Device"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2803674"></a><span class="refentrytitle">Device</span>
+<a name="id2708554"></a><span class="refentrytitle">Device</span>
 </h2>
 <p>Device &#8212; Data structure holding information about the iPod (model, mount point, etc.)</p>
 </td>
@@ -53,37 +53,21 @@
 >gchar</a> *mp);
 <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a class="link" href="libgpod-Device.html#itdb-device-read-sysinfo">itdb_device_read_sysinfo</a>            (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
+>gboolean</a>            <a class="link" href="libgpod-Device.html#itdb-device-supports-artwork">itdb_device_supports_artwork</a>        (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
 <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              <a class="link" href="libgpod-Device.html#itdb-device-get-sysinfo">itdb_device_get_sysinfo</a>             (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *field);
-void                <a class="link" href="libgpod-Device.html#itdb-device-set-sysinfo">itdb_device_set_sysinfo</a>             (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *field,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *value);
-<a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a class="link" href="libgpod-Device.html#itdb-device-write-sysinfo">itdb_device_write_sysinfo</a>           (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);
-                    <a class="link" href="libgpod-Device.html#Itdb-IpodInfo">Itdb_IpodInfo</a>;
-const <a class="link" href="libgpod-Device.html#Itdb-IpodInfo">Itdb_IpodInfo</a>* <a class="link" href="libgpod-Device.html#itdb-device-get-ipod-info">itdb_device_get_ipod_info</a>          (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
+>gboolean</a>            <a class="link" href="libgpod-Device.html#itdb-device-supports-chapter-image">itdb_device_supports_chapter_image</a>  (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
 <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a class="link" href="libgpod-Device.html#itdb-device-supports-artwork">itdb_device_supports_artwork</a>        (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
+>gboolean</a>            <a class="link" href="libgpod-Device.html#itdb-device-supports-photo">itdb_device_supports_photo</a>          (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
 <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a class="link" href="libgpod-Device.html#itdb-device-supports-photo">itdb_device_supports_photo</a>          (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
+>gboolean</a>            <a class="link" href="libgpod-Device.html#itdb-device-supports-podcast">itdb_device_supports_podcast</a>        (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
 <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            <a class="link" href="libgpod-Device.html#itdb-device-supports-video">itdb_device_supports_video</a>          (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
+                    <a class="link" href="libgpod-Device.html#Itdb-IpodInfo">Itdb_IpodInfo</a>;
+const <a class="link" href="libgpod-Device.html#Itdb-IpodInfo">Itdb_IpodInfo</a>* <a class="link" href="libgpod-Device.html#itdb-device-get-ipod-info">itdb_device_get_ipod_info</a>          (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
 const <a class="link" href="libgpod-Device.html#Itdb-IpodInfo">Itdb_IpodInfo</a>* <a class="link" href="libgpod-Device.html#itdb-info-get-ipod-info-table">itdb_info_get_ipod_info_table</a>      (void);
 enum                <a class="link" href="libgpod-Device.html#Itdb-IpodGeneration">Itdb_IpodGeneration</a>;
 const <a
@@ -95,35 +79,43 @@
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*        <a class="link" href="libgpod-Device.html#itdb-info-get-ipod-model-name-string">itdb_info_get_ipod_model_name_string</a>
                                                         (<a class="link" href="libgpod-Device.html#Itdb-IpodModel">Itdb_IpodModel</a> model);
+                    <a class="link" href="libgpod-Device.html#Itdb-ArtworkFormat">Itdb_ArtworkFormat</a>;
 <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            <a class="link" href="libgpod-Device.html#itdb-init-ipod">itdb_init_ipod</a>                      (const <a
+>gboolean</a>            <a class="link" href="libgpod-Device.html#itdb-device-read-sysinfo">itdb_device_read_sysinfo</a>            (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);
+<a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint,
+>gchar</a>*              <a class="link" href="libgpod-Device.html#itdb-device-get-sysinfo">itdb_device_get_sysinfo</a>             (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
                                                          const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *model_number,
+>gchar</a> *field);
+void                <a class="link" href="libgpod-Device.html#itdb-device-set-sysinfo">itdb_device_set_sysinfo</a>             (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
                                                          const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *ipod_name,
+>gchar</a> *field,
+                                                         const <a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
+>gchar</a> *value);
+<a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
+>gboolean</a>            <a class="link" href="libgpod-Device.html#itdb-device-write-sysinfo">itdb_device_write_sysinfo</a>           (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
                                                          <a
 href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
 >GError</a> **error);
-                    <a class="link" href="libgpod-Device.html#Itdb-ArtworkFormat">Itdb_ArtworkFormat</a>;
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2844188"></a><h2>Description</h2>
+<a name="id2739667"></a><h2>Description</h2>
 <p>
 These functions are for reading and setting information about the iPod.
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2844204"></a><h2>Details</h2>
+<a name="id2739683"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2844215"></a><h3>
+<a name="id2739694"></a><h3>
 <a name="Itdb-Device"></a>Itdb_Device</h3>
-<a class="indexterm" name="id2844230"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2739708"></a><pre class="programlisting">typedef struct {
     gchar *mountpoint;
     gint   musicdirs;
     guint  byte_order;
@@ -199,9 +191,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2844426"></a><h3>
+<a name="id2739905"></a><h3>
 <a name="itdb-device-new"></a>itdb_device_new ()</h3>
-<a class="indexterm" name="id2844441"></a><pre class="programlisting"><a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a>*        itdb_device_new                     (void);</pre>
+<a class="indexterm" name="id2739920"></a><pre class="programlisting"><a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a>*        itdb_device_new                     (void);</pre>
 <p>
 Creates a new <a class="link" href="libgpod-Device.html#Itdb-Device"><span class="type">Itdb_Device</span></a> structure</p>
 <p>
@@ -222,9 +214,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2844511"></a><h3>
+<a name="id2746185"></a><h3>
 <a name="itdb-device-free"></a>itdb_device_free ()</h3>
-<a class="indexterm" name="id2844526"></a><pre class="programlisting">void                itdb_device_free                    (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
+<a class="indexterm" name="id2746200"></a><pre class="programlisting">void                itdb_device_free                    (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
 <p>
 Frees memory used by <em class="parameter"><code>device</code></em></p>
 <p>
@@ -243,16 +235,28 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2844594"></a><h3>
+<a name="id2746268"></a><h3>
 <a name="itdb-device-set-mountpoint"></a>itdb_device_set_mountpoint ()</h3>
-<a class="indexterm" name="id2844609"></a><pre class="programlisting">void                itdb_device_set_mountpoint          (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
+<a class="indexterm" name="id2746282"></a><pre class="programlisting">void                itdb_device_set_mountpoint          (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
                                                          const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a> *mp);</pre>
 <p>
 Sets the mountpoint of <em class="parameter"><code>device</code></em> to <em class="parameter"><code>mp</code></em> and update the cached device 
-information (in particular, re-read the SysInfo file)</p>
+information (in particular, re-read the SysInfo file)
+</p>
 <p>
+</p>
+<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
+<h3 class="title">Warning</h3>
+<p>Calling this function invalidates all the artwork in the
+<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB"><span class="type">Itdb_iTunesDB</span></a> database using this <a class="link" href="libgpod-Device.html#Itdb-Device"><span class="type">Itdb_Device</span></a>. Trying to access this
+artwork will result in memory corruption. It's recommended to use
+<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-set-mountpoint"><code class="function">itdb_set_mountpoint()</code></a> instead which will clean the invalidated artwork
+for you.</p>
+</div>
+<p>.</p>
+<p>
 
 </p>
 <div class="variablelist"><table border="0">
@@ -275,14 +279,15 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2850726"></a><h3>
-<a name="itdb-device-read-sysinfo"></a>itdb_device_read_sysinfo ()</h3>
-<a class="indexterm" name="id2850739"></a><pre class="programlisting"><a
+<a name="id2746415"></a><h3>
+<a name="itdb-device-supports-artwork"></a>itdb_device_supports_artwork ()</h3>
+<a class="indexterm" name="id2746430"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_device_read_sysinfo            (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
+>gboolean</a>            itdb_device_supports_artwork        (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
 <p>
-Reads the SysInfo file and stores information in device-&gt;sysinfo for
-later use.</p>
+Indicates whether <em class="parameter"><code>device</code></em> can display artwork or not. When dealing
+with a non-art capable iPod, no artwork data will be written to the
+iPod so you can spare calls to the artwork handling methods.</p>
 <p>
 
 </p>
@@ -296,27 +301,24 @@
 </tr>
 <tr>
 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
-<td> TRUE if file could be read, FALSE otherwise 
+<td> true if <em class="parameter"><code>device</code></em> can display artwork.
 
 </td>
 </tr>
 </tbody>
 </table></div>
-<p class="since">Since  0.4.0
+<p class="since">Since  0.5.0
 </p>
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2850815"></a><h3>
-<a name="itdb-device-get-sysinfo"></a>itdb_device_get_sysinfo ()</h3>
-<a class="indexterm" name="id2850829"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a>*              itdb_device_get_sysinfo             (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *field);</pre>
+<a name="id2746520"></a><h3>
+<a name="itdb-device-supports-chapter-image"></a>itdb_device_supports_chapter_image ()</h3>
+<a class="indexterm" name="id2746535"></a><pre class="programlisting"><a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
+>gboolean</a>            itdb_device_supports_chapter_image  (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
 <p>
-Retrieve specified field from the SysInfo file.</p>
+Indicates whether <em class="parameter"><code>device</code></em> can display chapter images or not.</p>
 <p>
 
 </p>
@@ -329,38 +331,56 @@
 </td>
 </tr>
 <tr>
-<td><p><span class="term"><em class="parameter"><code>field</code></em>&#160;:</span></p></td>
-<td>  field to retrive information from
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
+<td> true if <em class="parameter"><code>device</code></em> can display chapter images.
+
 </td>
 </tr>
+</tbody>
+</table></div>
+<p class="since">Since  0.7.2
+</p>
+</div>
+<hr>
+<div class="refsect2" lang="en">
+<a name="id2746622"></a><h3>
+<a name="itdb-device-supports-photo"></a>itdb_device_supports_photo ()</h3>
+<a class="indexterm" name="id2746636"></a><pre class="programlisting"><a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
+>gboolean</a>            itdb_device_supports_photo          (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
+<p>
+Indicates whether <em class="parameter"><code>device</code></em> can display photos or not.</p>
+<p>
+
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
 <tr>
+<td><p><span class="term"><em class="parameter"><code>device</code></em>&#160;:</span></p></td>
+<td> an <a class="link" href="libgpod-Device.html#Itdb-Device"><span class="type">Itdb_Device</span></a>
+</td>
+</tr>
+<tr>
 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
-<td> the information associated with <em class="parameter"><code>field</code></em>, or NULL if <em class="parameter"><code>field</code></em>
-couldn't be found. <a
-href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
-><code class="function">g_free()</code></a> after use
+<td> true if <em class="parameter"><code>device</code></em> can display photos.
 
 </td>
 </tr>
 </tbody>
 </table></div>
-<p class="since">Since  0.4.0
+<p class="since">Since  0.5.0
 </p>
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2850946"></a><h3>
-<a name="itdb-device-set-sysinfo"></a>itdb_device_set_sysinfo ()</h3>
-<a class="indexterm" name="id2850960"></a><pre class="programlisting">void                itdb_device_set_sysinfo             (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *field,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *value);</pre>
+<a name="id2746722"></a><h3>
+<a name="itdb-device-supports-podcast"></a>itdb_device_supports_podcast ()</h3>
+<a class="indexterm" name="id2746738"></a><pre class="programlisting"><a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
+>gboolean</a>            itdb_device_supports_podcast        (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
 <p>
-Set specified field. It can later be written to the iPod using
-<a class="link" href="libgpod-Device.html#itdb-device-write-sysinfo"><code class="function">itdb_device_write_sysinfo()</code></a></p>
+Indicates whether <em class="parameter"><code>device</code></em> can play podcasts or not.</p>
 <p>
 
 </p>
@@ -373,33 +393,25 @@
 </td>
 </tr>
 <tr>
-<td><p><span class="term"><em class="parameter"><code>field</code></em>&#160;:</span></p></td>
-<td>  field to set
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
+<td> true if <em class="parameter"><code>device</code></em> can play podcasts.
+
 </td>
 </tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>value</code></em>&#160;:</span></p></td>
-<td>  value to set (or NULL to remove the field).
-</td>
-</tr>
 </tbody>
 </table></div>
-<p class="since">Since  0.4.0
+<p class="since">Since  0.7.2
 </p>
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2851075"></a><h3>
-<a name="itdb-device-write-sysinfo"></a>itdb_device_write_sysinfo ()</h3>
-<a class="indexterm" name="id2851090"></a><pre class="programlisting"><a
+<a name="id2746824"></a><h3>
+<a name="itdb-device-supports-video"></a>itdb_device_supports_video ()</h3>
+<a class="indexterm" name="id2746838"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_device_write_sysinfo           (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
+>gboolean</a>            itdb_device_supports_video          (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
 <p>
-Fills the SysInfo file with information in device-&gt;sysinfo. Note:
-no directories are created if not already existent.</p>
+Indicates whether <em class="parameter"><code>device</code></em> can play videos or not.</p>
 <p>
 
 </p>
@@ -412,28 +424,21 @@
 </td>
 </tr>
 <tr>
-<td><p><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></p></td>
-<td>  return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
-</td>
-</tr>
-<tr>
 <td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
-<td> TRUE if file could be read, FALSE otherwise 
+<td> true if <em class="parameter"><code>device</code></em> can play videos.
 
 </td>
 </tr>
 </tbody>
 </table></div>
-<p class="since">Since  0.4.0
+<p class="since">Since  0.7.0
 </p>
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2851194"></a><h3>
+<a name="id2746925"></a><h3>
 <a name="Itdb-IpodInfo"></a>Itdb_IpodInfo</h3>
-<a class="indexterm" name="id2851209"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2746939"></a><pre class="programlisting">typedef struct {
     const gchar *model_number;
     const double capacity;
     const Itdb_IpodModel ipod_model;
@@ -525,9 +530,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2851453"></a><h3>
+<a name="id2747183"></a><h3>
 <a name="itdb-device-get-ipod-info"></a>itdb_device_get_ipod_info ()</h3>
-<a class="indexterm" name="id2851467"></a><pre class="programlisting">const <a class="link" href="libgpod-Device.html#Itdb-IpodInfo">Itdb_IpodInfo</a>* itdb_device_get_ipod_info          (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
+<a class="indexterm" name="id2747198"></a><pre class="programlisting">const <a class="link" href="libgpod-Device.html#Itdb-IpodInfo">Itdb_IpodInfo</a>* itdb_device_get_ipod_info          (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
 <p>
 Retrieve the <a class="link" href="libgpod-Device.html#Itdb-IpodInfo"><span class="type">Itdb_IpodInfo</span></a> entry for this iPod</p>
 <p>
@@ -554,107 +559,13 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2851557"></a><h3>
-<a name="itdb-device-supports-artwork"></a>itdb_device_supports_artwork ()</h3>
-<a class="indexterm" name="id2851572"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_device_supports_artwork        (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
-<p>
-Indicates whether <em class="parameter"><code>device</code></em> can display artwork or not. When dealing
-with a non-art capable iPod, no artwork data will be written to the
-iPod so you can spare calls to the artwork handling methods.</p>
-<p>
-
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>device</code></em>&#160;:</span></p></td>
-<td> an <a class="link" href="libgpod-Device.html#Itdb-Device"><span class="type">Itdb_Device</span></a>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
-<td> true if <em class="parameter"><code>device</code></em> can display artwork.
-
-</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since  0.5.0
-</p>
-</div>
-<hr>
-<div class="refsect2" lang="en">
-<a name="id2851662"></a><h3>
-<a name="itdb-device-supports-photo"></a>itdb_device_supports_photo ()</h3>
-<a class="indexterm" name="id2851676"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_device_supports_photo          (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
-<p>
-Indicates whether <em class="parameter"><code>device</code></em> can display photos or not.</p>
-<p>
-
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>device</code></em>&#160;:</span></p></td>
-<td> an <a class="link" href="libgpod-Device.html#Itdb-Device"><span class="type">Itdb_Device</span></a>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
-<td> true if <em class="parameter"><code>device</code></em> can display photos.
-
-</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since  0.5.0
-</p>
-</div>
-<hr>
-<div class="refsect2" lang="en">
-<a name="id2851762"></a><h3>
-<a name="itdb-device-supports-video"></a>itdb_device_supports_video ()</h3>
-<a class="indexterm" name="id2851776"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_device_supports_video          (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
-<p>
-Indicates whether <em class="parameter"><code>device</code></em> can play videos or not.</p>
-<p>
-
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>device</code></em>&#160;:</span></p></td>
-<td> an <a class="link" href="libgpod-Device.html#Itdb-Device"><span class="type">Itdb_Device</span></a>
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
-<td> true if <em class="parameter"><code>device</code></em> can play videos.
-
-</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since  0.7.0
-</p>
-</div>
-<hr>
-<div class="refsect2" lang="en">
-<a name="id2851862"></a><h3>
+<a name="id2747288"></a><h3>
 <a name="itdb-info-get-ipod-info-table"></a>itdb_info_get_ipod_info_table ()</h3>
-<a class="indexterm" name="id2851878"></a><pre class="programlisting">const <a class="link" href="libgpod-Device.html#Itdb-IpodInfo">Itdb_IpodInfo</a>* itdb_info_get_ipod_info_table      (void);</pre>
+<a class="indexterm" name="id2747303"></a><pre class="programlisting">const <a class="link" href="libgpod-Device.html#Itdb-IpodInfo">Itdb_IpodInfo</a>* itdb_info_get_ipod_info_table      (void);</pre>
 <p>
 Return a pointer to the start of valid iPod model descriptions,
-which is an array of <a class="link" href="libgpod-Device.html#Itdb-IpodInfo"><span class="type">Itdb_IpodInfo</span></a> entries.</p>
+which is an array of <a class="link" href="libgpod-Device.html#Itdb-IpodInfo"><span class="type">Itdb_IpodInfo</span></a> entries. This can be useful if you
+want to build a list of all iPod models known to the current libgpod.</p>
 <p>
 
 </p>
@@ -672,9 +583,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2851943"></a><h3>
+<a name="id2747369"></a><h3>
 <a name="Itdb-IpodGeneration"></a>enum Itdb_IpodGeneration</h3>
-<a class="indexterm" name="id2851957"></a><pre class="programlisting">typedef enum {
+<a class="indexterm" name="id2747384"></a><pre class="programlisting">typedef enum {
     ITDB_IPOD_GENERATION_UNKNOWN,
     ITDB_IPOD_GENERATION_FIRST,
     ITDB_IPOD_GENERATION_SECOND,
@@ -828,9 +739,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2852501"></a><h3>
+<a name="id2747927"></a><h3>
 <a name="itdb-info-get-ipod-generation-string"></a>itdb_info_get_ipod_generation_string ()</h3>
-<a class="indexterm" name="id2852515"></a><pre class="programlisting">const <a
+<a class="indexterm" name="id2747941"></a><pre class="programlisting">const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*        itdb_info_get_ipod_generation_string
                                                         (<a class="link" href="libgpod-Device.html#Itdb-IpodGeneration">Itdb_IpodGeneration</a> generation);</pre>
@@ -864,9 +775,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2852604"></a><h3>
+<a name="id2748030"></a><h3>
 <a name="Itdb-IpodModel"></a>enum Itdb_IpodModel</h3>
-<a class="indexterm" name="id2852619"></a><pre class="programlisting">typedef enum {
+<a class="indexterm" name="id2748044"></a><pre class="programlisting">typedef enum {
     ITDB_IPOD_MODEL_INVALID,
     ITDB_IPOD_MODEL_UNKNOWN,
     ITDB_IPOD_MODEL_COLOR,
@@ -1106,9 +1017,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2855814"></a><h3>
+<a name="id2751039"></a><h3>
 <a name="itdb-info-get-ipod-model-name-string"></a>itdb_info_get_ipod_model_name_string ()</h3>
-<a class="indexterm" name="id2855829"></a><pre class="programlisting">const <a
+<a class="indexterm" name="id2751054"></a><pre class="programlisting">const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*        itdb_info_get_ipod_model_name_string
                                                         (<a class="link" href="libgpod-Device.html#Itdb-IpodModel">Itdb_IpodModel</a> model);</pre>
@@ -1141,72 +1052,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2855908"></a><h3>
-<a name="itdb-init-ipod"></a>itdb_init_ipod ()</h3>
-<a class="indexterm" name="id2855921"></a><pre class="programlisting"><a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
->gboolean</a>            itdb_init_ipod                      (const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *mountpoint,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *model_number,
-                                                         const <a
-href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
->gchar</a> *ipod_name,
-                                                         <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
->GError</a> **error);</pre>
-<p>
-Initialise an iPod device from scratch. The function attempts to
-create a blank database, complete with master playlist and device
-information as well as the directory structure required for the
-type of iPod.</p>
-<p>
-
-</p>
-<div class="variablelist"><table border="0">
-<col align="left" valign="top">
-<tbody>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>mountpoint</code></em>&#160;:</span></p></td>
-<td>   the iPod mountpoint
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>model_number</code></em>&#160;:</span></p></td>
-<td> the iPod model number
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>ipod_name</code></em>&#160;:</span></p></td>
-<td>    the name to give to the iPod. Will be displayed in
-               gtkpod or itunes
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></p></td>
-<td>        return location for a <a
-href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
-><span class="type">GError</span></a> or NULL
-</td>
-</tr>
-<tr>
-<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
-<td> TRUE when successful, FALSE if a failure has occurred.
-
-</td>
-</tr>
-</tbody>
-</table></div>
-<p class="since">Since  0.4.0
-</p>
-</div>
-<hr>
-<div class="refsect2" lang="en">
-<a name="id2856051"></a><h3>
+<a name="id2751133"></a><h3>
 <a name="Itdb-ArtworkFormat"></a>Itdb_ArtworkFormat</h3>
-<a class="indexterm" name="id2856061"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2751144"></a><pre class="programlisting">typedef struct {
         gint format_id;
         gint width;
         gint height;
@@ -1339,11 +1187,179 @@
 </tbody>
 </table></div>
 </div>
+<hr>
+<div class="refsect2" lang="en">
+<a name="id2751445"></a><h3>
+<a name="itdb-device-read-sysinfo"></a>itdb_device_read_sysinfo ()</h3>
+<a class="indexterm" name="id2751457"></a><pre class="programlisting"><a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
+>gboolean</a>            itdb_device_read_sysinfo            (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device);</pre>
+<p>
+Reads the SysInfo file and stores information in device-&gt;sysinfo for
+later use.
+</p>
+<p>
+</p>
+<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
+<h3 class="title">Warning</h3>
+<p>Calling this function invalidates all the artwork in the
+<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB"><span class="type">Itdb_iTunesDB</span></a> database using this <a class="link" href="libgpod-Device.html#Itdb-Device"><span class="type">Itdb_Device</span></a>. Trying to access this
+artwork will result in memory corruption. Directly calling this function
+shouldn't ever be needed and it will be deprecated
+soon.</p>
 </div>
+<p>.</p>
+<p>
+
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>device</code></em>&#160;:</span></p></td>
+<td> an <a class="link" href="libgpod-Device.html#Itdb-Device"><span class="type">Itdb_Device</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
+<td> TRUE if file could be read, FALSE otherwise 
+
+</td>
+</tr>
+</tbody>
+</table></div>
+<p class="since">Since  0.4.0
+</p>
+</div>
+<hr>
+<div class="refsect2" lang="en">
+<a name="id2751549"></a><h3>
+<a name="itdb-device-get-sysinfo"></a>itdb_device_get_sysinfo ()</h3>
+<a class="indexterm" name="id2751561"></a><pre class="programlisting"><a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
+>gchar</a>*              itdb_device_get_sysinfo             (const <a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
+                                                         const <a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
+>gchar</a> *field);</pre>
+<p>
+Retrieve specified field from the SysInfo file.</p>
+<p>
+
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>device</code></em>&#160;:</span></p></td>
+<td> an <a class="link" href="libgpod-Device.html#Itdb-Device"><span class="type">Itdb_Device</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em>&#160;:</span></p></td>
+<td>  field to retrive information from
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
+<td> the information associated with <em class="parameter"><code>field</code></em>, or NULL if <em class="parameter"><code>field</code></em>
+couldn't be found. <a
+href="/usr/share/gtk-doc/html/glib/glib-Memory-Allocation.html#g-free"
+><code class="function">g_free()</code></a> after use
+
+</td>
+</tr>
+</tbody>
+</table></div>
+<p class="since">Since  0.4.0
+</p>
+</div>
+<hr>
+<div class="refsect2" lang="en">
+<a name="id2751668"></a><h3>
+<a name="itdb-device-set-sysinfo"></a>itdb_device_set_sysinfo ()</h3>
+<a class="indexterm" name="id2751680"></a><pre class="programlisting">void                itdb_device_set_sysinfo             (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
+                                                         const <a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
+>gchar</a> *field,
+                                                         const <a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
+>gchar</a> *value);</pre>
+<p>
+Set specified field. It can later be written to the iPod using
+<a class="link" href="libgpod-Device.html#itdb-device-write-sysinfo"><code class="function">itdb_device_write_sysinfo()</code></a></p>
+<p>
+
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>device</code></em>&#160;:</span></p></td>
+<td> an <a class="link" href="libgpod-Device.html#Itdb-Device"><span class="type">Itdb_Device</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>field</code></em>&#160;:</span></p></td>
+<td>  field to set
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>value</code></em>&#160;:</span></p></td>
+<td>  value to set (or NULL to remove the field).
+</td>
+</tr>
+</tbody>
+</table></div>
+<p class="since">Since  0.4.0
+</p>
+</div>
+<hr>
+<div class="refsect2" lang="en">
+<a name="id2751784"></a><h3>
+<a name="itdb-device-write-sysinfo"></a>itdb_device_write_sysinfo ()</h3>
+<a class="indexterm" name="id2751797"></a><pre class="programlisting"><a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
+>gboolean</a>            itdb_device_write_sysinfo           (<a class="link" href="libgpod-Device.html#Itdb-Device">Itdb_Device</a> *device,
+                                                         <a
+href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
+>GError</a> **error);</pre>
+<p>
+Fills the SysInfo file with information in device-&gt;sysinfo. Note:
+no directories are created if not already existent.</p>
+<p>
+
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>device</code></em>&#160;:</span></p></td>
+<td> an <a class="link" href="libgpod-Device.html#Itdb-Device"><span class="type">Itdb_Device</span></a>
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></p></td>
+<td>  return location for a <a
+href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
+><span class="type">GError</span></a> or NULL
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
+<td> TRUE if file could be read, FALSE otherwise 
+
+</td>
+</tr>
+</tbody>
+</table></div>
+<p class="since">Since  0.4.0
+</p>
+</div>
+</div>
 <div class="refsect1" lang="en">
-<a name="id2856364"></a><div class="refsect2" lang="en"><a name="id2856365"></a></div>
+<a name="id2751893"></a><div class="refsect2" lang="en"><a name="id2751894"></a></div>
 <hr>
-<div class="refsect2" lang="en"><a name="id2856366"></a></div>
+<div class="refsect2" lang="en"><a name="id2751895"></a></div>
 </div>
 </div>
 </body>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-File-handling-functions.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-File-handling-functions.html	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-File-handling-functions.html	2009-06-19 20:28:03 UTC (rev 384)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="libgpod-Time-handling.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2785999" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2717648" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2803374" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2698514" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-File-handling-functions"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2785999"></a><span class="refentrytitle">File handling functions</span>
+<a name="id2717648"></a><span class="refentrytitle">File handling functions</span>
 </h2>
 <p>File handling functions &#8212; Managing files on the iPod</p>
 </td>
@@ -76,18 +76,18 @@
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2803374"></a><h2>Description</h2>
+<a name="id2698514"></a><h2>Description</h2>
 <p>
 These functions are for copying, renaming, and retrieving information
 about the files and directories on the iPod.
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2803392"></a><h2>Details</h2>
+<a name="id2698531"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2803402"></a><h3>
+<a name="id2698542"></a><h3>
 <a name="itdb-cp-track-to-ipod"></a>itdb_cp_track_to_ipod ()</h3>
-<a class="indexterm" name="id2803414"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2698553"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_cp_track_to_ipod               (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
                                                          const <a
@@ -158,9 +158,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2820868"></a><h3>
+<a name="id2710788"></a><h3>
 <a name="itdb-filename-fs2ipod"></a>itdb_filename_fs2ipod ()</h3>
-<a class="indexterm" name="id2820879"></a><pre class="programlisting">void                itdb_filename_fs2ipod               (<a
+<a class="indexterm" name="id2710799"></a><pre class="programlisting">void                itdb_filename_fs2ipod               (<a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a> *filename);</pre>
 <p>
@@ -181,9 +181,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2820937"></a><h3>
+<a name="id2710858"></a><h3>
 <a name="itdb-filename-ipod2fs"></a>itdb_filename_ipod2fs ()</h3>
-<a class="indexterm" name="id2820948"></a><pre class="programlisting">void                itdb_filename_ipod2fs               (<a
+<a class="indexterm" name="id2710869"></a><pre class="programlisting">void                itdb_filename_ipod2fs               (<a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a> *ipod_file);</pre>
 <p>
@@ -204,9 +204,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2821007"></a><h3>
+<a name="id2710928"></a><h3>
 <a name="itdb-filename-on-ipod"></a>itdb_filename_on_ipod ()</h3>
-<a class="indexterm" name="id2821018"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2710939"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*              itdb_filename_on_ipod               (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
 <p>
@@ -253,9 +253,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2810437"></a><h3>
+<a name="id2705579"></a><h3>
 <a name="itdb-musicdirs-number"></a>itdb_musicdirs_number ()</h3>
-<a class="indexterm" name="id2810451"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2705592"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
 >gint</a>                itdb_musicdirs_number               (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
@@ -289,9 +289,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2810545"></a><h3>
+<a name="id2705686"></a><h3>
 <a name="itdb-rename-files"></a>itdb_rename_files ()</h3>
-<a class="indexterm" name="id2810557"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2705699"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_rename_files                   (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
@@ -332,9 +332,9 @@
 </div>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2810656"></a><div class="refsect2" lang="en"><a name="id2810657"></a></div>
+<a name="id2705798"></a><div class="refsect2" lang="en"><a name="id2705799"></a></div>
 <hr>
-<div class="refsect2" lang="en"><a name="id2810658"></a></div>
+<div class="refsect2" lang="en"><a name="id2705800"></a></div>
 </div>
 </div>
 </body>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-Low-level-functions.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-Low-level-functions.html	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-Low-level-functions.html	2009-06-19 20:28:03 UTC (rev 384)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="ch01.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2795805" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2703180" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2800916" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2706707" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-Low-level-functions"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2795805"></a><span class="refentrytitle">Low-level functions</span>
+<a name="id2703180"></a><span class="refentrytitle">Low-level functions</span>
 </h2>
 <p>Low-level functions &#8212; Low-level functions which shouldn't be needed in normal situations</p>
 </td>
@@ -182,18 +182,18 @@
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2800916"></a><h2>Description</h2>
+<a name="id2706707"></a><h2>Description</h2>
 <p>
 These functions are not normally needed but are avalable to allow for finer
 control over the iPod database.
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2800933"></a><h2>Details</h2>
+<a name="id2706724"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2800944"></a><h3>
+<a name="id2706735"></a><h3>
 <a name="itdb-get-control-dir"></a>itdb_get_control_dir ()</h3>
-<a class="indexterm" name="id2800957"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2706749"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*              itdb_get_control_dir                (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
@@ -229,9 +229,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2801037"></a><h3>
+<a name="id2706828"></a><h3>
 <a name="itdb-get-itunes-dir"></a>itdb_get_itunes_dir ()</h3>
-<a class="indexterm" name="id2801051"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2706843"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*              itdb_get_itunes_dir                 (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
@@ -266,9 +266,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2810730"></a><h3>
+<a name="id2721743"></a><h3>
 <a name="itdb-get-music-dir"></a>itdb_get_music_dir ()</h3>
-<a class="indexterm" name="id2810743"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2721755"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*              itdb_get_music_dir                  (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
@@ -300,9 +300,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2810822"></a><h3>
+<a name="id2721835"></a><h3>
 <a name="itdb-get-artwork-dir"></a>itdb_get_artwork_dir ()</h3>
-<a class="indexterm" name="id2810836"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2721849"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*              itdb_get_artwork_dir                (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
@@ -337,9 +337,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2810923"></a><h3>
+<a name="id2721936"></a><h3>
 <a name="itdb-get-device-dir"></a>itdb_get_device_dir ()</h3>
-<a class="indexterm" name="id2810938"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2721950"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*              itdb_get_device_dir                 (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
@@ -374,9 +374,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2811025"></a><h3>
+<a name="id2722038"></a><h3>
 <a name="itdb-get-photos-dir"></a>itdb_get_photos_dir ()</h3>
-<a class="indexterm" name="id2811040"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2722052"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*              itdb_get_photos_dir                 (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
@@ -411,9 +411,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2811126"></a><h3>
+<a name="id2722139"></a><h3>
 <a name="itdb-get-itunesdb-path"></a>itdb_get_itunesdb_path ()</h3>
-<a class="indexterm" name="id2811140"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2722152"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*              itdb_get_itunesdb_path              (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
@@ -447,9 +447,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2811217"></a><h3>
+<a name="id2722229"></a><h3>
 <a name="itdb-get-itunessd-path"></a>itdb_get_itunessd_path ()</h3>
-<a class="indexterm" name="id2811230"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2722243"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*              itdb_get_itunessd_path              (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
@@ -483,9 +483,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2811307"></a><h3>
+<a name="id2722320"></a><h3>
 <a name="itdb-get-artworkdb-path"></a>itdb_get_artworkdb_path ()</h3>
-<a class="indexterm" name="id2811321"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2722333"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*              itdb_get_artworkdb_path             (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
@@ -519,9 +519,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2811398"></a><h3>
+<a name="id2722410"></a><h3>
 <a name="itdb-get-photodb-path"></a>itdb_get_photodb_path ()</h3>
-<a class="indexterm" name="id2811411"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2722424"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*              itdb_get_photodb_path               (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
@@ -555,9 +555,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2811489"></a><h3>
+<a name="id2722502"></a><h3>
 <a name="itdb-get-photos-thumb-dir"></a>itdb_get_photos_thumb_dir ()</h3>
-<a class="indexterm" name="id2811503"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2722516"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*              itdb_get_photos_thumb_dir           (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
@@ -592,9 +592,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2811590"></a><h3>
+<a name="id2722603"></a><h3>
 <a name="itdb-get-path"></a>itdb_get_path ()</h3>
-<a class="indexterm" name="id2811605"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2722618"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*              itdb_get_path                       (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
@@ -636,9 +636,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2811721"></a><h3>
+<a name="id2722733"></a><h3>
 <a name="itdb-resolve-path"></a>itdb_resolve_path ()</h3>
-<a class="indexterm" name="id2811733"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2722746"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*              itdb_resolve_path                   (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
@@ -681,9 +681,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2811828"></a><h3>
+<a name="id2722841"></a><h3>
 <a name="itdb-cp"></a>itdb_cp ()</h3>
-<a class="indexterm" name="id2811840"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2722853"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_cp                             (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
@@ -730,9 +730,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2811969"></a><h3>
+<a name="id2722982"></a><h3>
 <a name="itdb-cp-get-dest-filename"></a>itdb_cp_get_dest_filename ()</h3>
-<a class="indexterm" name="id2811983"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2722996"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*              itdb_cp_get_dest_filename           (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
                                                          const <a
@@ -803,9 +803,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2812206"></a><h3>
+<a name="id2723218"></a><h3>
 <a name="itdb-cp-finalize"></a>itdb_cp_finalize ()</h3>
-<a class="indexterm" name="id2812220"></a><pre class="programlisting"><a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_cp_finalize                    (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
+<a class="indexterm" name="id2723233"></a><pre class="programlisting"><a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_cp_finalize                    (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
                                                          const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a> *mountpoint,
@@ -888,9 +888,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2812473"></a><h3>
+<a name="id2723486"></a><h3>
 <a name="itdb-parse-file"></a>itdb_parse_file ()</h3>
-<a class="indexterm" name="id2812486"></a><pre class="programlisting"><a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      itdb_parse_file                     (const <a
+<a class="indexterm" name="id2723498"></a><pre class="programlisting"><a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      itdb_parse_file                     (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a> *filename,
                                                          <a
@@ -929,9 +929,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2812622"></a><h3>
+<a name="id2723634"></a><h3>
 <a name="itdb-write-file"></a>itdb_write_file ()</h3>
-<a class="indexterm" name="id2812634"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2723647"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_write_file                     (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          const <a
@@ -976,9 +976,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2830003"></a><h3>
+<a name="id2725443"></a><h3>
 <a name="itdb-shuffle-write"></a>itdb_shuffle_write ()</h3>
-<a class="indexterm" name="id2830013"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2725454"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_shuffle_write                  (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          <a
@@ -1022,9 +1022,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2830118"></a><h3>
+<a name="id2725559"></a><h3>
 <a name="itdb-shuffle-write-file"></a>itdb_shuffle_write_file ()</h3>
-<a class="indexterm" name="id2830128"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2725569"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_shuffle_write_file             (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          const <a
@@ -1069,9 +1069,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2830241"></a><h3>
+<a name="id2725681"></a><h3>
 <a name="itdb-duplicate"></a>itdb_duplicate ()</h3>
-<a class="indexterm" name="id2830252"></a><pre class="programlisting"><a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      itdb_duplicate                      (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2725692"></a><pre class="programlisting"><a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      itdb_duplicate                      (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Duplicate <em class="parameter"><code>itdb</code></em> 
 FIXME: not implemented yet</p>
@@ -1096,9 +1096,9 @@
 </div>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2830319"></a><div class="refsect2" lang="en"><a name="id2830320"></a></div>
+<a name="id2725759"></a><div class="refsect2" lang="en"><a name="id2725760"></a></div>
 <hr>
-<div class="refsect2" lang="en"><a name="id2830321"></a></div>
+<div class="refsect2" lang="en"><a name="id2725761"></a></div>
 </div>
 </div>
 </body>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-Photo-database.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-Photo-database.html	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-Photo-database.html	2009-06-19 20:28:03 UTC (rev 384)
@@ -22,16 +22,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td>&#160;</td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2806096" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2706336" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2844658" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2740334" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-Photo-database"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2806096"></a><span class="refentrytitle">Photo database</span>
+<a name="id2706336"></a><span class="refentrytitle">Photo database</span>
 </h2>
 <p>Photo database &#8212; Functions to create, read, write the photo database</p>
 </td>
@@ -131,7 +131,7 @@
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2844658"></a><h2>Description</h2>
+<a name="id2740334"></a><h2>Description</h2>
 <p>
 These functions are for creating, reading, and writing the photo
 database.
@@ -208,11 +208,11 @@
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2856407"></a><h2>Details</h2>
+<a name="id2745883"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2856418"></a><h3>
+<a name="id2745893"></a><h3>
 <a name="Itdb-PhotoDB"></a>Itdb_PhotoDB</h3>
-<a class="indexterm" name="id2856433"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2745908"></a><pre class="programlisting">typedef struct {
     GList *photos;
     GList *photoalbums;
     Itdb_Device *device;
@@ -315,9 +315,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2856738"></a><h3>
+<a name="id2751958"></a><h3>
 <a name="itdb-photodb-create"></a>itdb_photodb_create ()</h3>
-<a class="indexterm" name="id2856752"></a><pre class="programlisting"><a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a>*       itdb_photodb_create                 (const <a
+<a class="indexterm" name="id2751973"></a><pre class="programlisting"><a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a>*       itdb_photodb_create                 (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a> *mountpoint);</pre>
 <p>
@@ -349,9 +349,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2856842"></a><h3>
+<a name="id2752062"></a><h3>
 <a name="itdb-photodb-free"></a>itdb_photodb_free ()</h3>
-<a class="indexterm" name="id2856857"></a><pre class="programlisting">void                itdb_photodb_free                   (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *photodb);</pre>
+<a class="indexterm" name="id2752076"></a><pre class="programlisting">void                itdb_photodb_free                   (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *photodb);</pre>
 <p>
 Free the memory taken by <em class="parameter"><code>photodb</code></em>.</p>
 <p>
@@ -370,9 +370,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2856927"></a><h3>
+<a name="id2752146"></a><h3>
 <a name="itdb-photodb-parse"></a>itdb_photodb_parse ()</h3>
-<a class="indexterm" name="id2856941"></a><pre class="programlisting"><a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a>*       itdb_photodb_parse                  (const <a
+<a class="indexterm" name="id2752161"></a><pre class="programlisting"><a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a>*       itdb_photodb_parse                  (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a> *mp,
                                                          <a
@@ -409,9 +409,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2857039"></a><h3>
+<a name="id2752258"></a><h3>
 <a name="itdb-photodb-write"></a>itdb_photodb_write ()</h3>
-<a class="indexterm" name="id2857053"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2752273"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_photodb_write                  (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *photodb,
                                                          <a
@@ -454,9 +454,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2857167"></a><h3>
+<a name="id2752387"></a><h3>
 <a name="itdb-photodb-add-photo"></a>itdb_photodb_add_photo ()</h3>
-<a class="indexterm" name="id2857181"></a><pre class="programlisting"><a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_photodb_add_photo              (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
+<a class="indexterm" name="id2752400"></a><pre class="programlisting"><a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_photodb_add_photo              (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
                                                          const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a> *filename,
@@ -526,9 +526,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2857398"></a><h3>
+<a name="id2752617"></a><h3>
 <a name="itdb-photodb-add-photo-from-data"></a>itdb_photodb_add_photo_from_data ()</h3>
-<a class="indexterm" name="id2857413"></a><pre class="programlisting"><a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_photodb_add_photo_from_data    (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
+<a class="indexterm" name="id2752633"></a><pre class="programlisting"><a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_photodb_add_photo_from_data    (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
                                                          const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guchar"
 >guchar</a> *image_data,
@@ -607,9 +607,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2857654"></a><h3>
+<a name="id2752874"></a><h3>
 <a name="itdb-photodb-add-photo-from-pixbuf"></a>itdb_photodb_add_photo_from_pixbuf ()</h3>
-<a class="indexterm" name="id2857669"></a><pre class="programlisting"><a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_photodb_add_photo_from_pixbuf  (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
+<a class="indexterm" name="id2752889"></a><pre class="programlisting"><a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a>*       itdb_photodb_add_photo_from_pixbuf  (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
                                                          <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
 >gpointer</a> pixbuf,
@@ -681,9 +681,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2857893"></a><h3>
+<a name="id2753112"></a><h3>
 <a name="itdb-photodb-remove-photo"></a>itdb_photodb_remove_photo ()</h3>
-<a class="indexterm" name="id2857907"></a><pre class="programlisting">void                itdb_photodb_remove_photo           (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
+<a class="indexterm" name="id2753126"></a><pre class="programlisting">void                itdb_photodb_remove_photo           (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
                                                          <a class="link" href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a> *album,
                                                          <a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *photo);</pre>
 <p>
@@ -729,9 +729,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2858058"></a><h3>
+<a name="id2753278"></a><h3>
 <a name="Itdb-PhotoAlbum"></a>Itdb_PhotoAlbum</h3>
-<a class="indexterm" name="id2858073"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2753293"></a><pre class="programlisting">typedef struct {
     Itdb_PhotoDB *photodb;
     gchar *name;
     GList *members;
@@ -960,9 +960,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2859140"></a><h3>
+<a name="id2753922"></a><h3>
 <a name="itdb-photodb-photoalbum-create"></a>itdb_photodb_photoalbum_create ()</h3>
-<a class="indexterm" name="id2859154"></a><pre class="programlisting"><a class="link" href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a>*    itdb_photodb_photoalbum_create      (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
+<a class="indexterm" name="id2753937"></a><pre class="programlisting"><a class="link" href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a>*    itdb_photodb_photoalbum_create      (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
                                                          const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a> *albumname,
@@ -1006,9 +1006,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2859258"></a><h3>
+<a name="id2754860"></a><h3>
 <a name="itdb-photodb-photoalbum-add-photo"></a>itdb_photodb_photoalbum_add_photo ()</h3>
-<a class="indexterm" name="id2859273"></a><pre class="programlisting">void                itdb_photodb_photoalbum_add_photo   (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
+<a class="indexterm" name="id2754875"></a><pre class="programlisting">void                itdb_photodb_photoalbum_add_photo   (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
                                                          <a class="link" href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a> *album,
                                                          <a class="link" href="libgpod-Artwork.html#Itdb-Artwork">Itdb_Artwork</a> *photo,
                                                          <a
@@ -1055,9 +1055,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2859429"></a><h3>
+<a name="id2755030"></a><h3>
 <a name="itdb-photodb-photoalbum-by-name"></a>itdb_photodb_photoalbum_by_name ()</h3>
-<a class="indexterm" name="id2859443"></a><pre class="programlisting"><a class="link" href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a>*    itdb_photodb_photoalbum_by_name     (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
+<a class="indexterm" name="id2755045"></a><pre class="programlisting"><a class="link" href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a>*    itdb_photodb_photoalbum_by_name     (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
                                                          const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a> *albumname);</pre>
@@ -1095,9 +1095,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2859539"></a><h3>
+<a name="id2755140"></a><h3>
 <a name="itdb-photodb-photoalbum-remove"></a>itdb_photodb_photoalbum_remove ()</h3>
-<a class="indexterm" name="id2859553"></a><pre class="programlisting">void                itdb_photodb_photoalbum_remove      (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
+<a class="indexterm" name="id2755155"></a><pre class="programlisting">void                itdb_photodb_photoalbum_remove      (<a class="link" href="libgpod-Photo-database.html#Itdb-PhotoDB">Itdb_PhotoDB</a> *db,
                                                          <a class="link" href="libgpod-Photo-database.html#Itdb-PhotoAlbum">Itdb_PhotoAlbum</a> *album,
                                                          <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
@@ -1142,9 +1142,9 @@
 </div>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2859676"></a><div class="refsect2" lang="en"><a name="id2859677"></a></div>
+<a name="id2755278"></a><div class="refsect2" lang="en"><a name="id2755279"></a></div>
 <hr>
-<div class="refsect2" lang="en"><a name="id2859678"></a></div>
+<div class="refsect2" lang="en"><a name="id2755280"></a></div>
 </div>
 </div>
 </body>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-Playlists.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-Playlists.html	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-Playlists.html	2009-06-19 20:28:03 UTC (rev 384)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="libgpod-Smart-Playlists.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2798685" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2697296" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2786592" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2717320" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-Playlists"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2798685"></a><span class="refentrytitle">Playlists</span>
+<a name="id2697296"></a><span class="refentrytitle">Playlists</span>
 </h2>
 <p>Playlists &#8212; Data structure to represent an iPod playlist</p>
 </td>
@@ -112,7 +112,7 @@
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2786592"></a><h2>Description</h2>
+<a name="id2717320"></a><h2>Description</h2>
 <p>
 These functions and structures allow for adding and removing playlists,
 adding and removing tracks from playlists, sorting playlists, finding tracks in
@@ -120,11 +120,11 @@
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2786610"></a><h2>Details</h2>
+<a name="id2717339"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2786621"></a><h3>
+<a name="id2717350"></a><h3>
 <a name="Itdb-Playlist"></a>Itdb_Playlist</h3>
-<a class="indexterm" name="id2786633"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2717362"></a><pre class="programlisting">typedef struct {
     Itdb_iTunesDB *itdb;
     gchar *name;
     guint8 type;
@@ -337,9 +337,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2832173"></a><h3>
+<a name="id2728343"></a><h3>
 <a name="ItdbPlaylistSortOrder"></a>enum ItdbPlaylistSortOrder</h3>
-<a class="indexterm" name="id2832186"></a><pre class="programlisting">typedef enum
+<a class="indexterm" name="id2728357"></a><pre class="programlisting">typedef enum
 {
     ITDB_PSO_MANUAL = 1,
 /*    ITDB_PSO_UNKNOWN = 2, */
@@ -516,9 +516,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2832781"></a><h3>
+<a name="id2728951"></a><h3>
 <a name="itdb-playlist-new"></a>itdb_playlist_new ()</h3>
-<a class="indexterm" name="id2832793"></a><pre class="programlisting"><a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_new                   (const <a
+<a class="indexterm" name="id2728964"></a><pre class="programlisting"><a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_new                   (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a> *title,
                                                          <a
@@ -555,9 +555,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2832914"></a><h3>
+<a name="id2729084"></a><h3>
 <a name="itdb-playlist-free"></a>itdb_playlist_free ()</h3>
-<a class="indexterm" name="id2832926"></a><pre class="programlisting">void                itdb_playlist_free                  (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
+<a class="indexterm" name="id2729097"></a><pre class="programlisting">void                itdb_playlist_free                  (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Frees the memory used by playlist <em class="parameter"><code>pl</code></em>.</p>
 <p>
@@ -574,9 +574,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2832990"></a><h3>
+<a name="id2729160"></a><h3>
 <a name="itdb-playlist-duplicate"></a>itdb_playlist_duplicate ()</h3>
-<a class="indexterm" name="id2833001"></a><pre class="programlisting"><a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_duplicate             (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
+<a class="indexterm" name="id2729171"></a><pre class="programlisting"><a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_duplicate             (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Duplicates an existing playlist. <em class="parameter"><code>pl_dup-&gt;id</code></em> is set to zero, so
 that it will be set to a unique value when adding it to an
@@ -604,9 +604,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2833109"></a><h3>
+<a name="id2729280"></a><h3>
 <a name="itdb-playlist-add"></a>itdb_playlist_add ()</h3>
-<a class="indexterm" name="id2833122"></a><pre class="programlisting">void                itdb_playlist_add                   (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+<a class="indexterm" name="id2729292"></a><pre class="programlisting">void                itdb_playlist_add                   (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          <a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
                                                          <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint32"
@@ -643,9 +643,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2833281"></a><h3>
+<a name="id2729451"></a><h3>
 <a name="itdb-playlist-move"></a>itdb_playlist_move ()</h3>
-<a class="indexterm" name="id2833293"></a><pre class="programlisting">void                itdb_playlist_move                  (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
+<a class="indexterm" name="id2729464"></a><pre class="programlisting">void                itdb_playlist_move                  (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
                                                          <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
 >guint32</a> pos);</pre>
@@ -672,9 +672,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2833383"></a><h3>
+<a name="id2729553"></a><h3>
 <a name="itdb-playlist-remove"></a>itdb_playlist_remove ()</h3>
-<a class="indexterm" name="id2833394"></a><pre class="programlisting">void                itdb_playlist_remove                (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
+<a class="indexterm" name="id2729564"></a><pre class="programlisting">void                itdb_playlist_remove                (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Removes <em class="parameter"><code>pl</code></em> from the <a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB"><span class="type">Itdb_iTunesDB</span></a> it's associated with
 and frees memory</p>
@@ -692,9 +692,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2833464"></a><h3>
+<a name="id2729634"></a><h3>
 <a name="itdb-playlist-unlink"></a>itdb_playlist_unlink ()</h3>
-<a class="indexterm" name="id2833475"></a><pre class="programlisting">void                itdb_playlist_unlink                (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
+<a class="indexterm" name="id2729646"></a><pre class="programlisting">void                itdb_playlist_unlink                (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Remove <em class="parameter"><code>pl</code></em> from the <a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB"><span class="type">Itdb_iTunesDB</span></a> it's associated with but do not
 free memory. <em class="parameter"><code>pl-&gt;itdb</code></em> is set to NULL after this function returns</p>
@@ -712,9 +712,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2833552"></a><h3>
+<a name="id2729722"></a><h3>
 <a name="itdb-playlist-add-track"></a>itdb_playlist_add_track ()</h3>
-<a class="indexterm" name="id2833563"></a><pre class="programlisting">void                itdb_playlist_add_track             (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
+<a class="indexterm" name="id2729734"></a><pre class="programlisting">void                itdb_playlist_add_track             (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
                                                          <a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
                                                          <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint32"
@@ -747,9 +747,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2840036"></a><h3>
+<a name="id2729864"></a><h3>
 <a name="itdb-playlist-remove-track"></a>itdb_playlist_remove_track ()</h3>
-<a class="indexterm" name="id2840046"></a><pre class="programlisting">void                itdb_playlist_remove_track          (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
+<a class="indexterm" name="id2735447"></a><pre class="programlisting">void                itdb_playlist_remove_track          (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
                                                          <a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
 <p>
 Removes <em class="parameter"><code>track</code></em> from <em class="parameter"><code>pl</code></em>. If <em class="parameter"><code>pl</code></em> is NULL, removes <em class="parameter"><code>track</code></em> from the
@@ -777,9 +777,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2840172"></a><h3>
+<a name="id2735571"></a><h3>
 <a name="itdb-playlist-contains-track"></a>itdb_playlist_contains_track ()</h3>
-<a class="indexterm" name="id2840184"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2735583"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_playlist_contains_track        (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
                                                          <a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
@@ -811,9 +811,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2840289"></a><h3>
+<a name="id2735688"></a><h3>
 <a name="itdb-playlist-contain-track-number"></a>itdb_playlist_contain_track_number ()</h3>
-<a class="indexterm" name="id2840303"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2735702"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
 >guint32</a>             itdb_playlist_contain_track_number  (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *tr);</pre>
 <p>
@@ -840,9 +840,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2840375"></a><h3>
+<a name="id2735774"></a><h3>
 <a name="itdb-playlist-tracks-number"></a>itdb_playlist_tracks_number ()</h3>
-<a class="indexterm" name="id2840386"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2735785"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
 >guint32</a>             itdb_playlist_tracks_number         (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
@@ -868,9 +868,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2840456"></a><h3>
+<a name="id2735855"></a><h3>
 <a name="itdb-playlist-mpl"></a>itdb_playlist_mpl ()</h3>
-<a class="indexterm" name="id2840466"></a><pre class="programlisting"><a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_mpl                   (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2735865"></a><pre class="programlisting"><a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_mpl                   (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Gets the master playlist of <em class="parameter"><code>itdb</code></em></p>
 <p>
@@ -894,9 +894,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2840536"></a><h3>
+<a name="id2735935"></a><h3>
 <a name="itdb-playlist-is-mpl"></a>itdb_playlist_is_mpl ()</h3>
-<a class="indexterm" name="id2840548"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2735947"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_playlist_is_mpl                (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
@@ -925,9 +925,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2840625"></a><h3>
+<a name="id2736024"></a><h3>
 <a name="itdb-playlist-set-mpl"></a>itdb_playlist_set_mpl ()</h3>
-<a class="indexterm" name="id2840638"></a><pre class="programlisting">void                itdb_playlist_set_mpl               (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
+<a class="indexterm" name="id2736037"></a><pre class="programlisting">void                itdb_playlist_set_mpl               (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Sets <em class="parameter"><code>pl</code></em> to be a master playlist</p>
 <p>
@@ -946,9 +946,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2840699"></a><h3>
+<a name="id2736098"></a><h3>
 <a name="itdb-playlist-podcasts"></a>itdb_playlist_podcasts ()</h3>
-<a class="indexterm" name="id2840712"></a><pre class="programlisting"><a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_podcasts              (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2736111"></a><pre class="programlisting"><a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_podcasts              (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Gets the podcasts playlist of <em class="parameter"><code>itdb</code></em></p>
 <p>
@@ -976,9 +976,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2840788"></a><h3>
+<a name="id2736187"></a><h3>
 <a name="itdb-playlist-is-podcasts"></a>itdb_playlist_is_podcasts ()</h3>
-<a class="indexterm" name="id2840801"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2736200"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_playlist_is_podcasts           (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
@@ -1007,9 +1007,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2840879"></a><h3>
+<a name="id2736278"></a><h3>
 <a name="itdb-playlist-set-podcasts"></a>itdb_playlist_set_podcasts ()</h3>
-<a class="indexterm" name="id2840892"></a><pre class="programlisting">void                itdb_playlist_set_podcasts          (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
+<a class="indexterm" name="id2736291"></a><pre class="programlisting">void                itdb_playlist_set_podcasts          (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Set <em class="parameter"><code>pl</code></em> to be a podcasts playlist</p>
 <p>
@@ -1028,9 +1028,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2840953"></a><h3>
+<a name="id2736352"></a><h3>
 <a name="itdb-playlist-exists"></a>itdb_playlist_exists ()</h3>
-<a class="indexterm" name="id2840964"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2736363"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_playlist_exists                (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          <a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
@@ -1062,9 +1062,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2841068"></a><h3>
+<a name="id2736468"></a><h3>
 <a name="itdb-playlist-by-id"></a>itdb_playlist_by_id ()</h3>
-<a class="indexterm" name="id2841079"></a><pre class="programlisting"><a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_by_id                 (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+<a class="indexterm" name="id2736478"></a><pre class="programlisting"><a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_by_id                 (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint64"
 >guint64</a> id);</pre>
@@ -1097,9 +1097,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2841176"></a><h3>
+<a name="id2736575"></a><h3>
 <a name="itdb-playlist-by-nr"></a>itdb_playlist_by_nr ()</h3>
-<a class="indexterm" name="id2841186"></a><pre class="programlisting"><a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_by_nr                 (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+<a class="indexterm" name="id2736585"></a><pre class="programlisting"><a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_by_nr                 (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
 >guint32</a> num);</pre>
@@ -1132,9 +1132,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2841283"></a><h3>
+<a name="id2736682"></a><h3>
 <a name="itdb-playlist-by-name"></a>itdb_playlist_by_name ()</h3>
-<a class="indexterm" name="id2841293"></a><pre class="programlisting"><a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_by_name               (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+<a class="indexterm" name="id2736692"></a><pre class="programlisting"><a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a>*      itdb_playlist_by_name               (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a> *name);</pre>
@@ -1167,9 +1167,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2841395"></a><h3>
+<a name="id2736794"></a><h3>
 <a name="itdb-playlist-randomize"></a>itdb_playlist_randomize ()</h3>
-<a class="indexterm" name="id2841406"></a><pre class="programlisting">void                itdb_playlist_randomize             (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
+<a class="indexterm" name="id2736805"></a><pre class="programlisting">void                itdb_playlist_randomize             (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl);</pre>
 <p>
 Randomizes <em class="parameter"><code>pl</code></em></p>
 <p>
@@ -1186,9 +1186,9 @@
 </div>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2841461"></a><div class="refsect2" lang="en"><a name="id2841462"></a></div>
+<a name="id2736860"></a><div class="refsect2" lang="en"><a name="id2736861"></a></div>
 <hr>
-<div class="refsect2" lang="en"><a name="id2841463"></a></div>
+<div class="refsect2" lang="en"><a name="id2736862"></a></div>
 </div>
 </div>
 </body>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-Smart-Playlists.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-Smart-Playlists.html	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-Smart-Playlists.html	2009-06-19 20:28:03 UTC (rev 384)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="libgpod-Artwork.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2825385" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2707312" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2809307" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2724833" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-Smart-Playlists"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2825385"></a><span class="refentrytitle">Smart Playlists</span>
+<a name="id2707312"></a><span class="refentrytitle">Smart Playlists</span>
 </h2>
 <p>Smart Playlists &#8212; Data structure to represent an iPod smart playlist</p>
 </td>
@@ -84,17 +84,17 @@
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2809307"></a><h2>Description</h2>
+<a name="id2724833"></a><h2>Description</h2>
 <p>
 These functions and structures are for dealing with smart playlists.
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2809324"></a><h2>Details</h2>
+<a name="id2724850"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2809334"></a><h3>
+<a name="id2724861"></a><h3>
 <a name="Itdb-SPLPref"></a>Itdb_SPLPref</h3>
-<a class="indexterm" name="id2834578"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2730717"></a><pre class="programlisting">typedef struct {
     guint8  liveupdate;
     guint8  checkrules;
     guint8  checklimits;
@@ -201,9 +201,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2841494"></a><h3>
+<a name="id2736889"></a><h3>
 <a name="Itdb-SPLRule"></a>Itdb_SPLRule</h3>
-<a class="indexterm" name="id2841509"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2736904"></a><pre class="programlisting">typedef struct {
     guint32 field;
     guint32 action;
     gchar *string;
@@ -378,9 +378,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2842020"></a><h3>
+<a name="id2737415"></a><h3>
 <a name="Itdb-SPLRules"></a>Itdb_SPLRules</h3>
-<a class="indexterm" name="id2842035"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2737430"></a><pre class="programlisting">typedef struct {
     guint32 unk004;
     guint32 match_operator;
     GList *rules;
@@ -456,9 +456,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2842237"></a><h3>
+<a name="id2737632"></a><h3>
 <a name="ItdbLimitSort"></a>enum ItdbLimitSort</h3>
-<a class="indexterm" name="id2842251"></a><pre class="programlisting">typedef enum {
+<a class="indexterm" name="id2737646"></a><pre class="programlisting">typedef enum {
     ITDB_LIMITSORT_RANDOM = 0x02,
     ITDB_LIMITSORT_SONG_NAME = 0x03,
     ITDB_LIMITSORT_ALBUM = 0x04,
@@ -569,9 +569,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2842631"></a><h3>
+<a name="id2738027"></a><h3>
 <a name="ItdbLimitType"></a>enum ItdbLimitType</h3>
-<a class="indexterm" name="id2842645"></a><pre class="programlisting">typedef enum {
+<a class="indexterm" name="id2738042"></a><pre class="programlisting">typedef enum {
     ITDB_LIMITTYPE_MINUTES = 0x01,
     ITDB_LIMITTYPE_MB      = 0x02,
     ITDB_LIMITTYPE_SONGS   = 0x03,
@@ -619,9 +619,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2842785"></a><h3>
+<a name="id2738181"></a><h3>
 <a name="ItdbSPLAction"></a>enum ItdbSPLAction</h3>
-<a class="indexterm" name="id2842800"></a><pre class="programlisting">typedef enum {
+<a class="indexterm" name="id2738196"></a><pre class="programlisting">typedef enum {
     ITDB_SPLACTION_IS_INT = 0x00000001,
     ITDB_SPLACTION_IS_GREATER_THAN = 0x00000010,
     ITDB_SPLACTION_IS_LESS_THAN = 0x00000040,
@@ -777,9 +777,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2843293"></a><h3>
+<a name="id2738690"></a><h3>
 <a name="ItdbSPLActionLast"></a>enum ItdbSPLActionLast</h3>
-<a class="indexterm" name="id2843308"></a><pre class="programlisting">typedef enum {
+<a class="indexterm" name="id2738704"></a><pre class="programlisting">typedef enum {
     ITDB_SPLACTION_LAST_DAYS_VALUE = 86400,    /* nr of secs in 24 hours */
     ITDB_SPLACTION_LAST_WEEKS_VALUE = 604800,  /* nr of secs in 7 days   */
     ITDB_SPLACTION_LAST_MONTHS_VALUE = 2628000,/* nr of secs in 30.4167
@@ -818,9 +818,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2843424"></a><h3>
+<a name="id2738820"></a><h3>
 <a name="ItdbSPLActionType"></a>enum ItdbSPLActionType</h3>
-<a class="indexterm" name="id2843438"></a><pre class="programlisting">typedef enum
+<a class="indexterm" name="id2738835"></a><pre class="programlisting">typedef enum
 {
     ITDB_SPLAT_STRING = 1,
     ITDB_SPLAT_INT,
@@ -905,9 +905,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2845696"></a><h3>
+<a name="id2741084"></a><h3>
 <a name="ItdbSPLField"></a>enum ItdbSPLField</h3>
-<a class="indexterm" name="id2845708"></a><pre class="programlisting">typedef enum {
+<a class="indexterm" name="id2741097"></a><pre class="programlisting">typedef enum {
     ITDB_SPLFIELD_SONG_NAME = 0x02,
     ITDB_SPLFIELD_ALBUM = 0x03,
     ITDB_SPLFIELD_ARTIST = 0x04,
@@ -1111,9 +1111,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2846355"></a><h3>
+<a name="id2741743"></a><h3>
 <a name="ItdbSPLFieldType"></a>enum ItdbSPLFieldType</h3>
-<a class="indexterm" name="id2846367"></a><pre class="programlisting">typedef enum
+<a class="indexterm" name="id2741755"></a><pre class="programlisting">typedef enum
 {
     ITDB_SPLFT_STRING = 1,
     ITDB_SPLFT_INT,
@@ -1174,9 +1174,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2846529"></a><h3>
+<a name="id2741917"></a><h3>
 <a name="ItdbSPLMatch"></a>enum ItdbSPLMatch</h3>
-<a class="indexterm" name="id2846540"></a><pre class="programlisting">typedef enum {
+<a class="indexterm" name="id2741928"></a><pre class="programlisting">typedef enum {
     ITDB_SPLMATCH_AND = 0,
     ITDB_SPLMATCH_OR = 1
 } ItdbSPLMatch;
@@ -1205,9 +1205,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2846604"></a><h3>
+<a name="id2741992"></a><h3>
 <a name="ITDB-SPL-DATE-IDENTIFIER:CAPS"></a>ITDB_SPL_DATE_IDENTIFIER</h3>
-<a class="indexterm" name="id2846618"></a><pre class="programlisting">#define ITDB_SPL_DATE_IDENTIFIER (G_GINT64_CONSTANT (0x2dae2dae2dae2daeU))
+<a class="indexterm" name="id2742006"></a><pre class="programlisting">#define ITDB_SPL_DATE_IDENTIFIER (G_GINT64_CONSTANT (0x2dae2dae2dae2daeU))
 </pre>
 <p>
 Identifier for smart playlist date fields</p>
@@ -1219,9 +1219,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2846643"></a><h3>
+<a name="id2742031"></a><h3>
 <a name="ITDB-SPL-STRING-MAXLEN:CAPS"></a>ITDB_SPL_STRING_MAXLEN</h3>
-<a class="indexterm" name="id2846656"></a><pre class="programlisting">#define ITDB_SPL_STRING_MAXLEN 255
+<a class="indexterm" name="id2742043"></a><pre class="programlisting">#define ITDB_SPL_STRING_MAXLEN 255
 </pre>
 <p>
 Maximum string length for smart playlists</p>
@@ -1233,9 +1233,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2846679"></a><h3>
+<a name="id2742067"></a><h3>
 <a name="itdb-splr-get-field-type"></a>itdb_splr_get_field_type ()</h3>
-<a class="indexterm" name="id2846690"></a><pre class="programlisting"><a class="link" href="libgpod-Smart-Playlists.html#ItdbSPLFieldType">ItdbSPLFieldType</a>    itdb_splr_get_field_type            (const <a class="link" href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr);</pre>
+<a class="indexterm" name="id2742078"></a><pre class="programlisting"><a class="link" href="libgpod-Smart-Playlists.html#ItdbSPLFieldType">ItdbSPLFieldType</a>    itdb_splr_get_field_type            (const <a class="link" href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr);</pre>
 <p>
 Gets the type of the field of the <em class="parameter"><code>splr</code></em> rule</p>
 <p>
@@ -1260,9 +1260,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2846768"></a><h3>
+<a name="id2742155"></a><h3>
 <a name="itdb-splr-get-action-type"></a>itdb_splr_get_action_type ()</h3>
-<a class="indexterm" name="id2846779"></a><pre class="programlisting"><a class="link" href="libgpod-Smart-Playlists.html#ItdbSPLActionType">ItdbSPLActionType</a>   itdb_splr_get_action_type           (const <a class="link" href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr);</pre>
+<a class="indexterm" name="id2742166"></a><pre class="programlisting"><a class="link" href="libgpod-Smart-Playlists.html#ItdbSPLActionType">ItdbSPLActionType</a>   itdb_splr_get_action_type           (const <a class="link" href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr);</pre>
 <p>
 Gets the type of the action associated with <em class="parameter"><code>splr</code></em>.</p>
 <p>
@@ -1286,9 +1286,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2846845"></a><h3>
+<a name="id2742233"></a><h3>
 <a name="itdb-splr-validate"></a>itdb_splr_validate ()</h3>
-<a class="indexterm" name="id2846856"></a><pre class="programlisting">void                itdb_splr_validate                  (<a class="link" href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr);</pre>
+<a class="indexterm" name="id2742244"></a><pre class="programlisting">void                itdb_splr_validate                  (<a class="link" href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr);</pre>
 <p>
 Validates a smart playlist rule</p>
 <p>
@@ -1305,9 +1305,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2846907"></a><h3>
+<a name="id2742295"></a><h3>
 <a name="itdb-splr-remove"></a>itdb_splr_remove ()</h3>
-<a class="indexterm" name="id2846917"></a><pre class="programlisting">void                itdb_splr_remove                    (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
+<a class="indexterm" name="id2742305"></a><pre class="programlisting">void                itdb_splr_remove                    (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
                                                          <a class="link" href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr);</pre>
 <p>
 Removes the smart playlist rule <em class="parameter"><code>splr</code></em> from playlist <em class="parameter"><code>pl</code></em>. The memory
@@ -1333,9 +1333,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2847003"></a><h3>
+<a name="id2742391"></a><h3>
 <a name="itdb-splr-new"></a>itdb_splr_new ()</h3>
-<a class="indexterm" name="id2847013"></a><pre class="programlisting"><a class="link" href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a>*       itdb_splr_new                       (void);</pre>
+<a class="indexterm" name="id2742401"></a><pre class="programlisting"><a class="link" href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a>*       itdb_splr_new                       (void);</pre>
 <p>
 Creates a new default smart rule</p>
 <p>
@@ -1353,9 +1353,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2847064"></a><h3>
+<a name="id2742452"></a><h3>
 <a name="itdb-splr-add"></a>itdb_splr_add ()</h3>
-<a class="indexterm" name="id2847074"></a><pre class="programlisting">void                itdb_splr_add                       (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
+<a class="indexterm" name="id2742462"></a><pre class="programlisting">void                itdb_splr_add                       (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
                                                          <a class="link" href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr,
                                                          <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
@@ -1390,9 +1390,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2847214"></a><h3>
+<a name="id2742602"></a><h3>
 <a name="itdb-splr-add-new"></a>itdb_splr_add_new ()</h3>
-<a class="indexterm" name="id2847225"></a><pre class="programlisting"><a class="link" href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a>*       itdb_splr_add_new                   (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
+<a class="indexterm" name="id2742612"></a><pre class="programlisting"><a class="link" href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a>*       itdb_splr_add_new                   (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *pl,
                                                          <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
 >gint</a> pos);</pre>
@@ -1427,9 +1427,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2847343"></a><h3>
+<a name="id2742731"></a><h3>
 <a name="itdb-spl-copy-rules"></a>itdb_spl_copy_rules ()</h3>
-<a class="indexterm" name="id2847353"></a><pre class="programlisting">void                itdb_spl_copy_rules                 (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *dest,
+<a class="indexterm" name="id2742741"></a><pre class="programlisting">void                itdb_spl_copy_rules                 (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *dest,
                                                          <a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *src);</pre>
 <p>
 Copy all relevant information for smart playlist from playlist <em class="parameter"><code>src</code></em>
@@ -1456,9 +1456,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2847447"></a><h3>
+<a name="id2742835"></a><h3>
 <a name="itdb-splr-eval"></a>itdb_splr_eval ()</h3>
-<a class="indexterm" name="id2847458"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2742845"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_splr_eval                      (<a class="link" href="libgpod-Smart-Playlists.html#Itdb-SPLRule">Itdb_SPLRule</a> *splr,
                                                          <a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
@@ -1490,9 +1490,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2847569"></a><h3>
+<a name="id2742956"></a><h3>
 <a name="itdb-spl-update"></a>itdb_spl_update ()</h3>
-<a class="indexterm" name="id2847579"></a><pre class="programlisting">void                itdb_spl_update                     (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *spl);</pre>
+<a class="indexterm" name="id2742967"></a><pre class="programlisting">void                itdb_spl_update                     (<a class="link" href="libgpod-Playlists.html#Itdb-Playlist">Itdb_Playlist</a> *spl);</pre>
 <p>
 Updates the content of the smart playlist <em class="parameter"><code>spl</code></em> (meant to be called
 if the tracks stored in the <a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB"><span class="type">Itdb_iTunesDB</span></a> associated with <em class="parameter"><code>spl</code></em>
@@ -1513,9 +1513,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2847660"></a><h3>
+<a name="id2743048"></a><h3>
 <a name="itdb-spl-update-all"></a>itdb_spl_update_all ()</h3>
-<a class="indexterm" name="id2847670"></a><pre class="programlisting">void                itdb_spl_update_all                 (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2743058"></a><pre class="programlisting">void                itdb_spl_update_all                 (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Updates all smart playlists contained in <em class="parameter"><code>itdb</code></em></p>
 <p>
@@ -1532,9 +1532,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2847726"></a><h3>
+<a name="id2743113"></a><h3>
 <a name="itdb-spl-update-live"></a>itdb_spl_update_live ()</h3>
-<a class="indexterm" name="id2847738"></a><pre class="programlisting">void                itdb_spl_update_live                (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2743126"></a><pre class="programlisting">void                itdb_spl_update_live                (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Updates all smart playlists contained in <em class="parameter"><code>itdb</code></em> which have the
 <em class="parameter"><code>liveupdate</code></em> flag set.</p>
@@ -1554,15 +1554,15 @@
 </div>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2847807"></a><h2>See Also</h2>
+<a name="id2743194"></a><h2>See Also</h2>
 <p>
 <a class="link" href="libgpod-Playlists.html" title="Playlists">Playlists</a>
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2847821"></a><div class="refsect2" lang="en"><a name="id2847822"></a></div>
+<a name="id2743209"></a><div class="refsect2" lang="en"><a name="id2743210"></a></div>
 <hr>
-<div class="refsect2" lang="en"><a name="id2847824"></a></div>
+<div class="refsect2" lang="en"><a name="id2743211"></a></div>
 </div>
 </div>
 </body>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-The-Itdb-iTunesDB-structure.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-The-Itdb-iTunesDB-structure.html	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-The-Itdb-iTunesDB-structure.html	2009-06-19 20:28:03 UTC (rev 384)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="libgpod-File-handling-functions.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2801740" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2696882" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2734714" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2629897" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-The-Itdb-iTunesDB-structure"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2801740"></a><span class="refentrytitle">iPod database reading/writing</span>
+<a name="id2696882"></a><span class="refentrytitle">iPod database reading/writing</span>
 </h2>
 <p>iPod database reading/writing &#8212; Functions to read, write, and create an iPod database</p>
 </td>
@@ -68,6 +68,20 @@
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*        <a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-get-mountpoint">itdb_get_mountpoint</a>                 (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
 <a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
+>gboolean</a>            <a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-init-ipod">itdb_init_ipod</a>                      (const <a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
+>gchar</a> *mountpoint,
+                                                         const <a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
+>gchar</a> *model_number,
+                                                         const <a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
+>gchar</a> *ipod_name,
+                                                         <a
+href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
+>GError</a> **error);
+<a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
 >guint32</a>             <a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#itdb-tracks-number">itdb_tracks_number</a>                  (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);
 <a
@@ -87,7 +101,7 @@
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2734714"></a><h2>Description</h2>
+<a name="id2629897"></a><h2>Description</h2>
 <p>
 These functions are for reading, writing, creating, and deleting an iPod
 database and getting the total number of tracks and playlists.
@@ -168,11 +182,11 @@
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2739470"></a><h2>Details</h2>
+<a name="id2634654"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2739481"></a><h3>
+<a name="id2634665"></a><h3>
 <a name="Itdb-iTunesDB"></a>Itdb_iTunesDB</h3>
-<a class="indexterm" name="id2739493"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2634677"></a><pre class="programlisting">typedef struct {
     GList *tracks;
     GList *playlists;
     gchar *filename;
@@ -297,9 +311,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2783350"></a><h3>
+<a name="id2678534"></a><h3>
 <a name="ItdbFileError"></a>enum ItdbFileError</h3>
-<a class="indexterm" name="id2783362"></a><pre class="programlisting">typedef enum
+<a class="indexterm" name="id2678546"></a><pre class="programlisting">typedef enum
 {
     ITDB_FILE_ERROR_SEEK,
     ITDB_FILE_ERROR_CORRUPT,
@@ -346,9 +360,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2783499"></a><h3>
+<a name="id2678683"></a><h3>
 <a name="itdb-new"></a>itdb_new ()</h3>
-<a class="indexterm" name="id2783511"></a><pre class="programlisting"><a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      itdb_new                            (void);</pre>
+<a class="indexterm" name="id2678695"></a><pre class="programlisting"><a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      itdb_new                            (void);</pre>
 <p>
 Creates a new Itdb_iTunesDB with the unknowns filled in to reasonable
 values.</p>
@@ -367,9 +381,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2783563"></a><h3>
+<a name="id2678746"></a><h3>
 <a name="itdb-free"></a>itdb_free ()</h3>
-<a class="indexterm" name="id2783575"></a><pre class="programlisting">void                itdb_free                           (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
+<a class="indexterm" name="id2678759"></a><pre class="programlisting">void                itdb_free                           (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
 Free the memory taken by <em class="parameter"><code>itdb</code></em>.</p>
 <p>
@@ -386,9 +400,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2783638"></a><h3>
+<a name="id2678822"></a><h3>
 <a name="itdb-parse"></a>itdb_parse ()</h3>
-<a class="indexterm" name="id2783650"></a><pre class="programlisting"><a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      itdb_parse                          (const <a
+<a class="indexterm" name="id2678834"></a><pre class="programlisting"><a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a>*      itdb_parse                          (const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a> *mp,
                                                          <a
@@ -427,9 +441,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2783783"></a><h3>
+<a name="id2678967"></a><h3>
 <a name="itdb-write"></a>itdb_write ()</h3>
-<a class="indexterm" name="id2783795"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2678979"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_write                          (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          <a
@@ -470,9 +484,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2783901"></a><h3>
+<a name="id2679085"></a><h3>
 <a name="itdb-set-mountpoint"></a>itdb_set_mountpoint ()</h3>
-<a class="indexterm" name="id2783916"></a><pre class="programlisting">void                itdb_set_mountpoint                 (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+<a class="indexterm" name="id2679100"></a><pre class="programlisting">void                itdb_set_mountpoint                 (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a> *mp);</pre>
@@ -480,8 +494,18 @@
 Sets the mountpoint of <em class="parameter"><code>itdb</code></em>. Always use this function to set the
 mountpoint of an <a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB"><span class="type">Itdb_iTunesDB</span></a> as it will reset the number of
 available /iPod_Control/Music/F.. dirs. It doesn't attempt to parse
-an iPod database that may be present on the iPod at <em class="parameter"><code>mp</code></em>.</p>
+an iPod database that may be present on the iPod at <em class="parameter"><code>mp</code></em>.
+</p>
 <p>
+</p>
+<div class="note" style="margin-left: 0.5in; margin-right: 0.5in;">
+<h3 class="title">Note</h3>
+<p>Calling this function removes the artwork in the
+<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB"><span class="type">Itdb_iTunesDB</span></a> database using this <a class="link" href="libgpod-Device.html#Itdb-Device"><span class="type">Itdb_Device</span></a> which was read from the
+iPod.</p>
+</div>
+<p>.</p>
+<p>
 
 </p>
 <div class="variablelist"><table border="0">
@@ -504,9 +528,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2784023"></a><h3>
+<a name="id2679231"></a><h3>
 <a name="itdb-get-mountpoint"></a>itdb_get_mountpoint ()</h3>
-<a class="indexterm" name="id2784038"></a><pre class="programlisting">const <a
+<a class="indexterm" name="id2679245"></a><pre class="programlisting">const <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
 >gchar</a>*        itdb_get_mountpoint                 (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
@@ -536,9 +560,78 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2784125"></a><h3>
+<a name="id2679333"></a><h3>
+<a name="itdb-init-ipod"></a>itdb_init_ipod ()</h3>
+<a class="indexterm" name="id2679347"></a><pre class="programlisting"><a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
+>gboolean</a>            itdb_init_ipod                      (const <a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
+>gchar</a> *mountpoint,
+                                                         const <a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
+>gchar</a> *model_number,
+                                                         const <a
+href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"
+>gchar</a> *ipod_name,
+                                                         <a
+href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
+>GError</a> **error);</pre>
+<p>
+Initialise an iPod device from scratch. The function attempts to
+create a blank database, complete with master playlist and device
+information as well as the directory structure required for the
+type of iPod.
+<em class="parameter"><code>model_number</code></em> is used to tell libgpod about the exact iPod
+model, which is needed for proper artwork writing. <em class="parameter"><code>model_number</code></em> can be
+found from the table returned by itdb_device_get_ipod_info_table (for
+example). On recent distros with iPods released
+in the last few years (starting with the iPod Color), it should be fine
+to pass in a NULL <em class="parameter"><code>model_number</code></em> while still getting artwork writing.</p>
+<p>
+
+</p>
+<div class="variablelist"><table border="0">
+<col align="left" valign="top">
+<tbody>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>mountpoint</code></em>&#160;:</span></p></td>
+<td>   the iPod mountpoint
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>model_number</code></em>&#160;:</span></p></td>
+<td> the iPod model number, can be NULL
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>ipod_name</code></em>&#160;:</span></p></td>
+<td>    the name to give to the iPod. Will be displayed in
+               gtkpod or itunes
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><em class="parameter"><code>error</code></em>&#160;:</span></p></td>
+<td>        return location for a <a
+href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"
+><span class="type">GError</span></a> or NULL
+</td>
+</tr>
+<tr>
+<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
+<td> TRUE when successful, FALSE if a failure has occurred.
+
+</td>
+</tr>
+</tbody>
+</table></div>
+<p class="since">Since  0.4.0
+</p>
+</div>
+<hr>
+<div class="refsect2" lang="en">
+<a name="id2679515"></a><h3>
 <a name="itdb-tracks-number"></a>itdb_tracks_number ()</h3>
-<a class="indexterm" name="id2784138"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2679527"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
 >guint32</a>             itdb_tracks_number                  (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
@@ -564,9 +657,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2784215"></a><h3>
+<a name="id2679605"></a><h3>
 <a name="itdb-tracks-number-nontransferred"></a>itdb_tracks_number_nontransferred ()</h3>
-<a class="indexterm" name="id2784229"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2679618"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
 >guint32</a>             itdb_tracks_number_nontransferred   (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
@@ -594,9 +687,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2784315"></a><h3>
+<a name="id2679704"></a><h3>
 <a name="itdb-playlists-number"></a>itdb_playlists_number ()</h3>
-<a class="indexterm" name="id2784326"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2679716"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
 >guint32</a>             itdb_playlists_number               (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
@@ -623,9 +716,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2784405"></a><h3>
+<a name="id2679794"></a><h3>
 <a name="ItdbUserDataDestroyFunc"></a>ItdbUserDataDestroyFunc ()</h3>
-<a class="indexterm" name="id2784416"></a><pre class="programlisting">void                (*ItdbUserDataDestroyFunc)          (<a
+<a class="indexterm" name="id2679806"></a><pre class="programlisting">void                (*ItdbUserDataDestroyFunc)          (<a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
 >gpointer</a> userdata);</pre>
 <p>
@@ -646,9 +739,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2784473"></a><h3>
+<a name="id2679863"></a><h3>
 <a name="ItdbUserDataDuplicateFunc"></a>ItdbUserDataDuplicateFunc ()</h3>
-<a class="indexterm" name="id2784485"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2679875"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
 >gpointer</a>            (*ItdbUserDataDuplicateFunc)        (<a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
@@ -680,9 +773,9 @@
 </div>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2784560"></a><div class="refsect2" lang="en"><a name="id2784562"></a></div>
+<a name="id2679950"></a><div class="refsect2" lang="en"><a name="id2679951"></a></div>
 <hr>
-<div class="refsect2" lang="en"><a name="id2784563"></a></div>
+<div class="refsect2" lang="en"><a name="id2679952"></a></div>
 </div>
 </div>
 </body>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-Time-handling.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-Time-handling.html	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-Time-handling.html	2009-06-19 20:28:03 UTC (rev 384)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="libgpod-Low-level-functions.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2823514" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2702382" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2820492" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2686341" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-Time-handling"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2823514"></a><span class="refentrytitle">Time handling</span>
+<a name="id2702382"></a><span class="refentrytitle">Time handling</span>
 </h2>
 <p>Time handling &#8212; [DEPRECATED] Helper functions to convert between Epoch time and Mac
 (iPod) time</p>
@@ -51,7 +51,7 @@
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2820492"></a><h2>Description</h2>
+<a name="id2686341"></a><h2>Description</h2>
 <p>
 The functions provide conversion between Epoch time and Mac (iPod)
 time.
@@ -64,11 +64,11 @@
 </div>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2819215"></a><h2>Details</h2>
+<a name="id2698781"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2818412"></a><h3>
+<a name="id2696667"></a><h3>
 <a name="itdb-time-get-mac-time"></a>itdb_time_get_mac_time ()</h3>
-<a class="indexterm" name="id2818425"></a><pre class="programlisting">time_t              itdb_time_get_mac_time              (void);</pre>
+<a class="indexterm" name="id2696680"></a><pre class="programlisting">time_t              itdb_time_get_mac_time              (void);</pre>
 <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
 <h3 class="title">Warning</h3>
 <p><code class="literal">itdb_time_get_mac_time</code> is deprecated and should not be used in newly-written code. kept for compatibility with older code, directly use
@@ -94,9 +94,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2818488"></a><h3>
+<a name="id2696744"></a><h3>
 <a name="itdb-time-mac-to-host"></a>itdb_time_mac_to_host ()</h3>
-<a class="indexterm" name="id2818502"></a><pre class="programlisting">time_t              itdb_time_mac_to_host               (time_t time);</pre>
+<a class="indexterm" name="id2696757"></a><pre class="programlisting">time_t              itdb_time_mac_to_host               (time_t time);</pre>
 <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
 <h3 class="title">Warning</h3>
 <p><code class="literal">itdb_time_mac_to_host</code> is deprecated and should not be used in newly-written code. It's been kept for compatibility with older code, but this
@@ -126,9 +126,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2805315"></a><h3>
+<a name="id2716010"></a><h3>
 <a name="itdb-time-host-to-mac"></a>itdb_time_host_to_mac ()</h3>
-<a class="indexterm" name="id2805329"></a><pre class="programlisting">time_t              itdb_time_host_to_mac               (time_t time);</pre>
+<a class="indexterm" name="id2716023"></a><pre class="programlisting">time_t              itdb_time_host_to_mac               (time_t time);</pre>
 <div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
 <h3 class="title">Warning</h3>
 <p><code class="literal">itdb_time_host_to_mac</code> is deprecated and should not be used in newly-written code. It's been kept for compatibility with older code, but this
@@ -158,9 +158,9 @@
 </div>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2805404"></a><div class="refsect2" lang="en"><a name="id2805405"></a></div>
+<a name="id2716099"></a><div class="refsect2" lang="en"><a name="id2716100"></a></div>
 <hr>
-<div class="refsect2" lang="en"><a name="id2805406"></a></div>
+<div class="refsect2" lang="en"><a name="id2716101"></a></div>
 </div>
 </div>
 </body>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod-Tracks.html
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod-Tracks.html	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod-Tracks.html	2009-06-19 20:28:03 UTC (rev 384)
@@ -23,16 +23,16 @@
 <th width="100%" align="center">libgpod Reference Manual</th>
 <td><a accesskey="n" href="libgpod-Playlists.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
 </tr>
-<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2787730" class="shortcut">Top</a>
+<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2711210" class="shortcut">Top</a>
                   &#160;|&#160;
-                  <a href="#id2831503" class="shortcut">Description</a></nobr></td></tr>
+                  <a href="#id2724475" class="shortcut">Description</a></nobr></td></tr>
 </table>
 <div class="refentry" lang="en">
 <a name="libgpod-Tracks"></a><div class="titlepage"></div>
 <div class="refnamediv"><table width="100%"><tr>
 <td valign="top">
 <h2>
-<a name="id2787730"></a><span class="refentrytitle">Tracks</span>
+<a name="id2711210"></a><span class="refentrytitle">Tracks</span>
 </h2>
 <p>Tracks &#8212; Data structure to store metadata about an iPod track</p>
 </td>
@@ -111,18 +111,18 @@
 </pre>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2831503"></a><h2>Description</h2>
+<a name="id2724475"></a><h2>Description</h2>
 <p>
 These functions and structures are for storing and retrieving
 information about an iPod track.
 </p>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2831520"></a><h2>Details</h2>
+<a name="id2724492"></a><h2>Details</h2>
 <div class="refsect2" lang="en">
-<a name="id2831531"></a><h3>
+<a name="id2724503"></a><h3>
 <a name="Itdb-Track"></a>Itdb_Track</h3>
-<a class="indexterm" name="id2831543"></a><pre class="programlisting">typedef struct {
+<a class="indexterm" name="id2724515"></a><pre class="programlisting">typedef struct {
   Itdb_iTunesDB *itdb;
   gchar   *title;
   gchar   *ipod_path;
@@ -1303,9 +1303,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2836075"></a><h3>
+<a name="id2731558"></a><h3>
 <a name="Itdb-Mediatype"></a>enum Itdb_Mediatype</h3>
-<a class="indexterm" name="id2836088"></a><pre class="programlisting">typedef enum
+<a class="indexterm" name="id2731570"></a><pre class="programlisting">typedef enum
 {
     ITDB_MEDIATYPE_AUDIO      = 0x0001,
     ITDB_MEDIATYPE_MOVIE      = 0x0002,
@@ -1365,9 +1365,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2836248"></a><h3>
+<a name="id2731730"></a><h3>
 <a name="ITDB-RATING-STEP:CAPS"></a>ITDB_RATING_STEP</h3>
-<a class="indexterm" name="id2836258"></a><pre class="programlisting">#define ITDB_RATING_STEP 20
+<a class="indexterm" name="id2731741"></a><pre class="programlisting">#define ITDB_RATING_STEP 20
 </pre>
 <p>
 The multiplier for each star in <span class="type">track-</span>&gt;rating</p>
@@ -1377,9 +1377,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2836282"></a><h3>
+<a name="id2731765"></a><h3>
 <a name="itdb-track-new"></a>itdb_track_new ()</h3>
-<a class="indexterm" name="id2836292"></a><pre class="programlisting"><a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_track_new                      (void);</pre>
+<a class="indexterm" name="id2731775"></a><pre class="programlisting"><a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_track_new                      (void);</pre>
 <p>
 Creates an empty <a class="link" href="libgpod-Tracks.html#Itdb-Track"><span class="type">Itdb_Track</span></a></p>
 <p>
@@ -1397,9 +1397,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2836348"></a><h3>
+<a name="id2731830"></a><h3>
 <a name="itdb-track-free"></a>itdb_track_free ()</h3>
-<a class="indexterm" name="id2836358"></a><pre class="programlisting">void                itdb_track_free                     (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
+<a class="indexterm" name="id2731841"></a><pre class="programlisting">void                itdb_track_free                     (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
 <p>
 Frees the memory used by <em class="parameter"><code>track</code></em></p>
 <p>
@@ -1416,9 +1416,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2836413"></a><h3>
+<a name="id2731895"></a><h3>
 <a name="itdb-track-add"></a>itdb_track_add ()</h3>
-<a class="indexterm" name="id2836423"></a><pre class="programlisting">void                itdb_track_add                      (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+<a class="indexterm" name="id2731906"></a><pre class="programlisting">void                itdb_track_add                      (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          <a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
                                                          <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint32"
@@ -1454,9 +1454,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2836548"></a><h3>
+<a name="id2732030"></a><h3>
 <a name="itdb-track-remove"></a>itdb_track_remove ()</h3>
-<a class="indexterm" name="id2836558"></a><pre class="programlisting">void                itdb_track_remove                   (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
+<a class="indexterm" name="id2732041"></a><pre class="programlisting">void                itdb_track_remove                   (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
 <p>
 Removes <em class="parameter"><code>track</code></em> from the <a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB"><span class="type">Itdb_iTunesDB</span></a> it's associated with, and frees the
 memory it uses. It doesn't remove the track from the playlists it may have
@@ -1475,9 +1475,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2836623"></a><h3>
+<a name="id2732106"></a><h3>
 <a name="itdb-track-unlink"></a>itdb_track_unlink ()</h3>
-<a class="indexterm" name="id2836634"></a><pre class="programlisting">void                itdb_track_unlink                   (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
+<a class="indexterm" name="id2732116"></a><pre class="programlisting">void                itdb_track_unlink                   (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
 <p>
 Removes <em class="parameter"><code>track</code></em> from the <a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB"><span class="type">Itdb_iTunesDB</span></a> it's associated with, but do not free
 memory. It doesn't remove the track from the playlists it may have been
@@ -1497,9 +1497,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2836704"></a><h3>
+<a name="id2732186"></a><h3>
 <a name="itdb-track-duplicate"></a>itdb_track_duplicate ()</h3>
-<a class="indexterm" name="id2836714"></a><pre class="programlisting"><a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_track_duplicate                (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *tr);</pre>
+<a class="indexterm" name="id2732197"></a><pre class="programlisting"><a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_track_duplicate                (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *tr);</pre>
 <p>
 Duplicates an existing track</p>
 <p>
@@ -1523,9 +1523,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2836781"></a><h3>
+<a name="id2732263"></a><h3>
 <a name="itdb-track-by-id"></a>itdb_track_by_id ()</h3>
-<a class="indexterm" name="id2836791"></a><pre class="programlisting"><a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_track_by_id                    (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
+<a class="indexterm" name="id2732274"></a><pre class="programlisting"><a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_track_by_id                    (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb,
                                                          <a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#guint32"
 >guint32</a> id);</pre>
@@ -1570,9 +1570,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2836927"></a><h3>
+<a name="id2732409"></a><h3>
 <a name="itdb-track-id-tree-create"></a>itdb_track_id_tree_create ()</h3>
-<a class="indexterm" name="id2836938"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2732420"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html#GTree"
 >GTree</a>*              itdb_track_id_tree_create           (<a class="link" href="libgpod-The-Itdb-iTunesDB-structure.html#Itdb-iTunesDB">Itdb_iTunesDB</a> *itdb);</pre>
 <p>
@@ -1602,9 +1602,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2837022"></a><h3>
+<a name="id2732505"></a><h3>
 <a name="itdb-track-id-tree-destroy"></a>itdb_track_id_tree_destroy ()</h3>
-<a class="indexterm" name="id2837033"></a><pre class="programlisting">void                itdb_track_id_tree_destroy          (<a
+<a class="indexterm" name="id2732516"></a><pre class="programlisting">void                itdb_track_id_tree_destroy          (<a
 href="/usr/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html#GTree"
 >GTree</a> *idtree);</pre>
 <p>
@@ -1625,9 +1625,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2837088"></a><h3>
+<a name="id2732570"></a><h3>
 <a name="itdb-track-id-tree-by-id"></a>itdb_track_id_tree_by_id ()</h3>
-<a class="indexterm" name="id2837098"></a><pre class="programlisting"><a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_track_id_tree_by_id            (<a
+<a class="indexterm" name="id2732580"></a><pre class="programlisting"><a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a>*         itdb_track_id_tree_by_id            (<a
 href="/usr/share/gtk-doc/html/glib/glib-Balanced-Binary-Trees.html#GTree"
 >GTree</a> *idtree,
                                                          <a
@@ -1665,9 +1665,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2837224"></a><h3>
+<a name="id2732706"></a><h3>
 <a name="itdb-track-get-thumbnail"></a>itdb_track_get_thumbnail ()</h3>
-<a class="indexterm" name="id2837236"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2732719"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
 >gpointer</a>            itdb_track_get_thumbnail            (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
                                                          <a
@@ -1720,9 +1720,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2837356"></a><h3>
+<a name="id2732838"></a><h3>
 <a name="itdb-track-has-thumbnails"></a>itdb_track_has_thumbnails ()</h3>
-<a class="indexterm" name="id2837369"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2732851"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_track_has_thumbnails           (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
 <p>
@@ -1751,9 +1751,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2837446"></a><h3>
+<a name="id2732928"></a><h3>
 <a name="itdb-track-set-thumbnails"></a>itdb_track_set_thumbnails ()</h3>
-<a class="indexterm" name="id2837459"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2732941"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_track_set_thumbnails           (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
                                                          const <a
@@ -1793,9 +1793,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2837563"></a><h3>
+<a name="id2733046"></a><h3>
 <a name="itdb-track-set-thumbnails-from-data"></a>itdb_track_set_thumbnails_from_data ()</h3>
-<a class="indexterm" name="id2837579"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2733061"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_track_set_thumbnails_from_data (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
                                                          const <a
@@ -1844,9 +1844,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2837703"></a><h3>
+<a name="id2733186"></a><h3>
 <a name="itdb-track-set-thumbnails-from-pixbuf"></a>itdb_track_set_thumbnails_from_pixbuf ()</h3>
-<a class="indexterm" name="id2837718"></a><pre class="programlisting"><a
+<a class="indexterm" name="id2733201"></a><pre class="programlisting"><a
 href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"
 >gboolean</a>            itdb_track_set_thumbnails_from_pixbuf
                                                         (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track,
@@ -1888,9 +1888,9 @@
 </div>
 <hr>
 <div class="refsect2" lang="en">
-<a name="id2837829"></a><h3>
+<a name="id2733312"></a><h3>
 <a name="itdb-track-remove-thumbnails"></a>itdb_track_remove_thumbnails ()</h3>
-<a class="indexterm" name="id2837843"></a><pre class="programlisting">void                itdb_track_remove_thumbnails        (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
+<a class="indexterm" name="id2733326"></a><pre class="programlisting">void                itdb_track_remove_thumbnails        (<a class="link" href="libgpod-Tracks.html#Itdb-Track">Itdb_Track</a> *track);</pre>
 <p>
 Removes the thumbnails associated with <em class="parameter"><code>track</code></em></p>
 <p>
@@ -1909,9 +1909,9 @@
 </div>
 </div>
 <div class="refsect1" lang="en">
-<a name="id2837906"></a><div class="refsect2" lang="en"><a name="id2837908"></a></div>
+<a name="id2733389"></a><div class="refsect2" lang="en"><a name="id2733390"></a></div>
 <hr>
-<div class="refsect2" lang="en"><a name="id2837909"></a></div>
+<div class="refsect2" lang="en"><a name="id2733391"></a></div>
 </div>
 </div>
 </body>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod.devhelp
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod.devhelp	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod.devhelp	2009-06-19 20:28:03 UTC (rev 384)
@@ -29,26 +29,27 @@
     <function name="itdb_write ()" link="libgpod-The-Itdb-iTunesDB-structure.html#itdb-write"/>
     <function name="itdb_set_mountpoint ()" link="libgpod-The-Itdb-iTunesDB-structure.html#itdb-set-mountpoint"/>
     <function name="itdb_get_mountpoint ()" link="libgpod-The-Itdb-iTunesDB-structure.html#itdb-get-mountpoint"/>
+    <function name="itdb_init_ipod ()" link="libgpod-The-Itdb-iTunesDB-structure.html#itdb-init-ipod"/>
     <function name="itdb_tracks_number ()" link="libgpod-The-Itdb-iTunesDB-structure.html#itdb-tracks-number"/>
     <function name="itdb_tracks_number_nontransferred ()" link="libgpod-The-Itdb-iTunesDB-structure.html#itdb-tracks-number-nontransferred"/>
     <function name="itdb_playlists_number ()" link="libgpod-The-Itdb-iTunesDB-structure.html#itdb-playlists-number"/>
     <function name="ItdbUserDataDestroyFunc ()" link="libgpod-The-Itdb-iTunesDB-structure.html#ItdbUserDataDestroyFunc"/>
     <function name="ItdbUserDataDuplicateFunc ()" link="libgpod-The-Itdb-iTunesDB-structure.html#ItdbUserDataDuplicateFunc"/>
-    <function name="" link="libgpod-The-Itdb-iTunesDB-structure.html#id2784562"/>
-    <function name="" link="libgpod-The-Itdb-iTunesDB-structure.html#id2784563"/>
+    <function name="" link="libgpod-The-Itdb-iTunesDB-structure.html#id2679951"/>
+    <function name="" link="libgpod-The-Itdb-iTunesDB-structure.html#id2679952"/>
     <function name="itdb_cp_track_to_ipod ()" link="libgpod-File-handling-functions.html#itdb-cp-track-to-ipod"/>
     <function name="itdb_filename_fs2ipod ()" link="libgpod-File-handling-functions.html#itdb-filename-fs2ipod"/>
     <function name="itdb_filename_ipod2fs ()" link="libgpod-File-handling-functions.html#itdb-filename-ipod2fs"/>
     <function name="itdb_filename_on_ipod ()" link="libgpod-File-handling-functions.html#itdb-filename-on-ipod"/>
     <function name="itdb_musicdirs_number ()" link="libgpod-File-handling-functions.html#itdb-musicdirs-number"/>
     <function name="itdb_rename_files ()" link="libgpod-File-handling-functions.html#itdb-rename-files"/>
-    <function name="" link="libgpod-File-handling-functions.html#id2810657"/>
-    <function name="" link="libgpod-File-handling-functions.html#id2810658"/>
+    <function name="" link="libgpod-File-handling-functions.html#id2705799"/>
+    <function name="" link="libgpod-File-handling-functions.html#id2705800"/>
     <function name="itdb_time_get_mac_time ()" link="libgpod-Time-handling.html#itdb-time-get-mac-time"/>
     <function name="itdb_time_mac_to_host ()" link="libgpod-Time-handling.html#itdb-time-mac-to-host"/>
     <function name="itdb_time_host_to_mac ()" link="libgpod-Time-handling.html#itdb-time-host-to-mac"/>
-    <function name="" link="libgpod-Time-handling.html#id2805405"/>
-    <function name="" link="libgpod-Time-handling.html#id2805406"/>
+    <function name="" link="libgpod-Time-handling.html#id2716100"/>
+    <function name="" link="libgpod-Time-handling.html#id2716101"/>
     <function name="itdb_get_control_dir ()" link="libgpod-Low-level-functions.html#itdb-get-control-dir"/>
     <function name="itdb_get_itunes_dir ()" link="libgpod-Low-level-functions.html#itdb-get-itunes-dir"/>
     <function name="itdb_get_music_dir ()" link="libgpod-Low-level-functions.html#itdb-get-music-dir"/>
@@ -70,8 +71,8 @@
     <function name="itdb_shuffle_write ()" link="libgpod-Low-level-functions.html#itdb-shuffle-write"/>
     <function name="itdb_shuffle_write_file ()" link="libgpod-Low-level-functions.html#itdb-shuffle-write-file"/>
     <function name="itdb_duplicate ()" link="libgpod-Low-level-functions.html#itdb-duplicate"/>
-    <function name="" link="libgpod-Low-level-functions.html#id2830320"/>
-    <function name="" link="libgpod-Low-level-functions.html#id2830321"/>
+    <function name="" link="libgpod-Low-level-functions.html#id2725760"/>
+    <function name="" link="libgpod-Low-level-functions.html#id2725761"/>
     <function name="Itdb_Track" link="libgpod-Tracks.html#Itdb-Track"/>
     <function name="enum Itdb_Mediatype" link="libgpod-Tracks.html#Itdb-Mediatype"/>
     <function name="ITDB_RATING_STEP" link="libgpod-Tracks.html#ITDB-RATING-STEP:CAPS"/>
@@ -91,8 +92,8 @@
     <function name="itdb_track_set_thumbnails_from_data ()" link="libgpod-Tracks.html#itdb-track-set-thumbnails-from-data"/>
     <function name="itdb_track_set_thumbnails_from_pixbuf ()" link="libgpod-Tracks.html#itdb-track-set-thumbnails-from-pixbuf"/>
     <function name="itdb_track_remove_thumbnails ()" link="libgpod-Tracks.html#itdb-track-remove-thumbnails"/>
-    <function name="" link="libgpod-Tracks.html#id2837908"/>
-    <function name="" link="libgpod-Tracks.html#id2837909"/>
+    <function name="" link="libgpod-Tracks.html#id2733390"/>
+    <function name="" link="libgpod-Tracks.html#id2733391"/>
     <function name="Itdb_Playlist" link="libgpod-Playlists.html#Itdb-Playlist"/>
     <function name="enum ItdbPlaylistSortOrder" link="libgpod-Playlists.html#ItdbPlaylistSortOrder"/>
     <function name="itdb_playlist_new ()" link="libgpod-Playlists.html#itdb-playlist-new"/>
@@ -118,8 +119,8 @@
     <function name="itdb_playlist_by_nr ()" link="libgpod-Playlists.html#itdb-playlist-by-nr"/>
     <function name="itdb_playlist_by_name ()" link="libgpod-Playlists.html#itdb-playlist-by-name"/>
     <function name="itdb_playlist_randomize ()" link="libgpod-Playlists.html#itdb-playlist-randomize"/>
-    <function name="" link="libgpod-Playlists.html#id2841462"/>
-    <function name="" link="libgpod-Playlists.html#id2841463"/>
+    <function name="" link="libgpod-Playlists.html#id2736861"/>
+    <function name="" link="libgpod-Playlists.html#id2736862"/>
     <function name="Itdb_SPLPref" link="libgpod-Smart-Playlists.html#Itdb-SPLPref"/>
     <function name="Itdb_SPLRule" link="libgpod-Smart-Playlists.html#Itdb-SPLRule"/>
     <function name="Itdb_SPLRules" link="libgpod-Smart-Playlists.html#Itdb-SPLRules"/>
@@ -145,8 +146,8 @@
     <function name="itdb_spl_update ()" link="libgpod-Smart-Playlists.html#itdb-spl-update"/>
     <function name="itdb_spl_update_all ()" link="libgpod-Smart-Playlists.html#itdb-spl-update-all"/>
     <function name="itdb_spl_update_live ()" link="libgpod-Smart-Playlists.html#itdb-spl-update-live"/>
-    <function name="" link="libgpod-Smart-Playlists.html#id2847822"/>
-    <function name="" link="libgpod-Smart-Playlists.html#id2847824"/>
+    <function name="" link="libgpod-Smart-Playlists.html#id2743210"/>
+    <function name="" link="libgpod-Smart-Playlists.html#id2743211"/>
     <function name="Itdb_Artwork" link="libgpod-Artwork.html#Itdb-Artwork"/>
     <function name="itdb_artwork_new ()" link="libgpod-Artwork.html#itdb-artwork-new"/>
     <function name="itdb_artwork_duplicate ()" link="libgpod-Artwork.html#itdb-artwork-duplicate"/>
@@ -161,8 +162,8 @@
     <function name="itdb_thumb_free ()" link="libgpod-Artwork.html#itdb-thumb-free"/>
     <function name="itdb_thumb_to_pixbuf_at_size ()" link="libgpod-Artwork.html#itdb-thumb-to-pixbuf-at-size"/>
     <function name="itdb_thumb_to_pixbufs ()" link="libgpod-Artwork.html#itdb-thumb-to-pixbufs"/>
-    <function name="" link="libgpod-Artwork.html#id2849125"/>
-    <function name="" link="libgpod-Artwork.html#id2849126"/>
+    <function name="" link="libgpod-Artwork.html#id2744505"/>
+    <function name="" link="libgpod-Artwork.html#id2744506"/>
     <function name="Itdb_Chapter" link="libgpod-Chapter-Data.html#Itdb-Chapter"/>
     <function name="Itdb_Chapterdata" link="libgpod-Chapter-Data.html#Itdb-Chapterdata"/>
     <function name="itdb_chapter_new ()" link="libgpod-Chapter-Data.html#itdb-chapter-new"/>
@@ -174,30 +175,31 @@
     <function name="itdb_chapterdata_remove_chapter ()" link="libgpod-Chapter-Data.html#itdb-chapterdata-remove-chapter"/>
     <function name="itdb_chapterdata_remove_chapters ()" link="libgpod-Chapter-Data.html#itdb-chapterdata-remove-chapters"/>
     <function name="itdb_chapterdata_free ()" link="libgpod-Chapter-Data.html#itdb-chapterdata-free"/>
-    <function name="" link="libgpod-Chapter-Data.html#id2844181"/>
-    <function name="" link="libgpod-Chapter-Data.html#id2844182"/>
+    <function name="" link="libgpod-Chapter-Data.html#id2739387"/>
+    <function name="" link="libgpod-Chapter-Data.html#id2739388"/>
     <function name="Itdb_Device" link="libgpod-Device.html#Itdb-Device"/>
     <function name="itdb_device_new ()" link="libgpod-Device.html#itdb-device-new"/>
     <function name="itdb_device_free ()" link="libgpod-Device.html#itdb-device-free"/>
     <function name="itdb_device_set_mountpoint ()" link="libgpod-Device.html#itdb-device-set-mountpoint"/>
-    <function name="itdb_device_read_sysinfo ()" link="libgpod-Device.html#itdb-device-read-sysinfo"/>
-    <function name="itdb_device_get_sysinfo ()" link="libgpod-Device.html#itdb-device-get-sysinfo"/>
-    <function name="itdb_device_set_sysinfo ()" link="libgpod-Device.html#itdb-device-set-sysinfo"/>
-    <function name="itdb_device_write_sysinfo ()" link="libgpod-Device.html#itdb-device-write-sysinfo"/>
-    <function name="Itdb_IpodInfo" link="libgpod-Device.html#Itdb-IpodInfo"/>
-    <function name="itdb_device_get_ipod_info ()" link="libgpod-Device.html#itdb-device-get-ipod-info"/>
     <function name="itdb_device_supports_artwork ()" link="libgpod-Device.html#itdb-device-supports-artwork"/>
+    <function name="itdb_device_supports_chapter_image ()" link="libgpod-Device.html#itdb-device-supports-chapter-image"/>
     <function name="itdb_device_supports_photo ()" link="libgpod-Device.html#itdb-device-supports-photo"/>
+    <function name="itdb_device_supports_podcast ()" link="libgpod-Device.html#itdb-device-supports-podcast"/>
     <function name="itdb_device_supports_video ()" link="libgpod-Device.html#itdb-device-supports-video"/>
+    <function name="Itdb_IpodInfo" link="libgpod-Device.html#Itdb-IpodInfo"/>
+    <function name="itdb_device_get_ipod_info ()" link="libgpod-Device.html#itdb-device-get-ipod-info"/>
     <function name="itdb_info_get_ipod_info_table ()" link="libgpod-Device.html#itdb-info-get-ipod-info-table"/>
     <function name="enum Itdb_IpodGeneration" link="libgpod-Device.html#Itdb-IpodGeneration"/>
     <function name="itdb_info_get_ipod_generation_string ()" link="libgpod-Device.html#itdb-info-get-ipod-generation-string"/>
     <function name="enum Itdb_IpodModel" link="libgpod-Device.html#Itdb-IpodModel"/>
     <function name="itdb_info_get_ipod_model_name_string ()" link="libgpod-Device.html#itdb-info-get-ipod-model-name-string"/>
-    <function name="itdb_init_ipod ()" link="libgpod-Device.html#itdb-init-ipod"/>
     <function name="Itdb_ArtworkFormat" link="libgpod-Device.html#Itdb-ArtworkFormat"/>
-    <function name="" link="libgpod-Device.html#id2856365"/>
-    <function name="" link="libgpod-Device.html#id2856366"/>
+    <function name="itdb_device_read_sysinfo ()" link="libgpod-Device.html#itdb-device-read-sysinfo"/>
+    <function name="itdb_device_get_sysinfo ()" link="libgpod-Device.html#itdb-device-get-sysinfo"/>
+    <function name="itdb_device_set_sysinfo ()" link="libgpod-Device.html#itdb-device-set-sysinfo"/>
+    <function name="itdb_device_write_sysinfo ()" link="libgpod-Device.html#itdb-device-write-sysinfo"/>
+    <function name="" link="libgpod-Device.html#id2751894"/>
+    <function name="" link="libgpod-Device.html#id2751895"/>
     <function name="Itdb_PhotoDB" link="libgpod-Photo-database.html#Itdb-PhotoDB"/>
     <function name="itdb_photodb_create ()" link="libgpod-Photo-database.html#itdb-photodb-create"/>
     <function name="itdb_photodb_free ()" link="libgpod-Photo-database.html#itdb-photodb-free"/>
@@ -212,7 +214,7 @@
     <function name="itdb_photodb_photoalbum_add_photo ()" link="libgpod-Photo-database.html#itdb-photodb-photoalbum-add-photo"/>
     <function name="itdb_photodb_photoalbum_by_name ()" link="libgpod-Photo-database.html#itdb-photodb-photoalbum-by-name"/>
     <function name="itdb_photodb_photoalbum_remove ()" link="libgpod-Photo-database.html#itdb-photodb-photoalbum-remove"/>
-    <function name="" link="libgpod-Photo-database.html#id2859677"/>
-    <function name="" link="libgpod-Photo-database.html#id2859678"/>
+    <function name="" link="libgpod-Photo-database.html#id2755279"/>
+    <function name="" link="libgpod-Photo-database.html#id2755280"/>
   </functions>
 </book>

Modified: libgpod/branches/upstream/current/docs/reference/html/libgpod.devhelp2
===================================================================
--- libgpod/branches/upstream/current/docs/reference/html/libgpod.devhelp2	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/html/libgpod.devhelp2	2009-06-19 20:28:03 UTC (rev 384)
@@ -29,26 +29,27 @@
     <keyword type="function" name="itdb_write ()" link="libgpod-The-Itdb-iTunesDB-structure.html#itdb-write"/>
     <keyword type="function" name="itdb_set_mountpoint ()" link="libgpod-The-Itdb-iTunesDB-structure.html#itdb-set-mountpoint" since="0.1.3"/>
     <keyword type="function" name="itdb_get_mountpoint ()" link="libgpod-The-Itdb-iTunesDB-structure.html#itdb-get-mountpoint" since="0.4.0"/>
+    <keyword type="function" name="itdb_init_ipod ()" link="libgpod-The-Itdb-iTunesDB-structure.html#itdb-init-ipod" since="0.4.0"/>
     <keyword type="function" name="itdb_tracks_number ()" link="libgpod-The-Itdb-iTunesDB-structure.html#itdb-tracks-number"/>
     <keyword type="function" name="itdb_tracks_number_nontransferred ()" link="libgpod-The-Itdb-iTunesDB-structure.html#itdb-tracks-number-nontransferred"/>
     <keyword type="function" name="itdb_playlists_number ()" link="libgpod-The-Itdb-iTunesDB-structure.html#itdb-playlists-number"/>
     <keyword type="function" name="ItdbUserDataDestroyFunc ()" link="libgpod-The-Itdb-iTunesDB-structure.html#ItdbUserDataDestroyFunc"/>
     <keyword type="function" name="ItdbUserDataDuplicateFunc ()" link="libgpod-The-Itdb-iTunesDB-structure.html#ItdbUserDataDuplicateFunc"/>
-    <keyword type="" name="" link="libgpod-The-Itdb-iTunesDB-structure.html#id2784562"/>
-    <keyword type="" name="" link="libgpod-The-Itdb-iTunesDB-structure.html#id2784563"/>
+    <keyword type="" name="" link="libgpod-The-Itdb-iTunesDB-structure.html#id2679951"/>
+    <keyword type="" name="" link="libgpod-The-Itdb-iTunesDB-structure.html#id2679952"/>
     <keyword type="function" name="itdb_cp_track_to_ipod ()" link="libgpod-File-handling-functions.html#itdb-cp-track-to-ipod"/>
     <keyword type="function" name="itdb_filename_fs2ipod ()" link="libgpod-File-handling-functions.html#itdb-filename-fs2ipod"/>
     <keyword type="function" name="itdb_filename_ipod2fs ()" link="libgpod-File-handling-functions.html#itdb-filename-ipod2fs"/>
     <keyword type="function" name="itdb_filename_on_ipod ()" link="libgpod-File-handling-functions.html#itdb-filename-on-ipod"/>
     <keyword type="function" name="itdb_musicdirs_number ()" link="libgpod-File-handling-functions.html#itdb-musicdirs-number" since="0.1.3"/>
     <keyword type="function" name="itdb_rename_files ()" link="libgpod-File-handling-functions.html#itdb-rename-files"/>
-    <keyword type="" name="" link="libgpod-File-handling-functions.html#id2810657"/>
-    <keyword type="" name="" link="libgpod-File-handling-functions.html#id2810658"/>
+    <keyword type="" name="" link="libgpod-File-handling-functions.html#id2705799"/>
+    <keyword type="" name="" link="libgpod-File-handling-functions.html#id2705800"/>
     <keyword type="function" name="itdb_time_get_mac_time ()" link="libgpod-Time-handling.html#itdb-time-get-mac-time" deprecated=""/>
     <keyword type="function" name="itdb_time_mac_to_host ()" link="libgpod-Time-handling.html#itdb-time-mac-to-host" deprecated=""/>
     <keyword type="function" name="itdb_time_host_to_mac ()" link="libgpod-Time-handling.html#itdb-time-host-to-mac" deprecated=""/>
-    <keyword type="" name="" link="libgpod-Time-handling.html#id2805405"/>
-    <keyword type="" name="" link="libgpod-Time-handling.html#id2805406"/>
+    <keyword type="" name="" link="libgpod-Time-handling.html#id2716100"/>
+    <keyword type="" name="" link="libgpod-Time-handling.html#id2716101"/>
     <keyword type="function" name="itdb_get_control_dir ()" link="libgpod-Low-level-functions.html#itdb-get-control-dir" since="0.4.0"/>
     <keyword type="function" name="itdb_get_itunes_dir ()" link="libgpod-Low-level-functions.html#itdb-get-itunes-dir" since="0.4.0"/>
     <keyword type="function" name="itdb_get_music_dir ()" link="libgpod-Low-level-functions.html#itdb-get-music-dir"/>
@@ -70,8 +71,8 @@
     <keyword type="function" name="itdb_shuffle_write ()" link="libgpod-Low-level-functions.html#itdb-shuffle-write"/>
     <keyword type="function" name="itdb_shuffle_write_file ()" link="libgpod-Low-level-functions.html#itdb-shuffle-write-file"/>
     <keyword type="function" name="itdb_duplicate ()" link="libgpod-Low-level-functions.html#itdb-duplicate"/>
-    <keyword type="" name="" link="libgpod-Low-level-functions.html#id2830320"/>
-    <keyword type="" name="" link="libgpod-Low-level-functions.html#id2830321"/>
+    <keyword type="" name="" link="libgpod-Low-level-functions.html#id2725760"/>
+    <keyword type="" name="" link="libgpod-Low-level-functions.html#id2725761"/>
     <keyword type="struct" name="Itdb_Track" link="libgpod-Tracks.html#Itdb-Track"/>
     <keyword type="enum" name="enum Itdb_Mediatype" link="libgpod-Tracks.html#Itdb-Mediatype" since="0.5.0"/>
     <keyword type="macro" name="ITDB_RATING_STEP" link="libgpod-Tracks.html#ITDB-RATING-STEP:CAPS"/>
@@ -91,8 +92,8 @@
     <keyword type="function" name="itdb_track_set_thumbnails_from_data ()" link="libgpod-Tracks.html#itdb-track-set-thumbnails-from-data" since="0.4.0"/>
     <keyword type="function" name="itdb_track_set_thumbnails_from_pixbuf ()" link="libgpod-Tracks.html#itdb-track-set-thumbnails-from-pixbuf" since="0.5.0"/>
     <keyword type="function" name="itdb_track_remove_thumbnails ()" link="libgpod-Tracks.html#itdb-track-remove-thumbnails" since="0.3.0"/>
-    <keyword type="" name="" link="libgpod-Tracks.html#id2837908"/>
-    <keyword type="" name="" link="libgpod-Tracks.html#id2837909"/>
+    <keyword type="" name="" link="libgpod-Tracks.html#id2733390"/>
+    <keyword type="" name="" link="libgpod-Tracks.html#id2733391"/>
     <keyword type="struct" name="Itdb_Playlist" link="libgpod-Playlists.html#Itdb-Playlist"/>
     <keyword type="enum" name="enum ItdbPlaylistSortOrder" link="libgpod-Playlists.html#ItdbPlaylistSortOrder" since="0.1.3"/>
     <keyword type="function" name="itdb_playlist_new ()" link="libgpod-Playlists.html#itdb-playlist-new"/>
@@ -118,8 +119,8 @@
     <keyword type="function" name="itdb_playlist_by_nr ()" link="libgpod-Playlists.html#itdb-playlist-by-nr"/>
     <keyword type="function" name="itdb_playlist_by_name ()" link="libgpod-Playlists.html#itdb-playlist-by-name"/>
     <keyword type="function" name="itdb_playlist_randomize ()" link="libgpod-Playlists.html#itdb-playlist-randomize"/>
-    <keyword type="" name="" link="libgpod-Playlists.html#id2841462"/>
-    <keyword type="" name="" link="libgpod-Playlists.html#id2841463"/>
+    <keyword type="" name="" link="libgpod-Playlists.html#id2736861"/>
+    <keyword type="" name="" link="libgpod-Playlists.html#id2736862"/>
     <keyword type="struct" name="Itdb_SPLPref" link="libgpod-Smart-Playlists.html#Itdb-SPLPref" since="0.5.0"/>
     <keyword type="struct" name="Itdb_SPLRule" link="libgpod-Smart-Playlists.html#Itdb-SPLRule" since="0.5.0"/>
     <keyword type="struct" name="Itdb_SPLRules" link="libgpod-Smart-Playlists.html#Itdb-SPLRules" since="0.5.0"/>
@@ -145,8 +146,8 @@
     <keyword type="function" name="itdb_spl_update ()" link="libgpod-Smart-Playlists.html#itdb-spl-update"/>
     <keyword type="function" name="itdb_spl_update_all ()" link="libgpod-Smart-Playlists.html#itdb-spl-update-all"/>
     <keyword type="function" name="itdb_spl_update_live ()" link="libgpod-Smart-Playlists.html#itdb-spl-update-live" since="0.2.0"/>
-    <keyword type="" name="" link="libgpod-Smart-Playlists.html#id2847822"/>
-    <keyword type="" name="" link="libgpod-Smart-Playlists.html#id2847824"/>
+    <keyword type="" name="" link="libgpod-Smart-Playlists.html#id2743210"/>
+    <keyword type="" name="" link="libgpod-Smart-Playlists.html#id2743211"/>
     <keyword type="struct" name="Itdb_Artwork" link="libgpod-Artwork.html#Itdb-Artwork" since="0.3.0"/>
     <keyword type="function" name="itdb_artwork_new ()" link="libgpod-Artwork.html#itdb-artwork-new" since="0.3.0"/>
     <keyword type="function" name="itdb_artwork_duplicate ()" link="libgpod-Artwork.html#itdb-artwork-duplicate" since="0.3.0"/>
@@ -161,8 +162,8 @@
     <keyword type="function" name="itdb_thumb_free ()" link="libgpod-Artwork.html#itdb-thumb-free" since="0.3.0"/>
     <keyword type="function" name="itdb_thumb_to_pixbuf_at_size ()" link="libgpod-Artwork.html#itdb-thumb-to-pixbuf-at-size" since="0.7.0"/>
     <keyword type="function" name="itdb_thumb_to_pixbufs ()" link="libgpod-Artwork.html#itdb-thumb-to-pixbufs" since="0.7.0"/>
-    <keyword type="" name="" link="libgpod-Artwork.html#id2849125"/>
-    <keyword type="" name="" link="libgpod-Artwork.html#id2849126"/>
+    <keyword type="" name="" link="libgpod-Artwork.html#id2744505"/>
+    <keyword type="" name="" link="libgpod-Artwork.html#id2744506"/>
     <keyword type="struct" name="Itdb_Chapter" link="libgpod-Chapter-Data.html#Itdb-Chapter" since="0.7.0"/>
     <keyword type="struct" name="Itdb_Chapterdata" link="libgpod-Chapter-Data.html#Itdb-Chapterdata" since="0.7.0"/>
     <keyword type="function" name="itdb_chapter_new ()" link="libgpod-Chapter-Data.html#itdb-chapter-new" since="0.7.0"/>
@@ -174,30 +175,31 @@
     <keyword type="function" name="itdb_chapterdata_remove_chapter ()" link="libgpod-Chapter-Data.html#itdb-chapterdata-remove-chapter" since="0.7.0"/>
     <keyword type="function" name="itdb_chapterdata_remove_chapters ()" link="libgpod-Chapter-Data.html#itdb-chapterdata-remove-chapters" since="0.7.0"/>
     <keyword type="function" name="itdb_chapterdata_free ()" link="libgpod-Chapter-Data.html#itdb-chapterdata-free" since="0.7.0"/>
-    <keyword type="" name="" link="libgpod-Chapter-Data.html#id2844181"/>
-    <keyword type="" name="" link="libgpod-Chapter-Data.html#id2844182"/>
+    <keyword type="" name="" link="libgpod-Chapter-Data.html#id2739387"/>
+    <keyword type="" name="" link="libgpod-Chapter-Data.html#id2739388"/>
     <keyword type="struct" name="Itdb_Device" link="libgpod-Device.html#Itdb-Device" since="0.4.0"/>
     <keyword type="function" name="itdb_device_new ()" link="libgpod-Device.html#itdb-device-new" since="0.4.0"/>
     <keyword type="function" name="itdb_device_free ()" link="libgpod-Device.html#itdb-device-free" since="0.4.0"/>
     <keyword type="function" name="itdb_device_set_mountpoint ()" link="libgpod-Device.html#itdb-device-set-mountpoint" since="0.4.0"/>
-    <keyword type="function" name="itdb_device_read_sysinfo ()" link="libgpod-Device.html#itdb-device-read-sysinfo" since="0.4.0"/>
-    <keyword type="function" name="itdb_device_get_sysinfo ()" link="libgpod-Device.html#itdb-device-get-sysinfo" since="0.4.0"/>
-    <keyword type="function" name="itdb_device_set_sysinfo ()" link="libgpod-Device.html#itdb-device-set-sysinfo" since="0.4.0"/>
-    <keyword type="function" name="itdb_device_write_sysinfo ()" link="libgpod-Device.html#itdb-device-write-sysinfo" since="0.4.0"/>
-    <keyword type="struct" name="Itdb_IpodInfo" link="libgpod-Device.html#Itdb-IpodInfo" since="0.4.0"/>
-    <keyword type="function" name="itdb_device_get_ipod_info ()" link="libgpod-Device.html#itdb-device-get-ipod-info" since="0.4.0"/>
     <keyword type="function" name="itdb_device_supports_artwork ()" link="libgpod-Device.html#itdb-device-supports-artwork" since="0.5.0"/>
+    <keyword type="function" name="itdb_device_supports_chapter_image ()" link="libgpod-Device.html#itdb-device-supports-chapter-image" since="0.7.2"/>
     <keyword type="function" name="itdb_device_supports_photo ()" link="libgpod-Device.html#itdb-device-supports-photo" since="0.5.0"/>
+    <keyword type="function" name="itdb_device_supports_podcast ()" link="libgpod-Device.html#itdb-device-supports-podcast" since="0.7.2"/>
     <keyword type="function" name="itdb_device_supports_video ()" link="libgpod-Device.html#itdb-device-supports-video" since="0.7.0"/>
+    <keyword type="struct" name="Itdb_IpodInfo" link="libgpod-Device.html#Itdb-IpodInfo" since="0.4.0"/>
+    <keyword type="function" name="itdb_device_get_ipod_info ()" link="libgpod-Device.html#itdb-device-get-ipod-info" since="0.4.0"/>
     <keyword type="function" name="itdb_info_get_ipod_info_table ()" link="libgpod-Device.html#itdb-info-get-ipod-info-table" since="0.4.0"/>
     <keyword type="enum" name="enum Itdb_IpodGeneration" link="libgpod-Device.html#Itdb-IpodGeneration" since="0.4.0"/>
     <keyword type="function" name="itdb_info_get_ipod_generation_string ()" link="libgpod-Device.html#itdb-info-get-ipod-generation-string" since="0.4.0"/>
     <keyword type="enum" name="enum Itdb_IpodModel" link="libgpod-Device.html#Itdb-IpodModel" since="0.4.0"/>
     <keyword type="function" name="itdb_info_get_ipod_model_name_string ()" link="libgpod-Device.html#itdb-info-get-ipod-model-name-string" since="0.4.0"/>
-    <keyword type="function" name="itdb_init_ipod ()" link="libgpod-Device.html#itdb-init-ipod" since="0.4.0"/>
     <keyword type="struct" name="Itdb_ArtworkFormat" link="libgpod-Device.html#Itdb-ArtworkFormat"/>
-    <keyword type="" name="" link="libgpod-Device.html#id2856365"/>
-    <keyword type="" name="" link="libgpod-Device.html#id2856366"/>
+    <keyword type="function" name="itdb_device_read_sysinfo ()" link="libgpod-Device.html#itdb-device-read-sysinfo" since="0.4.0"/>
+    <keyword type="function" name="itdb_device_get_sysinfo ()" link="libgpod-Device.html#itdb-device-get-sysinfo" since="0.4.0"/>
+    <keyword type="function" name="itdb_device_set_sysinfo ()" link="libgpod-Device.html#itdb-device-set-sysinfo" since="0.4.0"/>
+    <keyword type="function" name="itdb_device_write_sysinfo ()" link="libgpod-Device.html#itdb-device-write-sysinfo" since="0.4.0"/>
+    <keyword type="" name="" link="libgpod-Device.html#id2751894"/>
+    <keyword type="" name="" link="libgpod-Device.html#id2751895"/>
     <keyword type="struct" name="Itdb_PhotoDB" link="libgpod-Photo-database.html#Itdb-PhotoDB" since="0.4.0"/>
     <keyword type="function" name="itdb_photodb_create ()" link="libgpod-Photo-database.html#itdb-photodb-create" since="0.4.2"/>
     <keyword type="function" name="itdb_photodb_free ()" link="libgpod-Photo-database.html#itdb-photodb-free" since="0.4.0"/>
@@ -212,7 +214,7 @@
     <keyword type="function" name="itdb_photodb_photoalbum_add_photo ()" link="libgpod-Photo-database.html#itdb-photodb-photoalbum-add-photo" since="0.4.2"/>
     <keyword type="function" name="itdb_photodb_photoalbum_by_name ()" link="libgpod-Photo-database.html#itdb-photodb-photoalbum-by-name" since="0.4.2"/>
     <keyword type="function" name="itdb_photodb_photoalbum_remove ()" link="libgpod-Photo-database.html#itdb-photodb-photoalbum-remove" since="0.4.2"/>
-    <keyword type="" name="" link="libgpod-Photo-database.html#id2859677"/>
-    <keyword type="" name="" link="libgpod-Photo-database.html#id2859678"/>
+    <keyword type="" name="" link="libgpod-Photo-database.html#id2755279"/>
+    <keyword type="" name="" link="libgpod-Photo-database.html#id2755280"/>
   </functions>
 </book>

Modified: libgpod/branches/upstream/current/docs/reference/libgpod-sections.txt
===================================================================
--- libgpod/branches/upstream/current/docs/reference/libgpod-sections.txt	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/libgpod-sections.txt	2009-06-19 20:28:03 UTC (rev 384)
@@ -10,6 +10,7 @@
 itdb_write
 itdb_set_mountpoint
 itdb_get_mountpoint
+itdb_init_ipod
 
 itdb_tracks_number
 itdb_tracks_number_nontransferred
@@ -177,22 +178,23 @@
 itdb_device_new
 itdb_device_free
 itdb_device_set_mountpoint
-itdb_device_read_sysinfo
-itdb_device_get_sysinfo
-itdb_device_set_sysinfo
-itdb_device_write_sysinfo
-Itdb_IpodInfo
-itdb_device_get_ipod_info
 itdb_device_supports_artwork
+itdb_device_supports_chapter_image
 itdb_device_supports_photo
+itdb_device_supports_podcast
 itdb_device_supports_video
+Itdb_IpodInfo
+itdb_device_get_ipod_info
 itdb_info_get_ipod_info_table
 Itdb_IpodGeneration
 itdb_info_get_ipod_generation_string
 Itdb_IpodModel
 itdb_info_get_ipod_model_name_string
-itdb_init_ipod
 Itdb_ArtworkFormat
+itdb_device_read_sysinfo
+itdb_device_get_sysinfo
+itdb_device_set_sysinfo
+itdb_device_write_sysinfo
 </SECTION>
 
 <SECTION>
@@ -240,6 +242,7 @@
 <SUBSECTION Private>
 DEBUG_ARTWORK
 G_GNUC_INTERNAL
+FContents_
 dump_mhif
 dump_mhia
 dump_mhni
@@ -250,6 +253,11 @@
 dump_mhsd
 dump_mhfd
 dump_mhba
+get16int
+get24int
+get32float
+get32int
+get64int
 MHeader
 MhlHeader
 MhbdHeader
@@ -292,6 +300,7 @@
 itdb_device_error_quark
 DbType
 Itdb_DB
+ItdbChecksumType
 ItdbThumbDataType
 
 GChecksum

Modified: libgpod/branches/upstream/current/docs/reference/tmpl/device.sgml
===================================================================
--- libgpod/branches/upstream/current/docs/reference/tmpl/device.sgml	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/tmpl/device.sgml	2009-06-19 20:28:03 UTC (rev 384)
@@ -55,7 +55,7 @@
 @mp: 
 
 
-<!-- ##### FUNCTION itdb_device_read_sysinfo ##### -->
+<!-- ##### FUNCTION itdb_device_supports_artwork ##### -->
 <para>
 
 </para>
@@ -64,36 +64,42 @@
 @Returns: 
 
 
-<!-- ##### FUNCTION itdb_device_get_sysinfo ##### -->
+<!-- ##### FUNCTION itdb_device_supports_chapter_image ##### -->
 <para>
 
 </para>
 
 @device: 
- at field: 
 @Returns: 
 
 
-<!-- ##### FUNCTION itdb_device_set_sysinfo ##### -->
+<!-- ##### FUNCTION itdb_device_supports_photo ##### -->
 <para>
 
 </para>
 
 @device: 
- at field: 
- at value: 
+ at Returns: 
 
 
-<!-- ##### FUNCTION itdb_device_write_sysinfo ##### -->
+<!-- ##### FUNCTION itdb_device_supports_podcast ##### -->
 <para>
 
 </para>
 
 @device: 
- at error: 
 @Returns: 
 
 
+<!-- ##### FUNCTION itdb_device_supports_video ##### -->
+<para>
+
+</para>
+
+ at device: 
+ at Returns: 
+
+
 <!-- ##### STRUCT Itdb_IpodInfo ##### -->
 <para>
 
@@ -118,33 +124,6 @@
 @Returns: 
 
 
-<!-- ##### FUNCTION itdb_device_supports_artwork ##### -->
-<para>
-
-</para>
-
- at device: 
- at Returns: 
-
-
-<!-- ##### FUNCTION itdb_device_supports_photo ##### -->
-<para>
-
-</para>
-
- at device: 
- at Returns: 
-
-
-<!-- ##### FUNCTION itdb_device_supports_video ##### -->
-<para>
-
-</para>
-
- at device: 
- at Returns: 
-
-
 <!-- ##### FUNCTION itdb_info_get_ipod_info_table ##### -->
 <para>
 
@@ -242,18 +221,6 @@
 @Returns: 
 
 
-<!-- ##### FUNCTION itdb_init_ipod ##### -->
-<para>
-
-</para>
-
- at mountpoint: 
- at model_number: 
- at ipod_name: 
- at error: 
- at Returns: 
-
-
 <!-- ##### STRUCT Itdb_ArtworkFormat ##### -->
 <para>
 
@@ -274,3 +241,42 @@
 @gamma: 
 @associated_format: 
 
+<!-- ##### FUNCTION itdb_device_read_sysinfo ##### -->
+<para>
+
+</para>
+
+ at device: 
+ at Returns: 
+
+
+<!-- ##### FUNCTION itdb_device_get_sysinfo ##### -->
+<para>
+
+</para>
+
+ at device: 
+ at field: 
+ at Returns: 
+
+
+<!-- ##### FUNCTION itdb_device_set_sysinfo ##### -->
+<para>
+
+</para>
+
+ at device: 
+ at field: 
+ at value: 
+
+
+<!-- ##### FUNCTION itdb_device_write_sysinfo ##### -->
+<para>
+
+</para>
+
+ at device: 
+ at error: 
+ at Returns: 
+
+

Modified: libgpod/branches/upstream/current/docs/reference/tmpl/itunesdb-db.sgml
===================================================================
--- libgpod/branches/upstream/current/docs/reference/tmpl/itunesdb-db.sgml	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/tmpl/itunesdb-db.sgml	2009-06-19 20:28:03 UTC (rev 384)
@@ -174,6 +174,18 @@
 @Returns: 
 
 
+<!-- ##### FUNCTION itdb_init_ipod ##### -->
+<para>
+
+</para>
+
+ at mountpoint: 
+ at model_number: 
+ at ipod_name: 
+ at error: 
+ at Returns: 
+
+
 <!-- ##### FUNCTION itdb_tracks_number ##### -->
 <para>
 

Modified: libgpod/branches/upstream/current/docs/reference/xml/device.xml
===================================================================
--- libgpod/branches/upstream/current/docs/reference/xml/device.xml	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/xml/device.xml	2009-06-19 20:28:03 UTC (rev 384)
@@ -26,19 +26,13 @@
 <link linkend="void">void</link>                <link linkend="itdb-device-free">itdb_device_free</link>                    (<link linkend="Itdb-Device">Itdb_Device</link> *device);
 <link linkend="void">void</link>                <link linkend="itdb-device-set-mountpoint">itdb_device_set_mountpoint</link>          (<link linkend="Itdb-Device">Itdb_Device</link> *device,
                                                          const <link linkend="gchar">gchar</link> *mp);
-<link linkend="gboolean">gboolean</link>            <link linkend="itdb-device-read-sysinfo">itdb_device_read_sysinfo</link>            (<link linkend="Itdb-Device">Itdb_Device</link> *device);
-<link linkend="gchar">gchar</link>*              <link linkend="itdb-device-get-sysinfo">itdb_device_get_sysinfo</link>             (const <link linkend="Itdb-Device">Itdb_Device</link> *device,
-                                                         const <link linkend="gchar">gchar</link> *field);
-<link linkend="void">void</link>                <link linkend="itdb-device-set-sysinfo">itdb_device_set_sysinfo</link>             (<link linkend="Itdb-Device">Itdb_Device</link> *device,
-                                                         const <link linkend="gchar">gchar</link> *field,
-                                                         const <link linkend="gchar">gchar</link> *value);
-<link linkend="gboolean">gboolean</link>            <link linkend="itdb-device-write-sysinfo">itdb_device_write_sysinfo</link>           (<link linkend="Itdb-Device">Itdb_Device</link> *device,
-                                                         <link linkend="GError">GError</link> **error);
-                    <link linkend="Itdb-IpodInfo">Itdb_IpodInfo</link>;
-const <link linkend="Itdb-IpodInfo">Itdb_IpodInfo</link>* <link linkend="itdb-device-get-ipod-info">itdb_device_get_ipod_info</link>          (const <link linkend="Itdb-Device">Itdb_Device</link> *device);
 <link linkend="gboolean">gboolean</link>            <link linkend="itdb-device-supports-artwork">itdb_device_supports_artwork</link>        (const <link linkend="Itdb-Device">Itdb_Device</link> *device);
+<link linkend="gboolean">gboolean</link>            <link linkend="itdb-device-supports-chapter-image">itdb_device_supports_chapter_image</link>  (const <link linkend="Itdb-Device">Itdb_Device</link> *device);
 <link linkend="gboolean">gboolean</link>            <link linkend="itdb-device-supports-photo">itdb_device_supports_photo</link>          (const <link linkend="Itdb-Device">Itdb_Device</link> *device);
+<link linkend="gboolean">gboolean</link>            <link linkend="itdb-device-supports-podcast">itdb_device_supports_podcast</link>        (const <link linkend="Itdb-Device">Itdb_Device</link> *device);
 <link linkend="gboolean">gboolean</link>            <link linkend="itdb-device-supports-video">itdb_device_supports_video</link>          (const <link linkend="Itdb-Device">Itdb_Device</link> *device);
+                    <link linkend="Itdb-IpodInfo">Itdb_IpodInfo</link>;
+const <link linkend="Itdb-IpodInfo">Itdb_IpodInfo</link>* <link linkend="itdb-device-get-ipod-info">itdb_device_get_ipod_info</link>          (const <link linkend="Itdb-Device">Itdb_Device</link> *device);
 const <link linkend="Itdb-IpodInfo">Itdb_IpodInfo</link>* <link linkend="itdb-info-get-ipod-info-table">itdb_info_get_ipod_info_table</link>      (void);
 enum                <link linkend="Itdb-IpodGeneration">Itdb_IpodGeneration</link>;
 const <link linkend="gchar">gchar</link>*        <link linkend="itdb-info-get-ipod-generation-string">itdb_info_get_ipod_generation_string</link>
@@ -46,11 +40,15 @@
 enum                <link linkend="Itdb-IpodModel">Itdb_IpodModel</link>;
 const <link linkend="gchar">gchar</link>*        <link linkend="itdb-info-get-ipod-model-name-string">itdb_info_get_ipod_model_name_string</link>
                                                         (<link linkend="Itdb-IpodModel">Itdb_IpodModel</link> model);
-<link linkend="gboolean">gboolean</link>            <link linkend="itdb-init-ipod">itdb_init_ipod</link>                      (const <link linkend="gchar">gchar</link> *mountpoint,
-                                                         const <link linkend="gchar">gchar</link> *model_number,
-                                                         const <link linkend="gchar">gchar</link> *ipod_name,
+                    <link linkend="Itdb-ArtworkFormat">Itdb_ArtworkFormat</link>;
+<link linkend="gboolean">gboolean</link>            <link linkend="itdb-device-read-sysinfo">itdb_device_read_sysinfo</link>            (<link linkend="Itdb-Device">Itdb_Device</link> *device);
+<link linkend="gchar">gchar</link>*              <link linkend="itdb-device-get-sysinfo">itdb_device_get_sysinfo</link>             (const <link linkend="Itdb-Device">Itdb_Device</link> *device,
+                                                         const <link linkend="gchar">gchar</link> *field);
+<link linkend="void">void</link>                <link linkend="itdb-device-set-sysinfo">itdb_device_set_sysinfo</link>             (<link linkend="Itdb-Device">Itdb_Device</link> *device,
+                                                         const <link linkend="gchar">gchar</link> *field,
+                                                         const <link linkend="gchar">gchar</link> *value);
+<link linkend="gboolean">gboolean</link>            <link linkend="itdb-device-write-sysinfo">itdb_device_write_sysinfo</link>           (<link linkend="Itdb-Device">Itdb_Device</link> *device,
                                                          <link linkend="GError">GError</link> **error);
-                    <link linkend="Itdb-ArtworkFormat">Itdb_ArtworkFormat</link>;
 </synopsis>
 </refsynopsisdiv>
 
@@ -162,8 +160,15 @@
                                                          const <link linkend="gchar">gchar</link> *mp);</programlisting>
 <para>
 Sets the mountpoint of <parameter>device</parameter> to <parameter>mp</parameter> and update the cached device 
-information (in particular, re-read the SysInfo file)</para>
+information (in particular, re-read the SysInfo file)
+</para>
 <para>
+<warning><para>Calling this function invalidates all the artwork in the
+<link linkend="Itdb-iTunesDB"><type>Itdb_iTunesDB</type></link> database using this <link linkend="Itdb-Device"><type>Itdb_Device</type></link>. Trying to access this
+artwork will result in memory corruption. It's recommended to use
+<link linkend="itdb-set-mountpoint"><function>itdb_set_mountpoint()</function></link> instead which will clean the invalidated artwork
+for you.</para></warning>.</para>
+<para>
 
 </para><variablelist role="params">
 <varlistentry><term><parameter>device</parameter>&nbsp;:</term>
@@ -175,85 +180,86 @@
 </variablelist><para role="since">Since  0.4.0
 </para></refsect2>
 <refsect2>
-<title><anchor id="itdb-device-read-sysinfo" role="function" condition="since:0.4.0"/>itdb_device_read_sysinfo ()</title>
-<indexterm role="0.4.0"><primary>itdb_device_read_sysinfo</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            itdb_device_read_sysinfo            (<link linkend="Itdb-Device">Itdb_Device</link> *device);</programlisting>
+<title><anchor id="itdb-device-supports-artwork" role="function" condition="since:0.5.0"/>itdb_device_supports_artwork ()</title>
+<indexterm role="0.5.0"><primary>itdb_device_supports_artwork</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            itdb_device_supports_artwork        (const <link linkend="Itdb-Device">Itdb_Device</link> *device);</programlisting>
 <para>
-Reads the SysInfo file and stores information in device->sysinfo for
-later use.</para>
+Indicates whether <parameter>device</parameter> can display artwork or not. When dealing
+with a non-art capable iPod, no artwork data will be written to the
+iPod so you can spare calls to the artwork handling methods.</para>
 <para>
 
 </para><variablelist role="params">
 <varlistentry><term><parameter>device</parameter>&nbsp;:</term>
 <listitem><simpara> an <link linkend="Itdb-Device"><type>Itdb_Device</type></link>
 </simpara></listitem></varlistentry>
-<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> TRUE if file could be read, FALSE otherwise 
+<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> true if <parameter>device</parameter> can display artwork.
 
 </simpara></listitem></varlistentry>
-</variablelist><para role="since">Since  0.4.0
+</variablelist><para role="since">Since  0.5.0
 </para></refsect2>
 <refsect2>
-<title><anchor id="itdb-device-get-sysinfo" role="function" condition="since:0.4.0"/>itdb_device_get_sysinfo ()</title>
-<indexterm role="0.4.0"><primary>itdb_device_get_sysinfo</primary></indexterm><programlisting><link linkend="gchar">gchar</link>*              itdb_device_get_sysinfo             (const <link linkend="Itdb-Device">Itdb_Device</link> *device,
-                                                         const <link linkend="gchar">gchar</link> *field);</programlisting>
+<title><anchor id="itdb-device-supports-chapter-image" role="function" condition="since:0.7.2"/>itdb_device_supports_chapter_image ()</title>
+<indexterm role="0.7.2"><primary>itdb_device_supports_chapter_image</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            itdb_device_supports_chapter_image  (const <link linkend="Itdb-Device">Itdb_Device</link> *device);</programlisting>
 <para>
-Retrieve specified field from the SysInfo file.</para>
+Indicates whether <parameter>device</parameter> can display chapter images or not.</para>
 <para>
 
 </para><variablelist role="params">
 <varlistentry><term><parameter>device</parameter>&nbsp;:</term>
 <listitem><simpara> an <link linkend="Itdb-Device"><type>Itdb_Device</type></link>
 </simpara></listitem></varlistentry>
-<varlistentry><term><parameter>field</parameter>&nbsp;:</term>
-<listitem><simpara>  field to retrive information from
-</simpara></listitem></varlistentry>
-<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> the information associated with <parameter>field</parameter>, or NULL if <parameter>field</parameter>
-couldn't be found. <link linkend="g-free"><function>g_free()</function></link> after use
+<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> true if <parameter>device</parameter> can display chapter images.
 
 </simpara></listitem></varlistentry>
-</variablelist><para role="since">Since  0.4.0
+</variablelist><para role="since">Since  0.7.2
 </para></refsect2>
 <refsect2>
-<title><anchor id="itdb-device-set-sysinfo" role="function" condition="since:0.4.0"/>itdb_device_set_sysinfo ()</title>
-<indexterm role="0.4.0"><primary>itdb_device_set_sysinfo</primary></indexterm><programlisting><link linkend="void">void</link>                itdb_device_set_sysinfo             (<link linkend="Itdb-Device">Itdb_Device</link> *device,
-                                                         const <link linkend="gchar">gchar</link> *field,
-                                                         const <link linkend="gchar">gchar</link> *value);</programlisting>
+<title><anchor id="itdb-device-supports-photo" role="function" condition="since:0.5.0"/>itdb_device_supports_photo ()</title>
+<indexterm role="0.5.0"><primary>itdb_device_supports_photo</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            itdb_device_supports_photo          (const <link linkend="Itdb-Device">Itdb_Device</link> *device);</programlisting>
 <para>
-Set specified field. It can later be written to the iPod using
-<link linkend="itdb-device-write-sysinfo"><function>itdb_device_write_sysinfo()</function></link></para>
+Indicates whether <parameter>device</parameter> can display photos or not.</para>
 <para>
 
 </para><variablelist role="params">
 <varlistentry><term><parameter>device</parameter>&nbsp;:</term>
 <listitem><simpara> an <link linkend="Itdb-Device"><type>Itdb_Device</type></link>
 </simpara></listitem></varlistentry>
-<varlistentry><term><parameter>field</parameter>&nbsp;:</term>
-<listitem><simpara>  field to set
+<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> true if <parameter>device</parameter> can display photos.
+
 </simpara></listitem></varlistentry>
-<varlistentry><term><parameter>value</parameter>&nbsp;:</term>
-<listitem><simpara>  value to set (or NULL to remove the field).
-</simpara></listitem></varlistentry>
-</variablelist><para role="since">Since  0.4.0
+</variablelist><para role="since">Since  0.5.0
 </para></refsect2>
 <refsect2>
-<title><anchor id="itdb-device-write-sysinfo" role="function" condition="since:0.4.0"/>itdb_device_write_sysinfo ()</title>
-<indexterm role="0.4.0"><primary>itdb_device_write_sysinfo</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            itdb_device_write_sysinfo           (<link linkend="Itdb-Device">Itdb_Device</link> *device,
-                                                         <link linkend="GError">GError</link> **error);</programlisting>
+<title><anchor id="itdb-device-supports-podcast" role="function" condition="since:0.7.2"/>itdb_device_supports_podcast ()</title>
+<indexterm role="0.7.2"><primary>itdb_device_supports_podcast</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            itdb_device_supports_podcast        (const <link linkend="Itdb-Device">Itdb_Device</link> *device);</programlisting>
 <para>
-Fills the SysInfo file with information in device->sysinfo. Note:
-no directories are created if not already existent.</para>
+Indicates whether <parameter>device</parameter> can play podcasts or not.</para>
 <para>
 
 </para><variablelist role="params">
 <varlistentry><term><parameter>device</parameter>&nbsp;:</term>
 <listitem><simpara> an <link linkend="Itdb-Device"><type>Itdb_Device</type></link>
 </simpara></listitem></varlistentry>
-<varlistentry><term><parameter>error</parameter>&nbsp;:</term>
-<listitem><simpara>  return location for a <link linkend="GError"><type>GError</type></link> or NULL
+<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> true if <parameter>device</parameter> can play podcasts.
+
 </simpara></listitem></varlistentry>
-<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> TRUE if file could be read, FALSE otherwise 
+</variablelist><para role="since">Since  0.7.2
+</para></refsect2>
+<refsect2>
+<title><anchor id="itdb-device-supports-video" role="function" condition="since:0.7.0"/>itdb_device_supports_video ()</title>
+<indexterm role="0.7.0"><primary>itdb_device_supports_video</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            itdb_device_supports_video          (const <link linkend="Itdb-Device">Itdb_Device</link> *device);</programlisting>
+<para>
+Indicates whether <parameter>device</parameter> can play videos or not.</para>
+<para>
 
+</para><variablelist role="params">
+<varlistentry><term><parameter>device</parameter>&nbsp;:</term>
+<listitem><simpara> an <link linkend="Itdb-Device"><type>Itdb_Device</type></link>
 </simpara></listitem></varlistentry>
-</variablelist><para role="since">Since  0.4.0
+<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> true if <parameter>device</parameter> can play videos.
+
+</simpara></listitem></varlistentry>
+</variablelist><para role="since">Since  0.7.0
 </para></refsect2>
 <refsect2>
 <title><anchor id="Itdb-IpodInfo" role="struct" condition="since:0.4.0"/>Itdb_IpodInfo</title>
@@ -346,61 +352,12 @@
 </variablelist><para role="since">Since  0.4.0
 </para></refsect2>
 <refsect2>
-<title><anchor id="itdb-device-supports-artwork" role="function" condition="since:0.5.0"/>itdb_device_supports_artwork ()</title>
-<indexterm role="0.5.0"><primary>itdb_device_supports_artwork</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            itdb_device_supports_artwork        (const <link linkend="Itdb-Device">Itdb_Device</link> *device);</programlisting>
-<para>
-Indicates whether <parameter>device</parameter> can display artwork or not. When dealing
-with a non-art capable iPod, no artwork data will be written to the
-iPod so you can spare calls to the artwork handling methods.</para>
-<para>
-
-</para><variablelist role="params">
-<varlistentry><term><parameter>device</parameter>&nbsp;:</term>
-<listitem><simpara> an <link linkend="Itdb-Device"><type>Itdb_Device</type></link>
-</simpara></listitem></varlistentry>
-<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> true if <parameter>device</parameter> can display artwork.
-
-</simpara></listitem></varlistentry>
-</variablelist><para role="since">Since  0.5.0
-</para></refsect2>
-<refsect2>
-<title><anchor id="itdb-device-supports-photo" role="function" condition="since:0.5.0"/>itdb_device_supports_photo ()</title>
-<indexterm role="0.5.0"><primary>itdb_device_supports_photo</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            itdb_device_supports_photo          (const <link linkend="Itdb-Device">Itdb_Device</link> *device);</programlisting>
-<para>
-Indicates whether <parameter>device</parameter> can display photos or not.</para>
-<para>
-
-</para><variablelist role="params">
-<varlistentry><term><parameter>device</parameter>&nbsp;:</term>
-<listitem><simpara> an <link linkend="Itdb-Device"><type>Itdb_Device</type></link>
-</simpara></listitem></varlistentry>
-<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> true if <parameter>device</parameter> can display photos.
-
-</simpara></listitem></varlistentry>
-</variablelist><para role="since">Since  0.5.0
-</para></refsect2>
-<refsect2>
-<title><anchor id="itdb-device-supports-video" role="function" condition="since:0.7.0"/>itdb_device_supports_video ()</title>
-<indexterm role="0.7.0"><primary>itdb_device_supports_video</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            itdb_device_supports_video          (const <link linkend="Itdb-Device">Itdb_Device</link> *device);</programlisting>
-<para>
-Indicates whether <parameter>device</parameter> can play videos or not.</para>
-<para>
-
-</para><variablelist role="params">
-<varlistentry><term><parameter>device</parameter>&nbsp;:</term>
-<listitem><simpara> an <link linkend="Itdb-Device"><type>Itdb_Device</type></link>
-</simpara></listitem></varlistentry>
-<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> true if <parameter>device</parameter> can play videos.
-
-</simpara></listitem></varlistentry>
-</variablelist><para role="since">Since  0.7.0
-</para></refsect2>
-<refsect2>
 <title><anchor id="itdb-info-get-ipod-info-table" role="function" condition="since:0.4.0"/>itdb_info_get_ipod_info_table ()</title>
 <indexterm role="0.4.0"><primary>itdb_info_get_ipod_info_table</primary></indexterm><programlisting>const <link linkend="Itdb-IpodInfo">Itdb_IpodInfo</link>* itdb_info_get_ipod_info_table      (void);</programlisting>
 <para>
 Return a pointer to the start of valid iPod model descriptions,
-which is an array of <link linkend="Itdb-IpodInfo"><type>Itdb_IpodInfo</type></link> entries.</para>
+which is an array of <link linkend="Itdb-IpodInfo"><type>Itdb_IpodInfo</type></link> entries. This can be useful if you
+want to build a list of all iPod models known to the current libgpod.</para>
 <para>
 
 </para><variablelist role="params">
@@ -829,38 +786,6 @@
 </variablelist><para role="since">Since  0.4.0
 </para></refsect2>
 <refsect2>
-<title><anchor id="itdb-init-ipod" role="function" condition="since:0.4.0"/>itdb_init_ipod ()</title>
-<indexterm role="0.4.0"><primary>itdb_init_ipod</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            itdb_init_ipod                      (const <link linkend="gchar">gchar</link> *mountpoint,
-                                                         const <link linkend="gchar">gchar</link> *model_number,
-                                                         const <link linkend="gchar">gchar</link> *ipod_name,
-                                                         <link linkend="GError">GError</link> **error);</programlisting>
-<para>
-Initialise an iPod device from scratch. The function attempts to
-create a blank database, complete with master playlist and device
-information as well as the directory structure required for the
-type of iPod.</para>
-<para>
-
-</para><variablelist role="params">
-<varlistentry><term><parameter>mountpoint</parameter>&nbsp;:</term>
-<listitem><simpara>   the iPod mountpoint
-</simpara></listitem></varlistentry>
-<varlistentry><term><parameter>model_number</parameter>&nbsp;:</term>
-<listitem><simpara> the iPod model number
-</simpara></listitem></varlistentry>
-<varlistentry><term><parameter>ipod_name</parameter>&nbsp;:</term>
-<listitem><simpara>    the name to give to the iPod. Will be displayed in
-               gtkpod or itunes
-</simpara></listitem></varlistentry>
-<varlistentry><term><parameter>error</parameter>&nbsp;:</term>
-<listitem><simpara>        return location for a <link linkend="GError"><type>GError</type></link> or NULL
-</simpara></listitem></varlistentry>
-<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> TRUE when successful, FALSE if a failure has occurred.
-
-</simpara></listitem></varlistentry>
-</variablelist><para role="since">Since  0.4.0
-</para></refsect2>
-<refsect2>
 <title><anchor id="Itdb-ArtworkFormat" role="struct"/>Itdb_ArtworkFormat</title>
 <indexterm><primary>Itdb_ArtworkFormat</primary></indexterm><programlisting>typedef struct {
         gint format_id;
@@ -964,7 +889,95 @@
 </simpara></listitem>
 </varlistentry>
 </variablelist></refsect2>
+<refsect2>
+<title><anchor id="itdb-device-read-sysinfo" role="function" condition="since:0.4.0"/>itdb_device_read_sysinfo ()</title>
+<indexterm role="0.4.0"><primary>itdb_device_read_sysinfo</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            itdb_device_read_sysinfo            (<link linkend="Itdb-Device">Itdb_Device</link> *device);</programlisting>
+<para>
+Reads the SysInfo file and stores information in device->sysinfo for
+later use.
+</para>
+<para>
+<warning><para>Calling this function invalidates all the artwork in the
+<link linkend="Itdb-iTunesDB"><type>Itdb_iTunesDB</type></link> database using this <link linkend="Itdb-Device"><type>Itdb_Device</type></link>. Trying to access this
+artwork will result in memory corruption. Directly calling this function
+shouldn't ever be needed and it will be deprecated
+soon.</para></warning>.</para>
+<para>
 
+</para><variablelist role="params">
+<varlistentry><term><parameter>device</parameter>&nbsp;:</term>
+<listitem><simpara> an <link linkend="Itdb-Device"><type>Itdb_Device</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> TRUE if file could be read, FALSE otherwise 
+
+</simpara></listitem></varlistentry>
+</variablelist><para role="since">Since  0.4.0
+</para></refsect2>
+<refsect2>
+<title><anchor id="itdb-device-get-sysinfo" role="function" condition="since:0.4.0"/>itdb_device_get_sysinfo ()</title>
+<indexterm role="0.4.0"><primary>itdb_device_get_sysinfo</primary></indexterm><programlisting><link linkend="gchar">gchar</link>*              itdb_device_get_sysinfo             (const <link linkend="Itdb-Device">Itdb_Device</link> *device,
+                                                         const <link linkend="gchar">gchar</link> *field);</programlisting>
+<para>
+Retrieve specified field from the SysInfo file.</para>
+<para>
+
+</para><variablelist role="params">
+<varlistentry><term><parameter>device</parameter>&nbsp;:</term>
+<listitem><simpara> an <link linkend="Itdb-Device"><type>Itdb_Device</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>field</parameter>&nbsp;:</term>
+<listitem><simpara>  field to retrive information from
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> the information associated with <parameter>field</parameter>, or NULL if <parameter>field</parameter>
+couldn't be found. <link linkend="g-free"><function>g_free()</function></link> after use
+
+</simpara></listitem></varlistentry>
+</variablelist><para role="since">Since  0.4.0
+</para></refsect2>
+<refsect2>
+<title><anchor id="itdb-device-set-sysinfo" role="function" condition="since:0.4.0"/>itdb_device_set_sysinfo ()</title>
+<indexterm role="0.4.0"><primary>itdb_device_set_sysinfo</primary></indexterm><programlisting><link linkend="void">void</link>                itdb_device_set_sysinfo             (<link linkend="Itdb-Device">Itdb_Device</link> *device,
+                                                         const <link linkend="gchar">gchar</link> *field,
+                                                         const <link linkend="gchar">gchar</link> *value);</programlisting>
+<para>
+Set specified field. It can later be written to the iPod using
+<link linkend="itdb-device-write-sysinfo"><function>itdb_device_write_sysinfo()</function></link></para>
+<para>
+
+</para><variablelist role="params">
+<varlistentry><term><parameter>device</parameter>&nbsp;:</term>
+<listitem><simpara> an <link linkend="Itdb-Device"><type>Itdb_Device</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>field</parameter>&nbsp;:</term>
+<listitem><simpara>  field to set
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>value</parameter>&nbsp;:</term>
+<listitem><simpara>  value to set (or NULL to remove the field).
+</simpara></listitem></varlistentry>
+</variablelist><para role="since">Since  0.4.0
+</para></refsect2>
+<refsect2>
+<title><anchor id="itdb-device-write-sysinfo" role="function" condition="since:0.4.0"/>itdb_device_write_sysinfo ()</title>
+<indexterm role="0.4.0"><primary>itdb_device_write_sysinfo</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            itdb_device_write_sysinfo           (<link linkend="Itdb-Device">Itdb_Device</link> *device,
+                                                         <link linkend="GError">GError</link> **error);</programlisting>
+<para>
+Fills the SysInfo file with information in device->sysinfo. Note:
+no directories are created if not already existent.</para>
+<para>
+
+</para><variablelist role="params">
+<varlistentry><term><parameter>device</parameter>&nbsp;:</term>
+<listitem><simpara> an <link linkend="Itdb-Device"><type>Itdb_Device</type></link>
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>error</parameter>&nbsp;:</term>
+<listitem><simpara>  return location for a <link linkend="GError"><type>GError</type></link> or NULL
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> TRUE if file could be read, FALSE otherwise 
+
+</simpara></listitem></varlistentry>
+</variablelist><para role="since">Since  0.4.0
+</para></refsect2>
+
 </refsect1>
 
 

Modified: libgpod/branches/upstream/current/docs/reference/xml/itunesdb-db.xml
===================================================================
--- libgpod/branches/upstream/current/docs/reference/xml/itunesdb-db.xml	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/docs/reference/xml/itunesdb-db.xml	2009-06-19 20:28:03 UTC (rev 384)
@@ -32,6 +32,10 @@
 <link linkend="void">void</link>                <link linkend="itdb-set-mountpoint">itdb_set_mountpoint</link>                 (<link linkend="Itdb-iTunesDB">Itdb_iTunesDB</link> *itdb,
                                                          const <link linkend="gchar">gchar</link> *mp);
 const <link linkend="gchar">gchar</link>*        <link linkend="itdb-get-mountpoint">itdb_get_mountpoint</link>                 (<link linkend="Itdb-iTunesDB">Itdb_iTunesDB</link> *itdb);
+<link linkend="gboolean">gboolean</link>            <link linkend="itdb-init-ipod">itdb_init_ipod</link>                      (const <link linkend="gchar">gchar</link> *mountpoint,
+                                                         const <link linkend="gchar">gchar</link> *model_number,
+                                                         const <link linkend="gchar">gchar</link> *ipod_name,
+                                                         <link linkend="GError">GError</link> **error);
 <link linkend="guint32">guint32</link>             <link linkend="itdb-tracks-number">itdb_tracks_number</link>                  (<link linkend="Itdb-iTunesDB">Itdb_iTunesDB</link> *itdb);
 <link linkend="guint32">guint32</link>             <link linkend="itdb-tracks-number-nontransferred">itdb_tracks_number_nontransferred</link>   (<link linkend="Itdb-iTunesDB">Itdb_iTunesDB</link> *itdb);
 <link linkend="guint32">guint32</link>             <link linkend="itdb-playlists-number">itdb_playlists_number</link>               (<link linkend="Itdb-iTunesDB">Itdb_iTunesDB</link> *itdb);
@@ -346,8 +350,13 @@
 Sets the mountpoint of <parameter>itdb</parameter>. Always use this function to set the
 mountpoint of an <link linkend="Itdb-iTunesDB"><type>Itdb_iTunesDB</type></link> as it will reset the number of
 available /iPod_Control/Music/F.. dirs. It doesn't attempt to parse
-an iPod database that may be present on the iPod at <parameter>mp</parameter>.</para>
+an iPod database that may be present on the iPod at <parameter>mp</parameter>.
+</para>
 <para>
+<note><para>Calling this function removes the artwork in the
+<link linkend="Itdb-iTunesDB"><type>Itdb_iTunesDB</type></link> database using this <link linkend="Itdb-Device"><type>Itdb_Device</type></link> which was read from the
+iPod.</para></note>.</para>
+<para>
 
 </para><variablelist role="params">
 <varlistentry><term><parameter>itdb</parameter>&nbsp;:</term>
@@ -376,6 +385,44 @@
 </variablelist><para role="since">Since  0.4.0
 </para></refsect2>
 <refsect2>
+<title><anchor id="itdb-init-ipod" role="function" condition="since:0.4.0"/>itdb_init_ipod ()</title>
+<indexterm role="0.4.0"><primary>itdb_init_ipod</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>            itdb_init_ipod                      (const <link linkend="gchar">gchar</link> *mountpoint,
+                                                         const <link linkend="gchar">gchar</link> *model_number,
+                                                         const <link linkend="gchar">gchar</link> *ipod_name,
+                                                         <link linkend="GError">GError</link> **error);</programlisting>
+<para>
+Initialise an iPod device from scratch. The function attempts to
+create a blank database, complete with master playlist and device
+information as well as the directory structure required for the
+type of iPod.
+<parameter>model_number</parameter> is used to tell libgpod about the exact iPod
+model, which is needed for proper artwork writing. <parameter>model_number</parameter> can be
+found from the table returned by itdb_device_get_ipod_info_table (for
+example). On recent distros with iPods released
+in the last few years (starting with the iPod Color), it should be fine
+to pass in a NULL <parameter>model_number</parameter> while still getting artwork writing.</para>
+<para>
+
+</para><variablelist role="params">
+<varlistentry><term><parameter>mountpoint</parameter>&nbsp;:</term>
+<listitem><simpara>   the iPod mountpoint
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>model_number</parameter>&nbsp;:</term>
+<listitem><simpara> the iPod model number, can be NULL
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>ipod_name</parameter>&nbsp;:</term>
+<listitem><simpara>    the name to give to the iPod. Will be displayed in
+               gtkpod or itunes
+</simpara></listitem></varlistentry>
+<varlistentry><term><parameter>error</parameter>&nbsp;:</term>
+<listitem><simpara>        return location for a <link linkend="GError"><type>GError</type></link> or NULL
+</simpara></listitem></varlistentry>
+<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> TRUE when successful, FALSE if a failure has occurred.
+
+</simpara></listitem></varlistentry>
+</variablelist><para role="since">Since  0.4.0
+</para></refsect2>
+<refsect2>
 <title><anchor id="itdb-tracks-number" role="function"/>itdb_tracks_number ()</title>
 <indexterm><primary>itdb_tracks_number</primary></indexterm><programlisting><link linkend="guint32">guint32</link>             itdb_tracks_number                  (<link linkend="Itdb-iTunesDB">Itdb_iTunesDB</link> *itdb);</programlisting>
 <para>

Modified: libgpod/branches/upstream/current/m4/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/m4/Makefile.in	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/m4/Makefile.in	2009-06-19 20:28:03 UTC (rev 384)
@@ -88,6 +88,7 @@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
 HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HALFDIDIR = @HALFDIDIR@
 HAL_CFLAGS = @HAL_CFLAGS@
 HAL_LIBS = @HAL_LIBS@
 HTML_DIR = @HTML_DIR@

Modified: libgpod/branches/upstream/current/po/POTFILES.in
===================================================================
--- libgpod/branches/upstream/current/po/POTFILES.in	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/po/POTFILES.in	2009-06-19 20:28:03 UTC (rev 384)
@@ -20,4 +20,5 @@
 tests/test-photos.c
 tests/test-write-covers.c
 tests/test-init-ipod.c
+tools/ipod-time-sync.c
 tools/read-sysinfoextended-sgutils.c

Modified: libgpod/branches/upstream/current/po/de.po
===================================================================
--- libgpod/branches/upstream/current/po/de.po	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/po/de.po	2009-06-19 20:28:03 UTC (rev 384)
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gtkpod 0.52\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-12-07 20:48-0500\n"
+"POT-Creation-Date: 2009-04-03 16:08-0400\n"
 "PO-Revision-Date: 2009-01-05 10:22+0100\n"
 "Last-Translator: Jonas Cleve <jonas_cleve at yahoo.de>\n"
 "Language-Team: none\n"
@@ -16,31 +16,27 @@
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 
-#: ../src/db-artwork-parser.c:156
+#: ../src/db-artwork-parser.c:140
 #, c-format
 msgid "Unexpected mhod string type: %d\n"
 msgstr "Unerwarteter mhod Stringtyp: %d\n"
 
-#: ../src/db-artwork-parser.c:476
+#: ../src/db-artwork-parser.c:460
 #, c-format
 msgid "Unexpected mhsd index: %d\n"
 msgstr "Unerwarteter mhsd-Index: %d\n"
 
-#: ../src/db-artwork-parser.c:522
+#: ../src/db-artwork-parser.c:540
 #, c-format
 msgid "Could not find corresponding track (dbid: %s) for artwork entry.\n"
-msgstr "Konnte zugehöriges Musikstück (dbid: %s) für Artworkeintrag nicht finden.\n"
+msgstr ""
+"Konnte zugehöriges Musikstück (dbid: %s) für Artworkeintrag nicht finden.\n"
 
-#: ../src/db-artwork-parser.c:530
+#: ../src/db-artwork-parser.c:548
 #, c-format
 msgid "iTunesDB and ArtworkDB artwork sizes inconsistent (%d+%d != %d)\n"
 msgstr "Artwork-Größen in iTunesDB und ArtworkDB inkonsistent (%d+%d != %d)\n"
 
-#: ../src/db-artwork-parser.c:566
-#, c-format
-msgid "Could not find artwork entry (mhii id: %u) for track (dbid: %s).\n"
-msgstr "Konnte Bildeintrag (mhii id: %u) für Track (dbid: %s) nicht finden.\n"
-
 #: ../src/db-image-parser.c:91
 #, c-format
 msgid "Unexpected image type in mhni: %d, offset: %d\n"
@@ -51,8 +47,7 @@
 msgid "Could not access file '%s'."
 msgstr "Datei nicht auf Datei zugreifen: '%s'."
 
-#: ../src/itdb_artwork.c:181
-#: ../src/itdb_artwork.c:241
+#: ../src/itdb_artwork.c:181 ../src/itdb_artwork.c:241
 #: ../src/itdb_artwork.c:298
 #, c-format
 msgid "Artwork support not compiled into libgpod."
@@ -65,539 +60,607 @@
 
 #: ../src/itdb_artwork.c:828
 #, c-format
-msgid "Unable to retrieve thumbnail (appears to be on iPod, but no image info available): filename: '%s'\n"
-msgstr "Thumbnail konnte nicht geladen werden (Thumbnail scheint auf dem iPod zu sein, aber die Bilddaten sind nicht verfügbar): Dateiname: '%s'\n"
+msgid ""
+"Unable to retrieve thumbnail (appears to be on iPod, but no image info "
+"available): filename: '%s'\n"
+msgstr ""
+"Thumbnail konnte nicht geladen werden (Thumbnail scheint auf dem iPod zu "
+"sein, aber die Bilddaten sind nicht verfügbar): Dateiname: '%s'\n"
 
-#: ../src/itdb_device.c:256
+#: ../src/itdb_device.c:263
 msgid "Invalid"
 msgstr "Ungültig"
 
-#: ../src/itdb_device.c:257
-#: ../src/itdb_device.c:298
+#: ../src/itdb_device.c:264 ../src/itdb_device.c:305
 msgid "Unknown"
 msgstr "Unbekannt"
 
-#: ../src/itdb_device.c:258
+#: ../src/itdb_device.c:265
 msgid "Color"
 msgstr "Color"
 
-#: ../src/itdb_device.c:259
+#: ../src/itdb_device.c:266
 msgid "Color U2"
 msgstr "Color U2"
 
-#: ../src/itdb_device.c:260
+#: ../src/itdb_device.c:267
 msgid "Grayscale"
 msgstr "Grayscale"
 
-#: ../src/itdb_device.c:261
+#: ../src/itdb_device.c:268
 msgid "Grayscale U2"
 msgstr "Grayscale U2"
 
-#: ../src/itdb_device.c:262
+#: ../src/itdb_device.c:269
 msgid "Mini (Silver)"
 msgstr "Mini (silber)"
 
-#: ../src/itdb_device.c:263
+#: ../src/itdb_device.c:270
 msgid "Mini (Blue)"
 msgstr "Mini (blau)"
 
-#: ../src/itdb_device.c:264
+#: ../src/itdb_device.c:271
 msgid "Mini (Pink)"
 msgstr "Mini (pink)"
 
-#: ../src/itdb_device.c:265
+#: ../src/itdb_device.c:272
 msgid "Mini (Green)"
 msgstr "Mini (grün)"
 
-#: ../src/itdb_device.c:266
+#: ../src/itdb_device.c:273
 msgid "Mini (Gold)"
 msgstr "Mini (gold)"
 
-#: ../src/itdb_device.c:267
+#: ../src/itdb_device.c:274
 msgid "Shuffle"
 msgstr "Shuffle"
 
-#: ../src/itdb_device.c:268
+#: ../src/itdb_device.c:275
 msgid "Nano (White)"
 msgstr "Nano (weiß)"
 
-#: ../src/itdb_device.c:269
+#: ../src/itdb_device.c:276
 msgid "Nano (Black)"
 msgstr "Nano (schwarz)"
 
-#: ../src/itdb_device.c:270
+#: ../src/itdb_device.c:277
 msgid "Video (White)"
 msgstr "Video (weiß)"
 
-#: ../src/itdb_device.c:271
+#: ../src/itdb_device.c:278
 msgid "Video (Black)"
 msgstr "Video (schwarz)"
 
-#: ../src/itdb_device.c:272
+#: ../src/itdb_device.c:279
 msgid "Mobile (1)"
 msgstr "Mobiltelefon (1)"
 
-#: ../src/itdb_device.c:273
+#: ../src/itdb_device.c:280
 msgid "Video U2"
 msgstr "Video U2"
 
-#: ../src/itdb_device.c:274
+#: ../src/itdb_device.c:281
 msgid "Nano (Silver)"
 msgstr "Nano (silber)"
 
 # Nano (blau)
-#: ../src/itdb_device.c:275
+#: ../src/itdb_device.c:282
 msgid "Nano (Blue)"
 msgstr "Nano (blau)"
 
-#: ../src/itdb_device.c:276
+#: ../src/itdb_device.c:283
 msgid "Nano (Green)"
 msgstr "Nano (grün)"
 
-#: ../src/itdb_device.c:277
+#: ../src/itdb_device.c:284
 msgid "Nano (Pink)"
 msgstr "Nano (pink)"
 
 # Nano (blau)
-#: ../src/itdb_device.c:278
+#: ../src/itdb_device.c:285
 msgid "Nano (Red)"
 msgstr "Nano (rot)"
 
 # Nano (blau)
-#: ../src/itdb_device.c:279
+#: ../src/itdb_device.c:286
 msgid "Nano (Yellow)"
 msgstr "Nano (geld)"
 
 # Nano (blau)
-#: ../src/itdb_device.c:280
+#: ../src/itdb_device.c:287
 msgid "Nano (Purple)"
 msgstr "Nano (lila)"
 
-#: ../src/itdb_device.c:281
+#: ../src/itdb_device.c:288
 msgid "Nano (Orange)"
 msgstr "Nano (orange)"
 
-#: ../src/itdb_device.c:282
+#: ../src/itdb_device.c:289
 msgid "iPhone (1)"
 msgstr "iPhone (1)"
 
-#: ../src/itdb_device.c:283
+#: ../src/itdb_device.c:290
 msgid "Shuffle (Silver)"
 msgstr "Shuffle (silber)"
 
-#: ../src/itdb_device.c:284
+#: ../src/itdb_device.c:291
 msgid "Shuffle (Pink)"
 msgstr "Shuffle (pink)"
 
-#: ../src/itdb_device.c:285
+#: ../src/itdb_device.c:292
 msgid "Shuffle (Blue)"
 msgstr "Shuffle (blau)"
 
-#: ../src/itdb_device.c:286
+#: ../src/itdb_device.c:293
 msgid "Shuffle (Green)"
 msgstr "Shuffle (grün)"
 
-#: ../src/itdb_device.c:287
+#: ../src/itdb_device.c:294
 msgid "Shuffle (Orange)"
 msgstr "Shuffle (orange)"
 
-#: ../src/itdb_device.c:288
+#: ../src/itdb_device.c:295
 msgid "Shuffle (Purple)"
 msgstr "Shuffle (lila)"
 
-#: ../src/itdb_device.c:289
+#: ../src/itdb_device.c:296
 msgid "Shuffle (Red)"
 msgstr "Shuffle (rot)"
 
-#: ../src/itdb_device.c:290
+#: ../src/itdb_device.c:297
 msgid "Classic (Silver)"
 msgstr "Classic (silber)"
 
-#: ../src/itdb_device.c:291
+#: ../src/itdb_device.c:298
 msgid "Classic (Black)"
 msgstr "Classic (schwarz)"
 
-#: ../src/itdb_device.c:292
+#: ../src/itdb_device.c:299
 msgid "Touch (Black)"
 msgstr "Touch (schwarz)"
 
-#: ../src/itdb_device.c:299
+#: ../src/itdb_device.c:306
 msgid "Regular (1st Gen.)"
 msgstr "Standard (1. Generation)"
 
-#: ../src/itdb_device.c:300
+#: ../src/itdb_device.c:307
 msgid "Regular (2nd Gen.)"
 msgstr "Standard (2. Generation)"
 
-#: ../src/itdb_device.c:301
+#: ../src/itdb_device.c:308
 msgid "Regular (3rd Gen.)"
 msgstr "Standard (3. Generation)"
 
-#: ../src/itdb_device.c:302
+#: ../src/itdb_device.c:309
 msgid "Regular (4th Gen.)"
 msgstr "Standard (4. Generation)"
 
-#: ../src/itdb_device.c:303
+#: ../src/itdb_device.c:310
 msgid "Photo"
 msgstr "Photo"
 
-#: ../src/itdb_device.c:304
+#: ../src/itdb_device.c:311
 msgid "Mobile Phones"
 msgstr "Mobiltelefone"
 
-#: ../src/itdb_device.c:305
+#: ../src/itdb_device.c:312
 msgid "Mini (1st Gen.)"
 msgstr "Mini (1. Generation)"
 
-#: ../src/itdb_device.c:306
+#: ../src/itdb_device.c:313
 msgid "Mini (2nd Gen.)"
 msgstr "Mini (2. Generation)"
 
-#: ../src/itdb_device.c:307
+#: ../src/itdb_device.c:314
 msgid "Shuffle (1st Gen.)"
 msgstr "Shuffle (1. Generation)"
 
-#: ../src/itdb_device.c:308
+#: ../src/itdb_device.c:315
 msgid "Shuffle (2nd Gen.)"
 msgstr "Shuffle (2. Generation)"
 
-#: ../src/itdb_device.c:309
+#: ../src/itdb_device.c:316
 msgid "Shuffle (3rd Gen.)"
 msgstr "Shuffle (3. Generation)"
 
-#: ../src/itdb_device.c:310
+#: ../src/itdb_device.c:317
 msgid "Nano (1st Gen.)"
 msgstr "Nano (1. Generation)"
 
-#: ../src/itdb_device.c:311
+#: ../src/itdb_device.c:318
 msgid "Nano (2nd Gen.)"
 msgstr "Nano (2. Generation)"
 
-#: ../src/itdb_device.c:312
+#: ../src/itdb_device.c:319
 msgid "Nano Video (3rd Gen.)"
 msgstr "Nano Vide (3. Generation)"
 
-#: ../src/itdb_device.c:313
+#: ../src/itdb_device.c:320
 msgid "Nano Video (4th Gen.)"
 msgstr "Nano Video (4. Generation)"
 
-#: ../src/itdb_device.c:314
+#: ../src/itdb_device.c:321
 msgid "Video (1st Gen.)"
 msgstr "Video (1. Generation)"
 
-#: ../src/itdb_device.c:315
+#: ../src/itdb_device.c:322
 msgid "Video (2nd Gen.)"
 msgstr "Video (2. Generation)"
 
-#: ../src/itdb_device.c:316
-#: ../src/itdb_device.c:317
+#: ../src/itdb_device.c:323 ../src/itdb_device.c:324
 msgid "Classic"
 msgstr "Classic"
 
-#: ../src/itdb_device.c:318
+#: ../src/itdb_device.c:325
 msgid "Touch"
 msgstr "Touch"
 
-#: ../src/itdb_device.c:319
+#: ../src/itdb_device.c:326
 msgid "iPhone"
 msgstr "iPhone"
 
-#: ../src/itdb_device.c:320
-#: ../src/itdb_device.c:321
+#: ../src/itdb_device.c:327 ../src/itdb_device.c:328
 msgid "Unused"
 msgstr "Nicht benutzt"
 
-#: ../src/itdb_device.c:874
+#: ../src/itdb_device.c:928
 #, c-format
 msgid "Could not open '%s' for writing."
 msgstr "'%s' konnte nicht zum Schreiben geöffnet werden."
 
-#: ../src/itdb_device.c:883
+#: ../src/itdb_device.c:937
 #, c-format
 msgid "Device directory does not exist."
 msgstr "Das 'Device'-Verzeichnis existiert nicht."
 
-#: ../src/itdb_itunesdb.c:462
+#: ../src/itdb_itunesdb.c:507
 #, c-format
 msgid "Illegal seek to offset %ld (length %ld) in file '%s'."
 msgstr "Illegaler seek bei Offset %ld (Länge %ld) in Datei '%s'."
 
-#: ../src/itdb_itunesdb.c:915
+#: ../src/itdb_itunesdb.c:910
 #, c-format
 msgid "Not a Play Counts file: '%s' (missing mhdp header)."
 msgstr "Keine Play Counts Datei: '%s' (mhdp-Header fehlt)."
 
-#: ../src/itdb_itunesdb.c:930
+#: ../src/itdb_itunesdb.c:925
 #, c-format
 msgid "Play Counts file ('%s'): header length smaller than expected (%d<96)."
 msgstr "Play Counts Datei ('%s'): Headerlänge kleiner als erwarted (%d<96)."
 
-#: ../src/itdb_itunesdb.c:944
+#: ../src/itdb_itunesdb.c:939
 #, c-format
 msgid "Play Counts file ('%s'): entry length smaller than expected (%d<12)."
-msgstr "Play Counts Datei ('%s'): Länge der Einträge kleiner als erwartet (%d<12)."
+msgstr ""
+"Play Counts Datei ('%s'): Länge der Einträge kleiner als erwartet (%d<12)."
 
-#: ../src/itdb_itunesdb.c:1019
+#: ../src/itdb_itunesdb.c:1014
 #, c-format
 msgid "iTunesStats file ('%s'): entry length smaller than expected (%d<18)."
-msgstr "iTunesStats Datei ('%s'): Länge der Einträge kleiner als erwartet (%d<18)."
+msgstr ""
+"iTunesStats Datei ('%s'): Länge der Einträge kleiner als erwartet (%d<18)."
 
-#: ../src/itdb_itunesdb.c:1338
+#: ../src/itdb_itunesdb.c:1333
 #, c-format
 msgid "iTunesDB corrupt: no MHOD at offset %ld in file '%s'."
 msgstr "iTunesDB beschädigt: kein MHOD bei Offset %ld in Datei '%s'."
 
-#: ../src/itdb_itunesdb.c:1524
+#: ../src/itdb_itunesdb.c:1519
 #, c-format
 msgid "Unknown smart rule action at %ld: %x. Trying to continue.\n"
-msgstr "Unbekannte Aktion für Smart Playlist bei %ld: %x. Es wird trotzdem versucht, weiterzumachen.\n"
+msgstr ""
+"Unbekannte Aktion für Smart Playlist bei %ld: %x. Es wird trotzdem versucht, "
+"weiterzumachen.\n"
 
-#: ../src/itdb_itunesdb.c:1555
+#: ../src/itdb_itunesdb.c:1550
 #, c-format
-msgid "Length of smart playlist rule field (%d) not as expected. Trying to continue anyhow.\n"
-msgstr "Die Länge einer Regel (%d) einer intelligenten Wiedergabeliste weicht von der erwarteten Länge ab. Es wird versucht fortzufahren.\n"
+msgid ""
+"Length of smart playlist rule field (%d) not as expected. Trying to continue "
+"anyhow.\n"
+msgstr ""
+"Die Länge einer Regel (%d) einer intelligenten Wiedergabeliste weicht von "
+"der erwarteten Länge ab. Es wird versucht fortzufahren.\n"
 
-#: ../src/itdb_itunesdb.c:1598
+#: ../src/itdb_itunesdb.c:1593
 #, c-format
 msgid "iTunesDB corrupt: no SLst at offset %ld in file '%s'."
 msgstr "iTunesDB beschädigt: kein SLst-Eintrag bei Offset %ld in Datei '%s'."
 
-#: ../src/itdb_itunesdb.c:1611
+#: ../src/itdb_itunesdb.c:1606
 #, c-format
 msgid ""
 "Encountered unknown MHOD type (%d) while parsing the iTunesDB. Ignoring.\n"
 "\n"
 msgstr ""
-"Unbekannter MHOD-Typ (%d) während des Parsens der iTunesDB gefunden. Es wird versucht fortzufahren.\n"
+"Unbekannter MHOD-Typ (%d) während des Parsens der iTunesDB gefunden. Es wird "
+"versucht fortzufahren.\n"
 "\n"
 
-#: ../src/itdb_itunesdb.c:1691
+#: ../src/itdb_itunesdb.c:1689
 #, c-format
 msgid "iTunesDB corrupt: hunk length 0 for hunk at %ld in file '%s'."
-msgstr "iTunesDB beschädigt: Hunklänge ist Null für den Hunk an Offset %ld in Datei '%s'."
+msgstr ""
+"iTunesDB beschädigt: Hunklänge ist Null für den Hunk an Offset %ld in Datei "
+"'%s'."
 
-#: ../src/itdb_itunesdb.c:1704
+#: ../src/itdb_itunesdb.c:1702
 #, c-format
-msgid "iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
-msgstr "iTunesDB beschädigt: kein '%s'-Eintrag in Sektion '%s' (startend bei %ld) gefunden."
+msgid ""
+"iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
+msgstr ""
+"iTunesDB beschädigt: kein '%s'-Eintrag in Sektion '%s' (startend bei %ld) "
+"gefunden."
 
-#: ../src/itdb_itunesdb.c:1718
+#: ../src/itdb_itunesdb.c:1716
 #, c-format
-msgid "header length of '%s' smaller than expected (%d < %d) at offset %ld in file '%s'."
-msgstr "Header-Länge des Abschnitts '%s' ist kleiner als erwartet (%d < %d) an Offset %ld in Datei '%s'."
+msgid ""
+"header length of '%s' smaller than expected (%d < %d) at offset %ld in file "
+"'%s'."
+msgstr ""
+"Header-Länge des Abschnitts '%s' ist kleiner als erwartet (%d < %d) an "
+"Offset %ld in Datei '%s'."
 
-#: ../src/itdb_itunesdb.c:1803
+#: ../src/itdb_itunesdb.c:1801
 #, c-format
 msgid "Not a iTunesDB: '%s' (missing mhdb header)."
 msgstr "Keine iTunesDB Datei: '%s' (kein mhdb-Header)."
 
-#: ../src/itdb_itunesdb.c:1820
+#: ../src/itdb_itunesdb.c:1818
 #, c-format
-msgid "iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). Aborting."
-msgstr "iTunesDB ('%s'): Headerlänge des mhsd-Hunks is kleiner als erwartet (%d<32). Breche ab."
+msgid ""
+"iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). "
+"Aborting."
+msgstr ""
+"iTunesDB ('%s'): Headerlänge des mhsd-Hunks is kleiner als erwartet (%d<32). "
+"Breche ab."
 
-#: ../src/itdb_itunesdb.c:1841
+#: ../src/itdb_itunesdb.c:1839
 #, c-format
 msgid "iTunesDB '%s' corrupt: mhsd expected at %ld."
-msgstr "Die iTunesDB '%s' ist beschädigt: bei Offset %ld wird ein mhsd-Abschnitt erwartet."
+msgstr ""
+"Die iTunesDB '%s' ist beschädigt: bei Offset %ld wird ein mhsd-Abschnitt "
+"erwartet."
 
-#: ../src/itdb_itunesdb.c:1958
+#: ../src/itdb_itunesdb.c:1944
 #, c-format
 msgid "Number of MHODs in mhip at %ld inconsistent in file '%s'."
-msgstr "Anzahl der MHODs-Abschnitte in der mhip-Sektion an Offset %ld ist in der Datei '%s' nicht konsistent."
+msgstr ""
+"Anzahl der MHODs-Abschnitte in der mhip-Sektion an Offset %ld ist in der "
+"Datei '%s' nicht konsistent."
 
-#: ../src/itdb_itunesdb.c:1976
+#: ../src/itdb_itunesdb.c:2121
 #, c-format
-msgid "Itdb_Track ID '%d' not found.\n"
-msgstr "Itdb_Track ID '%d' nicht gefunden.\n"
-
-#: ../src/itdb_itunesdb.c:2146
-#, c-format
 msgid "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
-msgstr "Anzahl der MHOD-Abschnitte in der mhyp-Sektion bei Offset %ld in der Datei '%s' ist inkonsistent."
+msgstr ""
+"Anzahl der MHOD-Abschnitte in der mhyp-Sektion bei Offset %ld in der Datei '%"
+"s' ist inkonsistent."
 
-#: ../src/itdb_itunesdb.c:2156
+#: ../src/itdb_itunesdb.c:2131
 msgid "Master-PL"
 msgstr "Haupt-PL"
 
-#: ../src/itdb_itunesdb.c:2160
+#: ../src/itdb_itunesdb.c:2135
 msgid "Podcasts"
 msgstr "Podcasts"
 
-#: ../src/itdb_itunesdb.c:2162
+#: ../src/itdb_itunesdb.c:2137
 msgid "Playlist"
 msgstr "Wiedergabeliste"
 
-#: ../src/itdb_itunesdb.c:2184
+#: ../src/itdb_itunesdb.c:2159
 #, c-format
-msgid "iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %ld in file '%s'."
-msgstr "Die iTunesDB ist beschädigt: die Anzahl der mhip-Sektionen im mhyp-Abschnit startend bei %ld in Datei '%s' ist inkonsistent."
+msgid ""
+"iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %"
+"ld in file '%s'."
+msgstr ""
+"Die iTunesDB ist beschädigt: die Anzahl der mhip-Sektionen im mhyp-Abschnit "
+"startend bei %ld in Datei '%s' ist inkonsistent."
 
-#: ../src/itdb_itunesdb.c:2527
+#: ../src/itdb_itunesdb.c:2180
+#, c-format
+msgid "Itdb_Track ID '%d' not found.\n"
+msgstr "Itdb_Track ID '%d' nicht gefunden.\n"
+
+#: ../src/itdb_itunesdb.c:2524
 msgid "OTG Playlist"
 msgstr "OTG-Wiedergabeliste"
 
-#: ../src/itdb_itunesdb.c:2545
+#: ../src/itdb_itunesdb.c:2542
 #, c-format
 msgid "Not a OTG playlist file: '%s' (missing mhpo header)."
 msgstr "Keine OTG (On-The-Go) Wiedergabelistendatei: '%s' (mhpo-Header fehlt)."
 
-#: ../src/itdb_itunesdb.c:2559
+#: ../src/itdb_itunesdb.c:2556
 #, c-format
 msgid "OTG playlist file ('%s'): header length smaller than expected (%d<20)."
-msgstr "OTG (On-The-Go) Wiedergabelistendatei ('%s'): Headerlänger kleiner als erwartet (%d<20)."
+msgstr ""
+"OTG (On-The-Go) Wiedergabelistendatei ('%s'): Headerlänger kleiner als "
+"erwartet (%d<20)."
 
-#: ../src/itdb_itunesdb.c:2571
+#: ../src/itdb_itunesdb.c:2568
 #, c-format
 msgid "OTG playlist file ('%s'): entry length smaller than expected (%d<4)."
-msgstr "OTG (On-The-Go) Wiedergabelistendatei ('%s'): Länge der Einträge ist kleiner als erwartet (%d<4)."
+msgstr ""
+"OTG (On-The-Go) Wiedergabelistendatei ('%s'): Länge der Einträge ist kleiner "
+"als erwartet (%d<4)."
 
-#: ../src/itdb_itunesdb.c:2606
+#: ../src/itdb_itunesdb.c:2603
 #, c-format
 msgid "OTG playlist file '%s': reference to non-existent track (%d)."
-msgstr "OTG (On-The-Go) Wiedergabelistendateii '%s' bezieht sich auf ein nicht existierendes Stück (%d)."
+msgstr ""
+"OTG (On-The-Go) Wiedergabelistendateii '%s' bezieht sich auf ein nicht "
+"existierendes Stück (%d)."
 
-#: ../src/itdb_itunesdb.c:2651
+#: ../src/itdb_itunesdb.c:2648
 #, c-format
 msgid "OTG Playlist %d"
 msgstr "OTG-Wiedergabeliste %d"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2719
-msgid "iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to continue.\n"
-msgstr "Die iTunesDB ist beschädigt: Anzahl der Stücke (mhit-Hunks) ist nicht konsistent. Versuche fortzufahren.\n"
+#: ../src/itdb_itunesdb.c:2716
+msgid ""
+"iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to "
+"continue.\n"
+msgstr ""
+"Die iTunesDB ist beschädigt: Anzahl der Stücke (mhit-Hunks) ist nicht "
+"konsistent. Versuche fortzufahren.\n"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2782
-msgid "iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. Trying to continue.\n"
-msgstr "iTunesDB möglicherweise beschädigt: Anzahl der Wiedergabelisten (mhyp-Hunks) ist nicht konsistent. Versuche fortzufahren.\n"
+#: ../src/itdb_itunesdb.c:2779
+msgid ""
+"iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. "
+"Trying to continue.\n"
+msgstr ""
+"iTunesDB möglicherweise beschädigt: Anzahl der Wiedergabelisten (mhyp-Hunks) "
+"ist nicht konsistent. Versuche fortzufahren.\n"
 
-#: ../src/itdb_itunesdb.c:2829
+#: ../src/itdb_itunesdb.c:2826
 #, c-format
-msgid "iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section found)"
-msgstr "Die iTunesDB '%s' ist beschädigt: die Trackliste konnte nicht gefunden werden (kein mhsd-Abschnitt des Typs 1 gefunden)."
+msgid ""
+"iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section "
+"found)"
+msgstr ""
+"Die iTunesDB '%s' ist beschädigt: die Trackliste konnte nicht gefunden "
+"werden (kein mhsd-Abschnitt des Typs 1 gefunden)."
 
-#: ../src/itdb_itunesdb.c:2858
+#: ../src/itdb_itunesdb.c:2855
 #, c-format
-msgid "iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 sections found)"
-msgstr "Die iTunesDB '%s' ist beschädigt: die Playlisten konnten nicht gefunden werden (keine mhsd-Abschnitte des Typs 2 oder 3 gefunden)."
+msgid ""
+"iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 "
+"sections found)"
+msgstr ""
+"Die iTunesDB '%s' ist beschädigt: die Playlisten konnten nicht gefunden "
+"werden (keine mhsd-Abschnitte des Typs 2 oder 3 gefunden)."
 
-#: ../src/itdb_itunesdb.c:2880
+#: ../src/itdb_itunesdb.c:2877
 #, c-format
 msgid "iTunes directory not found: '%s' (or similar)."
-msgstr "Das 'iTunes'-Verzeichnis konnte nicht gefunden werden: '%s' (oder ähnlich)."
+msgstr ""
+"Das 'iTunes'-Verzeichnis konnte nicht gefunden werden: '%s' (oder ähnlich)."
 
-#: ../src/itdb_itunesdb.c:2897
+#: ../src/itdb_itunesdb.c:2894
 #, c-format
 msgid "Music directory not found: '%s' (or similar)."
-msgstr "Das 'Music'-Verzeichnis konnte nicht gefunden werden: '%s' (oder ähnlich)."
+msgstr ""
+"Das 'Music'-Verzeichnis konnte nicht gefunden werden: '%s' (oder ähnlich)."
 
-#: ../src/itdb_itunesdb.c:2915
+#: ../src/itdb_itunesdb.c:2912
 #, c-format
 msgid "Control directory not found: '%s' (or similar)."
-msgstr "Das 'Control'-Verzeichnis konnte nicht gefunden werden: '%s' (oder ähnlich)."
+msgstr ""
+"Das 'Control'-Verzeichnis konnte nicht gefunden werden: '%s' (oder ähnlich)."
 
-#: ../src/itdb_itunesdb.c:3036
+#: ../src/itdb_itunesdb.c:3033
 #, c-format
 msgid "File not found: '%s'."
 msgstr "Datei nicht gefunden: '%s'."
 
-#: ../src/itdb_itunesdb.c:5410
+#: ../src/itdb_itunesdb.c:5533
 #, c-format
 msgid "Path not found: '%s' (or similar)."
 msgstr "Pfad nicht gefunden: '%s' (oder ähnlich)."
 
-#: ../src/itdb_itunesdb.c:5616
+#: ../src/itdb_itunesdb.c:5742
 #, c-format
 msgid "Error renaming '%s' to '%s' (%s)."
 msgstr "Fehler beim Umbenennen von '%s' nach '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5633
-#: ../src/itdb_itunesdb.c:5650
+#: ../src/itdb_itunesdb.c:5759 ../src/itdb_itunesdb.c:5776
+#: ../src/itdb_itunesdb.c:5793
 #, c-format
 msgid "Error removing '%s' (%s)."
 msgstr "Fehler beim Entfernen von '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5812
-#: ../src/itdb_itunesdb.c:5985
+#: ../src/itdb_itunesdb.c:5960 ../src/itdb_itunesdb.c:6133
 #, c-format
 msgid "Mountpoint not set."
 msgstr "Mountpoint wurde nicht gesetzt."
 
-#: ../src/itdb_itunesdb.c:5852
+#: ../src/itdb_itunesdb.c:6000
 #, c-format
 msgid "No 'F..' directories found in '%s'."
 msgstr "No 'F..' directories were found in '%s'."
 
-#: ../src/itdb_itunesdb.c:5873
+#: ../src/itdb_itunesdb.c:6021
 #, c-format
 msgid "Path not found: '%s'."
 msgstr "Pfad nicht gefunden: '%s'."
 
-#: ../src/itdb_itunesdb.c:5994
+#: ../src/itdb_itunesdb.c:6142
 #, c-format
 msgid "'%s' could not be accessed (%s)."
 msgstr "Auf Datei '%s' konnte nicht zugegriffen werden (%s)."
 
-#: ../src/itdb_itunesdb.c:6004
+#: ../src/itdb_itunesdb.c:6152
 #, c-format
-msgid "Destination file '%s' does not appear to be on the iPod mounted at '%s'."
-msgstr "Zieldatei '%s' scheint nicht auf dem iPod zu sein, welcher bei '%s' eingebunden ist."
+msgid ""
+"Destination file '%s' does not appear to be on the iPod mounted at '%s'."
+msgstr ""
+"Zieldatei '%s' scheint nicht auf dem iPod zu sein, welcher bei '%s' "
+"eingebunden ist."
 
-#: ../src/itdb_itunesdb.c:6212
+#: ../src/itdb_itunesdb.c:6360
 #, c-format
 msgid "Error opening '%s' for reading (%s)."
 msgstr "Fehler beim Öffnen von '%s' zum Lesen (%s)."
 
-#: ../src/itdb_itunesdb.c:6224
+#: ../src/itdb_itunesdb.c:6372
 #, c-format
 msgid "Error opening '%s' for writing (%s)."
 msgstr "Fehler beim Öffnen von '%s' zum Schreiben (%s)."
 
-#: ../src/itdb_itunesdb.c:6240
+#: ../src/itdb_itunesdb.c:6388
 #, c-format
 msgid "Error while reading from '%s' (%s)."
 msgstr "Fehler beim Lesen aus '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6255
+#: ../src/itdb_itunesdb.c:6403
 #, c-format
 msgid "Error while writing to '%s' (%s)."
 msgstr "Fehler beim Schreiben in die Datei '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6268
-#: ../src/itdb_itunesdb.c:6278
+#: ../src/itdb_itunesdb.c:6416 ../src/itdb_itunesdb.c:6426
 #, c-format
 msgid "Error when closing '%s' (%s)."
 msgstr "Fehler beim Schließen der Datei '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6702
+#: ../src/itdb_itunesdb.c:6856
 msgid "iPod"
 msgstr "iPod"
 
-#: ../src/itdb_itunesdb.c:7024
+#: ../src/itdb_itunesdb.c:7178
 #, c-format
 msgid "Problem creating iPod directory or file: '%s'."
-msgstr "Problem beim Erstellen eines Verzeichnisses oder einer Datei auf dem iPod: '%s'."
+msgstr ""
+"Problem beim Erstellen eines Verzeichnisses oder einer Datei auf dem iPod: '%"
+"s'."
 
 #: ../src/itdb_photoalbum.c:111
 #, c-format
 msgid "Photos directory not found: '%s' (or similar)."
-msgstr "Der Pfad zum Fotoverzeichnis konnte nicht gefunden werden: '%s' (oder ähnlich)."
+msgstr ""
+"Der Pfad zum Fotoverzeichnis konnte nicht gefunden werden: '%s' (oder "
+"ähnlich)."
 
-#: ../src/itdb_photoalbum.c:266
-#: ../src/itdb_photoalbum.c:460
+#: ../src/itdb_photoalbum.c:266 ../src/itdb_photoalbum.c:460
 msgid "Photo Library"
 msgstr "Fotoarchiv"
 
 #: ../src/itdb_photoalbum.c:386
 #, c-format
 msgid "You need to specify the iPod model used before photos can be added."
-msgstr "Siem müssen das iPod-Model angeben, bevor Fotos hinzugefügt werden können."
+msgstr ""
+"Siem müssen das iPod-Model angeben, bevor Fotos hinzugefügt werden können."
 
 #: ../src/itdb_photoalbum.c:407
 #, c-format
-msgid "Your iPod does not seem to support photos. Maybe you need to specify the correct iPod model number? It is currently set to 'x%s' (%s/%s)."
-msgstr "Ihr iPod scheint Fotos nicht zu unterstützen. Eventuell müssen Sie auch nur das korrekte iPod-Model angeben. Zur Zeit haben Sie folgendes Modell eingestellt: 'x%s' (%s/%s)."
+msgid ""
+"Your iPod does not seem to support photos. Maybe you need to specify the "
+"correct iPod model number? It is currently set to 'x%s' (%s/%s)."
+msgstr ""
+"Ihr iPod scheint Fotos nicht zu unterstützen. Eventuell müssen Sie auch nur "
+"das korrekte iPod-Model angeben. Zur Zeit haben Sie folgendes Modell "
+"eingestellt: 'x%s' (%s/%s)."
 
 #: ../src/itdb_photoalbum.c:419
 #, c-format
@@ -606,19 +669,27 @@
 
 #: ../src/itdb_photoalbum.c:448
 #, c-format
-msgid "Unexpected error in itdb_photodb_add_photo_internal() while adding photo, please report."
-msgstr "Unerwarteter Fehler in itdb_photodb_add_photo_internal() während des Hinzufügens eines Fotos. Bitter teilen Sie uns diesen Vorgang mit."
+msgid ""
+"Unexpected error in itdb_photodb_add_photo_internal() while adding photo, "
+"please report."
+msgstr ""
+"Unerwarteter Fehler in itdb_photodb_add_photo_internal() während des "
+"Hinzufügens eines Fotos. Bitter teilen Sie uns diesen Vorgang mit."
 
 #: ../src/itdb_photoalbum.c:468
 #, c-format
-msgid "Library compiled without gdk-pixbuf support. Picture support is disabled."
-msgstr "Die Bibliothek wurde ohne gdk-pixbuf-Unterstützung kompiliert. Fotos werden daher nicht unterstützt."
+msgid ""
+"Library compiled without gdk-pixbuf support. Picture support is disabled."
+msgstr ""
+"Die Bibliothek wurde ohne gdk-pixbuf-Unterstützung kompiliert. Fotos werden "
+"daher nicht unterstützt."
 
 #. New action!
 #: ../src/itdb_playlist.c:78
 #, c-format
 msgid "Unknown action (%d) in smart playlist will be ignored.\n"
-msgstr "Unbekannte Aktion (%d) in intelligenter Wiedergabeliste wird ignoriert.\n"
+msgstr ""
+"Unbekannte Aktion (%d) in intelligenter Wiedergabeliste wird ignoriert.\n"
 
 #: ../src/itdb_thumb.c:326
 #, c-format
@@ -635,8 +706,10 @@
 msgid ""
 "Usage to add photos:\n"
 "  %s add <mountpoint> <albumname> [<filename(s)>]\n"
-"  <albumname> should be set to 'NULL' to add photos to the master photo album\n"
-"  (Photo Library) only. If you don't specify any filenames an empty album will\n"
+"  <albumname> should be set to 'NULL' to add photos to the master photo "
+"album\n"
+"  (Photo Library) only. If you don't specify any filenames an empty album "
+"will\n"
 "  be created.\n"
 msgstr ""
 "Syntax, um Fotos hinzuzufügen:\n"
@@ -675,7 +748,8 @@
 msgstr ""
 "Syntax, um Fotos aus dem Fotoarchiv zu entfernen:\n"
 "  %s remove <Mountpoint> <Name des Albums> [<ID(s)>]\n"
-"  <Name des Albums> sollte als 'Null' angegeben werden, um Fotos vollständig\n"
+"  <Name des Albums> sollte als 'Null' angegeben werden, um Fotos "
+"vollständig\n"
 "  vom iPod zu entfernen. Wenn keine IDs angegeben werden, wird stattdessen\n"
 "  das bezeichnete Fotoalbum entfernt.\n"
 "  Vorsicht: IDs können sich verändern, wenn die Datenbank geschrieben wird.\n"
@@ -695,24 +769,20 @@
 msgid "Error: '%s' is not a directory\n"
 msgstr "Fehler: '%s' ist kein Verzeichnis\n"
 
-#: ../tests/test-photos.c:143
-#: ../tests/test-photos.c:177
+#: ../tests/test-photos.c:143 ../tests/test-photos.c:177
 #: ../tests/test-photos.c:306
 #, c-format
 msgid "Error reading iPod photo database (%s).\n"
 msgstr "Fehler beim Lesen des iPod Fotobarchivs (%s).\n"
 
-#: ../tests/test-photos.c:149
-#: ../tests/test-photos.c:183
+#: ../tests/test-photos.c:149 ../tests/test-photos.c:183
 #: ../tests/test-photos.c:313
 #, c-format
 msgid "Error reading iPod photo database.\n"
 msgstr "Fehler beim Lesen der iPod Fotodatenbank.\n"
 
-#: ../tests/test-photos.c:167
-#: ../tests/test-photos.c:226
-#: ../tests/test-photos.c:296
-#: ../tests/test-photos.c:379
+#: ../tests/test-photos.c:167 ../tests/test-photos.c:226
+#: ../tests/test-photos.c:296 ../tests/test-photos.c:379
 #, c-format
 msgid "Insufficient number of command line arguments.\n"
 msgstr "Unzureichende Anzahl von Kommandozeilenargumenten.\n"
@@ -737,8 +807,11 @@
 
 #: ../tests/test-photos.c:242
 #, c-format
-msgid "Error reading iPod photo database, will attempt to create a new database\n"
-msgstr "Fehler beim Lesen der iPod Fotodatenbank. Es wird versucht, eine neue Datenbank zu erstellen.\n"
+msgid ""
+"Error reading iPod photo database, will attempt to create a new database\n"
+msgstr ""
+"Fehler beim Lesen der iPod Fotodatenbank. Es wird versucht, eine neue "
+"Datenbank zu erstellen.\n"
 
 #: ../tests/test-photos.c:267
 #, c-format
@@ -753,12 +826,16 @@
 #: ../tests/test-photos.c:336
 #, c-format
 msgid "Cannot remove Photo Library playlist. Aborting.\n"
-msgstr "Es ist nicht möglich, die 'Fotoarchiv'-Wiedergabeliste zu entfernen. Breche ab.\n"
+msgstr ""
+"Es ist nicht möglich, die 'Fotoarchiv'-Wiedergabeliste zu entfernen. Breche "
+"ab.\n"
 
 #: ../tests/test-photos.c:357
 #, c-format
 msgid "Warning: could not find photo with ID <%d>. Skipping...\n"
-msgstr "Warnung: das Foto mit der ID <%d> konnte nicht gefunden werden. Ich mache mit dem nächsten Foto weiter...\n"
+msgstr ""
+"Warnung: das Foto mit der ID <%d> konnte nicht gefunden werden. Ich mache "
+"mit dem nächsten Foto weiter...\n"
 
 #: ../tests/test-photos.c:403
 #, c-format
@@ -775,6 +852,11 @@
 msgid "Error initialising iPod, unknown error\n"
 msgstr "Konnte iPod nicht initialisieren: unbekannte Fehler\n"
 
+#: ../tools/ipod-time-sync.c:37
+#, fuzzy, c-format
+msgid "usage: %s <device> [timezone]\n"
+msgstr "Benutzung: %s <Gerät> <Mountpoint>\n"
+
 #: ../tools/read-sysinfoextended-sgutils.c:39
 #, c-format
 msgid "usage: %s <device> <mountpoint>\n"
@@ -800,35 +882,50 @@
 msgid "Couldn't write SysInfoExtended to %s"
 msgstr "Konnte SysInfoExtended nicht nach %s schreiben"
 
+#~ msgid "Could not find artwork entry (mhii id: %u) for track (dbid: %s).\n"
+#~ msgstr ""
+#~ "Konnte Bildeintrag (mhii id: %u) für Track (dbid: %s) nicht finden.\n"
+
 #~ msgid "First Generation"
 #~ msgstr "Erste Generation"
+
 #~ msgid "Second Generation"
 #~ msgstr "Zweite Generation"
+
 #~ msgid "Third Generation"
 #~ msgstr "Dritte Generation"
+
 #~ msgid "Fourth Generation"
 #~ msgstr "Vierte Generation"
+
 #~ msgid "Fifth Generation"
 #~ msgstr "Fünfte Generation"
+
 #~ msgid "Sixth Generation"
 #~ msgstr "Sechste Generation"
+
 #~ msgid "Opening of '%s' for writing failed (%s)."
 #~ msgstr "Öffnen der Datei '%s' zum Schreiben ist fehlgeschlagen (%s)."
+
 #~ msgid "Writing to '%s' failed (%s)."
 #~ msgstr "Schreiben in die Datei '%s' ist fehlgeschlagen (%s)."
+
 #~ msgid "Cannot write mhod of type %d\n"
 #~ msgstr "Schreiben eines mhod-Hunks vom Typ %d ist nicht unterstützt.\n"
+
 #~ msgid "Error reading iPod photo database"
 #~ msgstr "Fehler beim Lesen des iPod Fotoarchivs"
+
 #~ msgid "Writing to '%s' failed."
 #~ msgstr "Fehler beim Schreiben in die Datei '%s'."
+
 #~ msgid "Database in memory corrupt (track pointer == NULL). Aborting export."
 #~ msgstr ""
 #~ "Datenbank im Speicher beschädigt (Zeiger auf Stück == NULL). Der Export "
 #~ "wird abgebrochen."
+
 #~ msgid ""
 #~ "Database in memory corrupt (playlist pointer == NULL). Aborting export."
 #~ msgstr ""
 #~ "Datenbank im Speicher beschädigt (Zeiger auf Wiedergabeliste == NULL). "
 #~ "Der Export wird abgebrochen."
-

Modified: libgpod/branches/upstream/current/po/es.po
===================================================================
--- libgpod/branches/upstream/current/po/es.po	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/po/es.po	2009-06-19 20:28:03 UTC (rev 384)
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: libgpod\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-12-07 20:48-0500\n"
+"POT-Creation-Date: 2009-04-03 16:08-0400\n"
 "PO-Revision-Date: 2008-12-26 14:57+0100\n"
 "Last-Translator: Alejandro Lamas Daviña <alejandro.lamas at ific.uv.es>\n"
 "Language-Team: spanish <es_ES>\n"
@@ -16,35 +16,30 @@
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 "X-Generator: KBabel 1.11.4\n"
 
-#: ../src/db-artwork-parser.c:156
+#: ../src/db-artwork-parser.c:140
 #, c-format
 msgid "Unexpected mhod string type: %d\n"
 msgstr "Tipo de cadena mhod no esperado: %d\n"
 
-#: ../src/db-artwork-parser.c:476
+#: ../src/db-artwork-parser.c:460
 #, c-format
 msgid "Unexpected mhsd index: %d\n"
 msgstr "Índice mhsd no esperado: %d\n"
 
-#: ../src/db-artwork-parser.c:522
+#: ../src/db-artwork-parser.c:540
 #, c-format
 msgid "Could not find corresponding track (dbid: %s) for artwork entry.\n"
 msgstr ""
 "No se ha podido encontrar la pista correspondiente (dbid: %s) a la "
 "carátula.\n"
 
-#: ../src/db-artwork-parser.c:530
+#: ../src/db-artwork-parser.c:548
 #, c-format
 msgid "iTunesDB and ArtworkDB artwork sizes inconsistent (%d+%d != %d)\n"
 msgstr ""
 "El tamaño de las carátulas de iTunesDB y ArtworkDB no es consistente (%d+%d !"
 "= %d)\n"
 
-#: ../src/db-artwork-parser.c:566
-#, c-format
-msgid "Could not find artwork entry (mhii id: %u) for track (dbid: %s).\n"
-msgstr "No se ha podido encontrar la carátula (mhii id: %u) correspondiente a la pista (dbid: %s) .\n"
-
 #: ../src/db-image-parser.c:91
 #, c-format
 msgid "Unexpected image type in mhni: %d, offset: %d\n"
@@ -71,292 +66,295 @@
 msgid ""
 "Unable to retrieve thumbnail (appears to be on iPod, but no image info "
 "available): filename: '%s'\n"
-msgstr "Imposible cargar la imagen de muestra (parece estar en el iPod, pero no hay información disponible de la imagen): nombre de fichero: '%s'\n"
+msgstr ""
+"Imposible cargar la imagen de muestra (parece estar en el iPod, pero no hay "
+"información disponible de la imagen): nombre de fichero: '%s'\n"
 
-#: ../src/itdb_device.c:256
+#: ../src/itdb_device.c:263
 msgid "Invalid"
 msgstr "Inválido"
 
-#: ../src/itdb_device.c:257 ../src/itdb_device.c:298
+#: ../src/itdb_device.c:264 ../src/itdb_device.c:305
 msgid "Unknown"
 msgstr "Desconocido"
 
-#: ../src/itdb_device.c:258
+#: ../src/itdb_device.c:265
 msgid "Color"
 msgstr "Color"
 
-#: ../src/itdb_device.c:259
+#: ../src/itdb_device.c:266
 msgid "Color U2"
 msgstr "Color U2"
 
-#: ../src/itdb_device.c:260
+#: ../src/itdb_device.c:267
 msgid "Grayscale"
 msgstr "Escala de grises"
 
-#: ../src/itdb_device.c:261
+#: ../src/itdb_device.c:268
 msgid "Grayscale U2"
 msgstr "Escala de grises U2"
 
-#: ../src/itdb_device.c:262
+#: ../src/itdb_device.c:269
 msgid "Mini (Silver)"
 msgstr "Mini (Plata)"
 
-#: ../src/itdb_device.c:263
+#: ../src/itdb_device.c:270
 msgid "Mini (Blue)"
 msgstr "Mini (Azul)"
 
-#: ../src/itdb_device.c:264
+#: ../src/itdb_device.c:271
 msgid "Mini (Pink)"
 msgstr "Mini (Rosa)"
 
-#: ../src/itdb_device.c:265
+#: ../src/itdb_device.c:272
 msgid "Mini (Green)"
 msgstr "Mini (Verde)"
 
-#: ../src/itdb_device.c:266
+#: ../src/itdb_device.c:273
 msgid "Mini (Gold)"
 msgstr "Mini (Oro)"
 
-#: ../src/itdb_device.c:267
+#: ../src/itdb_device.c:274
 msgid "Shuffle"
 msgstr "Shuffle"
 
-#: ../src/itdb_device.c:268
+#: ../src/itdb_device.c:275
 msgid "Nano (White)"
 msgstr "Nano (Blanco)"
 
-#: ../src/itdb_device.c:269
+#: ../src/itdb_device.c:276
 msgid "Nano (Black)"
 msgstr "Nano (Negro)"
 
-#: ../src/itdb_device.c:270
+#: ../src/itdb_device.c:277
 msgid "Video (White)"
 msgstr "Video (Blanco)"
 
-#: ../src/itdb_device.c:271
+#: ../src/itdb_device.c:278
 msgid "Video (Black)"
 msgstr "Video (Negro)"
 
-#: ../src/itdb_device.c:272
+#: ../src/itdb_device.c:279
 msgid "Mobile (1)"
 msgstr "Móvil (1)"
 
-#: ../src/itdb_device.c:273
+#: ../src/itdb_device.c:280
 msgid "Video U2"
 msgstr "Video U2"
 
-#: ../src/itdb_device.c:274
+#: ../src/itdb_device.c:281
 msgid "Nano (Silver)"
 msgstr "Nano (Plata)"
 
-#: ../src/itdb_device.c:275
+#: ../src/itdb_device.c:282
 msgid "Nano (Blue)"
 msgstr "Nano (Azul)"
 
-#: ../src/itdb_device.c:276
+#: ../src/itdb_device.c:283
 msgid "Nano (Green)"
 msgstr "Nano (Verde)"
 
-#: ../src/itdb_device.c:277
+#: ../src/itdb_device.c:284
 msgid "Nano (Pink)"
 msgstr "Nano (Rosa)"
 
-#: ../src/itdb_device.c:278
+#: ../src/itdb_device.c:285
 msgid "Nano (Red)"
 msgstr "Nano (Rojo)"
 
-#: ../src/itdb_device.c:279
+#: ../src/itdb_device.c:286
 msgid "Nano (Yellow)"
 msgstr "Nano (Amarillo)"
 
-#: ../src/itdb_device.c:280
+#: ../src/itdb_device.c:287
 msgid "Nano (Purple)"
 msgstr "Nano (Púrpura)"
 
-#: ../src/itdb_device.c:281
+#: ../src/itdb_device.c:288
 msgid "Nano (Orange)"
 msgstr "Nano (Naranja)"
 
-#: ../src/itdb_device.c:282
+#: ../src/itdb_device.c:289
 msgid "iPhone (1)"
 msgstr "iPhone (1)"
 
-#: ../src/itdb_device.c:283
+#: ../src/itdb_device.c:290
 msgid "Shuffle (Silver)"
 msgstr "Shuffle (Plata)"
 
-#: ../src/itdb_device.c:284
+#: ../src/itdb_device.c:291
 msgid "Shuffle (Pink)"
 msgstr "Shuffle (Rosa)"
 
-#: ../src/itdb_device.c:285
+#: ../src/itdb_device.c:292
 msgid "Shuffle (Blue)"
 msgstr "Shuffle (Azul)"
 
-#: ../src/itdb_device.c:286
+#: ../src/itdb_device.c:293
 msgid "Shuffle (Green)"
 msgstr "Shuffle (Verde)"
 
-#: ../src/itdb_device.c:287
+#: ../src/itdb_device.c:294
 msgid "Shuffle (Orange)"
 msgstr "Shuffle (Naranja)"
 
-#: ../src/itdb_device.c:288
+#: ../src/itdb_device.c:295
 msgid "Shuffle (Purple)"
 msgstr "Shuffle (Púrpura)"
 
-#: ../src/itdb_device.c:289
+#: ../src/itdb_device.c:296
 msgid "Shuffle (Red)"
 msgstr "Shuffle (Rojo)"
 
-#: ../src/itdb_device.c:290
+#: ../src/itdb_device.c:297
 msgid "Classic (Silver)"
 msgstr "Clásico (Plata)"
 
-#: ../src/itdb_device.c:291
+#: ../src/itdb_device.c:298
 msgid "Classic (Black)"
 msgstr "Clásico (Negro)"
 
-#: ../src/itdb_device.c:292
+#: ../src/itdb_device.c:299
 msgid "Touch (Black)"
 msgstr "Touch (Negro)"
 
-#: ../src/itdb_device.c:299
+#: ../src/itdb_device.c:306
 msgid "Regular (1st Gen.)"
 msgstr "Normal (1ª generación)"
 
-#: ../src/itdb_device.c:300
+#: ../src/itdb_device.c:307
 msgid "Regular (2nd Gen.)"
 msgstr "Normal (2ª generación)"
 
-#: ../src/itdb_device.c:301
+#: ../src/itdb_device.c:308
 msgid "Regular (3rd Gen.)"
 msgstr "Normal (3ª generación)"
 
-#: ../src/itdb_device.c:302
+#: ../src/itdb_device.c:309
 msgid "Regular (4th Gen.)"
 msgstr "Normal (4ª generación)"
 
-#: ../src/itdb_device.c:303
+#: ../src/itdb_device.c:310
 msgid "Photo"
 msgstr "Foto"
 
-#: ../src/itdb_device.c:304
+#: ../src/itdb_device.c:311
 msgid "Mobile Phones"
 msgstr "Teléfonos móviles"
 
-#: ../src/itdb_device.c:305
+#: ../src/itdb_device.c:312
 msgid "Mini (1st Gen.)"
 msgstr "Mini (1ª generación)"
 
-#: ../src/itdb_device.c:306
+#: ../src/itdb_device.c:313
 msgid "Mini (2nd Gen.)"
 msgstr "Mini (2ª generación)"
 
-#: ../src/itdb_device.c:307
+#: ../src/itdb_device.c:314
 msgid "Shuffle (1st Gen.)"
 msgstr "Shuffle (1ª generación)"
 
-#: ../src/itdb_device.c:308
+#: ../src/itdb_device.c:315
 msgid "Shuffle (2nd Gen.)"
 msgstr "Suffle (2ª generación)"
 
-#: ../src/itdb_device.c:309
+#: ../src/itdb_device.c:316
 msgid "Shuffle (3rd Gen.)"
 msgstr "Suffle (3ª generación)"
 
-#: ../src/itdb_device.c:310
+#: ../src/itdb_device.c:317
 msgid "Nano (1st Gen.)"
 msgstr "Nano (1ª generación)"
 
-#: ../src/itdb_device.c:311
+#: ../src/itdb_device.c:318
 msgid "Nano (2nd Gen.)"
 msgstr "Nano (2ª generación)"
 
-#: ../src/itdb_device.c:312
+#: ../src/itdb_device.c:319
 msgid "Nano Video (3rd Gen.)"
 msgstr "Nano Video (3ª generación)"
 
-#: ../src/itdb_device.c:313
+#: ../src/itdb_device.c:320
 msgid "Nano Video (4th Gen.)"
 msgstr "Nano Video (4ª generación)"
 
-#: ../src/itdb_device.c:314
+#: ../src/itdb_device.c:321
 msgid "Video (1st Gen.)"
 msgstr "Video (1ª generación)"
 
-#: ../src/itdb_device.c:315
+#: ../src/itdb_device.c:322
 msgid "Video (2nd Gen.)"
 msgstr "Video (2ª generación)"
 
-#: ../src/itdb_device.c:316 ../src/itdb_device.c:317
+#: ../src/itdb_device.c:323 ../src/itdb_device.c:324
 msgid "Classic"
 msgstr "Clásico"
 
-#: ../src/itdb_device.c:318
+#: ../src/itdb_device.c:325
 msgid "Touch"
 msgstr "Touch"
 
-#: ../src/itdb_device.c:319
+#: ../src/itdb_device.c:326
 msgid "iPhone"
 msgstr "iPhone"
 
-#: ../src/itdb_device.c:320 ../src/itdb_device.c:321
+#: ../src/itdb_device.c:327 ../src/itdb_device.c:328
 msgid "Unused"
 msgstr "Sin usar"
 
-#: ../src/itdb_device.c:874
+#: ../src/itdb_device.c:928
 #, c-format
 msgid "Could not open '%s' for writing."
 msgstr "Error al abrir '%s' para su escritura."
 
-#: ../src/itdb_device.c:883
+#: ../src/itdb_device.c:937
 #, c-format
 msgid "Device directory does not exist."
 msgstr "No existe el directorio del dispositivo."
 
-#: ../src/itdb_itunesdb.c:462
+#: ../src/itdb_itunesdb.c:507
 #, c-format
 msgid "Illegal seek to offset %ld (length %ld) in file '%s'."
 msgstr "Acceso ilegal al desplazamiento %ld (tamaño %ld) en el fichero '%s'."
 
-#: ../src/itdb_itunesdb.c:915
+#: ../src/itdb_itunesdb.c:910
 #, c-format
 msgid "Not a Play Counts file: '%s' (missing mhdp header)."
 msgstr "No es un fichero cuenta reproducciones: '%s' (falta cabecera mhdp)."
 
-#: ../src/itdb_itunesdb.c:930
+#: ../src/itdb_itunesdb.c:925
 #, c-format
 msgid "Play Counts file ('%s'): header length smaller than expected (%d<96)."
 msgstr ""
 "Fichero cuenta reproducciones ('%s'): tamaño de la cabecera menor del "
 "esperado (%d<96)."
 
-#: ../src/itdb_itunesdb.c:944
+#: ../src/itdb_itunesdb.c:939
 #, c-format
 msgid "Play Counts file ('%s'): entry length smaller than expected (%d<12)."
 msgstr ""
 "Fichero cuenta reproducciones ('%s'): tamaño de la entrada menor del "
 "esperado (%d<12)."
 
-#: ../src/itdb_itunesdb.c:1019
+#: ../src/itdb_itunesdb.c:1014
 #, c-format
 msgid "iTunesStats file ('%s'): entry length smaller than expected (%d<18)."
 msgstr ""
 "Fichero cuenta reproducciones ('%s'): tamaño de la entrada menor del "
 "esperado (%d<18)."
 
-#: ../src/itdb_itunesdb.c:1338
+#: ../src/itdb_itunesdb.c:1333
 #, c-format
 msgid "iTunesDB corrupt: no MHOD at offset %ld in file '%s'."
-msgstr "iTunesDB corrupta: no hay MHOD en el desplazamiento %ld del fichero '%s'."
+msgstr ""
+"iTunesDB corrupta: no hay MHOD en el desplazamiento %ld del fichero '%s'."
 
-#: ../src/itdb_itunesdb.c:1524
+#: ../src/itdb_itunesdb.c:1519
 #, c-format
 msgid "Unknown smart rule action at %ld: %x. Trying to continue.\n"
 msgstr "Regla de acción desconocida en %ld: %x. Intentando continuar.\n"
 
-#: ../src/itdb_itunesdb.c:1555
+#: ../src/itdb_itunesdb.c:1550
 #, c-format
 msgid ""
 "Length of smart playlist rule field (%d) not as expected. Trying to continue "
@@ -365,12 +363,13 @@
 "La longitud del campo de reglas (%d) de la lista de reproducción inteligente "
 "no es la esperada. Intentando continuar.\n"
 
-#: ../src/itdb_itunesdb.c:1598
+#: ../src/itdb_itunesdb.c:1593
 #, c-format
 msgid "iTunesDB corrupt: no SLst at offset %ld in file '%s'."
-msgstr "iTunesDB corrupta: no hay SLst en el desplazamiento %ld del fichero '%s'."
+msgstr ""
+"iTunesDB corrupta: no hay SLst en el desplazamiento %ld del fichero '%s'."
 
-#: ../src/itdb_itunesdb.c:1611
+#: ../src/itdb_itunesdb.c:1606
 #, c-format
 msgid ""
 "Encountered unknown MHOD type (%d) while parsing the iTunesDB. Ignoring.\n"
@@ -380,19 +379,20 @@
 "Ignorando.\n"
 "\n"
 
-#: ../src/itdb_itunesdb.c:1691
+#: ../src/itdb_itunesdb.c:1689
 #, c-format
 msgid "iTunesDB corrupt: hunk length 0 for hunk at %ld in file '%s'."
 msgstr "iTunesDB corrupta: tamaño 0 para la zona %ld en el fichero '%s'."
 
-#: ../src/itdb_itunesdb.c:1704
+#: ../src/itdb_itunesdb.c:1702
 #, c-format
-msgid "iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
+msgid ""
+"iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
 msgstr ""
 "iTunesDB corrupta: no se ha encontrado la sección '%s' en la sección '%s' "
 "empezando en %ld."
 
-#: ../src/itdb_itunesdb.c:1718
+#: ../src/itdb_itunesdb.c:1716
 #, c-format
 msgid ""
 "header length of '%s' smaller than expected (%d < %d) at offset %ld in file "
@@ -401,12 +401,12 @@
 "Tamaño de la cabecera de '%s' menor del esperado (%d<%d). en el "
 "desplazamiento %ld del fichero '%s'."
 
-#: ../src/itdb_itunesdb.c:1803
+#: ../src/itdb_itunesdb.c:1801
 #, c-format
 msgid "Not a iTunesDB: '%s' (missing mhdb header)."
 msgstr "No es un fichero iTunesDB: '%s' (falta la cabecera mhdb)."
 
-#: ../src/itdb_itunesdb.c:1820
+#: ../src/itdb_itunesdb.c:1818
 #, c-format
 msgid ""
 "iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). "
@@ -415,39 +415,36 @@
 "iTunesDB ('%s'): tamaño de la cabecera de la zona mhsd menor del esperado (%"
 "d<32). Cancelando."
 
-#: ../src/itdb_itunesdb.c:1841
+#: ../src/itdb_itunesdb.c:1839
 #, c-format
 msgid "iTunesDB '%s' corrupt: mhsd expected at %ld."
 msgstr "iTunesDB '%s' corrupta: se esperaba mhsd en %ld."
 
-#: ../src/itdb_itunesdb.c:1958
+#: ../src/itdb_itunesdb.c:1944
 #, c-format
 msgid "Number of MHODs in mhip at %ld inconsistent in file '%s'."
-msgstr "El número de MHODs en mhip en %ld no es consistente en el fichero '%s'."
+msgstr ""
+"El número de MHODs en mhip en %ld no es consistente en el fichero '%s'."
 
-#: ../src/itdb_itunesdb.c:1976
+#: ../src/itdb_itunesdb.c:2121
 #, c-format
-msgid "Itdb_Track ID '%d' not found.\n"
-msgstr "Itdb_Track ID '%d' no encontrada.\n"
-
-#: ../src/itdb_itunesdb.c:2146
-#, c-format
 msgid "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
-msgstr "El número de MHODs en mhyp en %ld no es consistente en el fichero '%s'."
+msgstr ""
+"El número de MHODs en mhyp en %ld no es consistente en el fichero '%s'."
 
-#: ../src/itdb_itunesdb.c:2156
+#: ../src/itdb_itunesdb.c:2131
 msgid "Master-PL"
 msgstr "Lista de reproducción principal"
 
-#: ../src/itdb_itunesdb.c:2160
+#: ../src/itdb_itunesdb.c:2135
 msgid "Podcasts"
 msgstr "Podcasts"
 
-#: ../src/itdb_itunesdb.c:2162
+#: ../src/itdb_itunesdb.c:2137
 msgid "Playlist"
 msgstr "Lista de reproducción"
 
-#: ../src/itdb_itunesdb.c:2184
+#: ../src/itdb_itunesdb.c:2159
 #, c-format
 msgid ""
 "iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %"
@@ -456,43 +453,48 @@
 "iTunesDB corrupta: el número de secciones mhip no es consistente en mhyp "
 "empezando en %ld en el fichero '%s'."
 
-#: ../src/itdb_itunesdb.c:2527
+#: ../src/itdb_itunesdb.c:2180
+#, c-format
+msgid "Itdb_Track ID '%d' not found.\n"
+msgstr "Itdb_Track ID '%d' no encontrada.\n"
+
+#: ../src/itdb_itunesdb.c:2524
 msgid "OTG Playlist"
 msgstr "Lista de reproducción OTG"
 
-#: ../src/itdb_itunesdb.c:2545
+#: ../src/itdb_itunesdb.c:2542
 #, c-format
 msgid "Not a OTG playlist file: '%s' (missing mhpo header)."
 msgstr "No es una lista de reproducción: '%s' (falta la cabecera mhpo)."
 
-#: ../src/itdb_itunesdb.c:2559
+#: ../src/itdb_itunesdb.c:2556
 #, c-format
 msgid "OTG playlist file ('%s'): header length smaller than expected (%d<20)."
 msgstr ""
 "Fichero de lista de reproducción OTG ('%s'): tamaño de la cabecera menor del "
 "esperado (%d<20)."
 
-#: ../src/itdb_itunesdb.c:2571
+#: ../src/itdb_itunesdb.c:2568
 #, c-format
 msgid "OTG playlist file ('%s'): entry length smaller than expected (%d<4)."
 msgstr ""
 "Fichero ('%s') de la lista de reproducción OTG: tamaño de la entrada menor "
 "del esperado (%d<4)."
 
-#: ../src/itdb_itunesdb.c:2606
+#: ../src/itdb_itunesdb.c:2603
 #, c-format
 msgid "OTG playlist file '%s': reference to non-existent track (%d)."
 msgstr ""
 "La lista de reproducción OTG '%s': hace referencia a una pista no existente "
 "(%d)."
 
-#: ../src/itdb_itunesdb.c:2651
+#: ../src/itdb_itunesdb.c:2648
 #, c-format
 msgid "OTG Playlist %d"
 msgstr "Lista de reproducción OTG %d"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2719
+#: ../src/itdb_itunesdb.c:2716
 msgid ""
 "iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to "
 "continue.\n"
@@ -501,7 +503,7 @@
 "Intentando continuar.\n"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2782
+#: ../src/itdb_itunesdb.c:2779
 msgid ""
 "iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. "
 "Trying to continue.\n"
@@ -509,7 +511,7 @@
 "Es posible que iTunesDB esté corrupta: el número de listas de reproducción "
 "(zonas mhyp) no es consistente. Intentando continuar.\n"
 
-#: ../src/itdb_itunesdb.c:2829
+#: ../src/itdb_itunesdb.c:2826
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section "
@@ -518,7 +520,7 @@
 "iTunesDB '%s' corrputa: No se ha encontrado la lista de pistas (no se ha "
 "encontrado la sección mhsd de tipo 1)"
 
-#: ../src/itdb_itunesdb.c:2858
+#: ../src/itdb_itunesdb.c:2855
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 "
@@ -527,96 +529,99 @@
 "iTunesDB '%s' corrputa: No se han encontrado las listas de reproducción (no "
 "se han encontrado las secciones mhsd de tipo 2 o tipo 3)"
 
-#: ../src/itdb_itunesdb.c:2880
+#: ../src/itdb_itunesdb.c:2877
 #, c-format
 msgid "iTunes directory not found: '%s' (or similar)."
 msgstr "Directorio 'iTunes' no encontrado: '%s' (o similar)."
 
-#: ../src/itdb_itunesdb.c:2897
+#: ../src/itdb_itunesdb.c:2894
 #, c-format
 msgid "Music directory not found: '%s' (or similar)."
 msgstr "Directorio 'Music' no encontrado: '%s' (o similar)"
 
-#: ../src/itdb_itunesdb.c:2915
+#: ../src/itdb_itunesdb.c:2912
 #, c-format
 msgid "Control directory not found: '%s' (or similar)."
 msgstr "Directorio 'iPod Control' no encontrado: '%s' (o similar)."
 
-#: ../src/itdb_itunesdb.c:3036
+#: ../src/itdb_itunesdb.c:3033
 #, c-format
 msgid "File not found: '%s'."
 msgstr "Fichero no encontrado: '%s'."
 
-#: ../src/itdb_itunesdb.c:5410
+#: ../src/itdb_itunesdb.c:5533
 #, c-format
 msgid "Path not found: '%s' (or similar)."
 msgstr "Ruta no encontrada: '%s' (o similar)."
 
-#: ../src/itdb_itunesdb.c:5616
+#: ../src/itdb_itunesdb.c:5742
 #, c-format
 msgid "Error renaming '%s' to '%s' (%s)."
 msgstr "Error al renombrar '%s' a '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5633 ../src/itdb_itunesdb.c:5650
+#: ../src/itdb_itunesdb.c:5759 ../src/itdb_itunesdb.c:5776
+#: ../src/itdb_itunesdb.c:5793
 #, c-format
 msgid "Error removing '%s' (%s)."
 msgstr "Error al borrar '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5812 ../src/itdb_itunesdb.c:5985
+#: ../src/itdb_itunesdb.c:5960 ../src/itdb_itunesdb.c:6133
 #, c-format
 msgid "Mountpoint not set."
 msgstr "Punto de montaje no configurado."
 
-#: ../src/itdb_itunesdb.c:5852
+#: ../src/itdb_itunesdb.c:6000
 #, c-format
 msgid "No 'F..' directories found in '%s'."
 msgstr "No se ha encontrado ningún directorio en '%s'."
 
-#: ../src/itdb_itunesdb.c:5873
+#: ../src/itdb_itunesdb.c:6021
 #, c-format
 msgid "Path not found: '%s'."
 msgstr "Ruta no encontrada: '%s'."
 
-#: ../src/itdb_itunesdb.c:5994
+#: ../src/itdb_itunesdb.c:6142
 #, c-format
 msgid "'%s' could not be accessed (%s)."
 msgstr "No se ha podido acceder al fichero '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6004
+#: ../src/itdb_itunesdb.c:6152
 #, c-format
-msgid "Destination file '%s' does not appear to be on the iPod mounted at '%s'."
-msgstr "El destino del fichero '%s' parece no existir en el iPod montado en '%s'"
+msgid ""
+"Destination file '%s' does not appear to be on the iPod mounted at '%s'."
+msgstr ""
+"El destino del fichero '%s' parece no existir en el iPod montado en '%s'"
 
-#: ../src/itdb_itunesdb.c:6212
+#: ../src/itdb_itunesdb.c:6360
 #, c-format
 msgid "Error opening '%s' for reading (%s)."
 msgstr "Error al abrir '%s' para su lectura (%s)."
 
-#: ../src/itdb_itunesdb.c:6224
+#: ../src/itdb_itunesdb.c:6372
 #, c-format
 msgid "Error opening '%s' for writing (%s)."
 msgstr "Error al abrir '%s' para su escritura (%s)."
 
-#: ../src/itdb_itunesdb.c:6240
+#: ../src/itdb_itunesdb.c:6388
 #, c-format
 msgid "Error while reading from '%s' (%s)."
 msgstr "Error durante la lectura de '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6255
+#: ../src/itdb_itunesdb.c:6403
 #, c-format
 msgid "Error while writing to '%s' (%s)."
 msgstr "Error durante la escritura de '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6268 ../src/itdb_itunesdb.c:6278
+#: ../src/itdb_itunesdb.c:6416 ../src/itdb_itunesdb.c:6426
 #, c-format
 msgid "Error when closing '%s' (%s)."
 msgstr "Error al cerrar '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6702
+#: ../src/itdb_itunesdb.c:6856
 msgid "iPod"
 msgstr "iPod"
 
-#: ../src/itdb_itunesdb.c:7024
+#: ../src/itdb_itunesdb.c:7178
 #, c-format
 msgid "Problem creating iPod directory or file: '%s'."
 msgstr "Problema al crear el directorio iPod o el fichero: '%s'."
@@ -633,7 +638,8 @@
 #: ../src/itdb_photoalbum.c:386
 #, c-format
 msgid "You need to specify the iPod model used before photos can be added."
-msgstr "Es necesario especificar el modelo del iPod antes de poder añadir fotos."
+msgstr ""
+"Es necesario especificar el modelo del iPod antes de poder añadir fotos."
 
 #: ../src/itdb_photoalbum.c:407
 #, c-format
@@ -660,8 +666,10 @@
 
 #: ../src/itdb_photoalbum.c:468
 #, c-format
-msgid "Library compiled without gdk-pixbuf support. Picture support is disabled."
-msgstr "Biblioteca compilada sin soporte gdk-pixbuf. Soporte de imágenes desactivado."
+msgid ""
+"Library compiled without gdk-pixbuf support. Picture support is disabled."
+msgstr ""
+"Biblioteca compilada sin soporte gdk-pixbuf. Soporte de imágenes desactivado."
 
 #. New action!
 #: ../src/itdb_playlist.c:78
@@ -788,7 +796,8 @@
 
 #: ../tests/test-photos.c:242
 #, c-format
-msgid "Error reading iPod photo database, will attempt to create a new database\n"
+msgid ""
+"Error reading iPod photo database, will attempt to create a new database\n"
 msgstr ""
 "Error al leer la base de datos de fotos del iPod, se intentará crear una "
 "nueva base de datos\n"
@@ -830,6 +839,11 @@
 msgid "Error initialising iPod, unknown error\n"
 msgstr "Error al inicializar iPod, error desconocido\n"
 
+#: ../tools/ipod-time-sync.c:37
+#, fuzzy, c-format
+msgid "usage: %s <device> [timezone]\n"
+msgstr "uso: %s <dispositivo> <punto_de_montaje>\n"
+
 #: ../tools/read-sysinfoextended-sgutils.c:39
 #, c-format
 msgid "usage: %s <device> <mountpoint>\n"
@@ -855,3 +869,7 @@
 msgid "Couldn't write SysInfoExtended to %s"
 msgstr "No se ha podido escribir SysInfoExtended a %s"
 
+#~ msgid "Could not find artwork entry (mhii id: %u) for track (dbid: %s).\n"
+#~ msgstr ""
+#~ "No se ha podido encontrar la carátula (mhii id: %u) correspondiente a la "
+#~ "pista (dbid: %s) .\n"

Modified: libgpod/branches/upstream/current/po/fr.po
===================================================================
--- libgpod/branches/upstream/current/po/fr.po	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/po/fr.po	2009-06-19 20:28:03 UTC (rev 384)
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: libgpod-0.7.0\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-12-07 20:48-0500\n"
+"POT-Creation-Date: 2009-04-03 16:08-0400\n"
 "PO-Revision-Date: 2008-12-11 14:37+0000\n"
 "Last-Translator: Éric Lassauge <rpmfarm at free.fr>\n"
 "Language-Team: FR\n"
@@ -18,34 +18,28 @@
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n>1;\n"
 
-#: ../src/db-artwork-parser.c:156
+#: ../src/db-artwork-parser.c:140
 #, c-format
 msgid "Unexpected mhod string type: %d\n"
 msgstr "Type de chaîne mhod inattendu : %d\n"
 
-#: ../src/db-artwork-parser.c:476
+#: ../src/db-artwork-parser.c:460
 #, c-format
 msgid "Unexpected mhsd index: %d\n"
 msgstr "Index mhsd inattendu : %d\n"
 
-#: ../src/db-artwork-parser.c:522
+#: ../src/db-artwork-parser.c:540
 #, c-format
 msgid "Could not find corresponding track (dbid: %s) for artwork entry.\n"
 msgstr "Impossible de trouver la piste (dbid : %s) pour l'image.\n"
 
-#: ../src/db-artwork-parser.c:530
+#: ../src/db-artwork-parser.c:548
 #, c-format
 msgid "iTunesDB and ArtworkDB artwork sizes inconsistent (%d+%d != %d)\n"
 msgstr ""
 "Tailles inconsistantes pour l'image entre iTunesDB et ArtworkDB (%d+%d != %"
 "d)\n"
 
-#: ../src/db-artwork-parser.c:566
-#, c-format
-msgid "Could not find artwork entry (mhii id: %u) for track (dbid: %s).\n"
-msgstr ""
-"Impossible de trouver l'image (mhii id : %u) pour la piste (dbid : %s).\n"
-
 #: ../src/db-image-parser.c:91
 #, c-format
 msgid "Unexpected image type in mhni: %d, offset: %d\n"
@@ -76,292 +70,292 @@
 "Impossible de récupérer l'imagette (apparemment sur l'iPod, mais aucune info "
 "d'image disponible : fichier : « %s »\n"
 
-#: ../src/itdb_device.c:256
+#: ../src/itdb_device.c:263
 msgid "Invalid"
 msgstr "Invalide"
 
-#: ../src/itdb_device.c:257 ../src/itdb_device.c:298
+#: ../src/itdb_device.c:264 ../src/itdb_device.c:305
 msgid "Unknown"
 msgstr "Inconnu"
 
-#: ../src/itdb_device.c:258
+#: ../src/itdb_device.c:265
 msgid "Color"
 msgstr "Couleur"
 
-#: ../src/itdb_device.c:259
+#: ../src/itdb_device.c:266
 msgid "Color U2"
 msgstr "U2 couleur"
 
-#: ../src/itdb_device.c:260
+#: ../src/itdb_device.c:267
 msgid "Grayscale"
 msgstr "Niveaux de gris"
 
-#: ../src/itdb_device.c:261
+#: ../src/itdb_device.c:268
 msgid "Grayscale U2"
 msgstr "U2 niveaux de gris"
 
-#: ../src/itdb_device.c:262
+#: ../src/itdb_device.c:269
 msgid "Mini (Silver)"
 msgstr "Mini (argent)"
 
-#: ../src/itdb_device.c:263
+#: ../src/itdb_device.c:270
 msgid "Mini (Blue)"
 msgstr "Mini (bleu)"
 
-#: ../src/itdb_device.c:264
+#: ../src/itdb_device.c:271
 msgid "Mini (Pink)"
 msgstr "Mini (rose)"
 
-#: ../src/itdb_device.c:265
+#: ../src/itdb_device.c:272
 msgid "Mini (Green)"
 msgstr "Mini (vert)"
 
-#: ../src/itdb_device.c:266
+#: ../src/itdb_device.c:273
 msgid "Mini (Gold)"
 msgstr "Mini (or)"
 
-#: ../src/itdb_device.c:267
+#: ../src/itdb_device.c:274
 msgid "Shuffle"
 msgstr "Shuffle"
 
-#: ../src/itdb_device.c:268
+#: ../src/itdb_device.c:275
 msgid "Nano (White)"
 msgstr "Nano (blanc)"
 
-#: ../src/itdb_device.c:269
+#: ../src/itdb_device.c:276
 msgid "Nano (Black)"
 msgstr "Nano (noir)"
 
-#: ../src/itdb_device.c:270
+#: ../src/itdb_device.c:277
 msgid "Video (White)"
 msgstr "Vidéo (blanc)"
 
-#: ../src/itdb_device.c:271
+#: ../src/itdb_device.c:278
 msgid "Video (Black)"
 msgstr "Vidéo (noir)"
 
-#: ../src/itdb_device.c:272
+#: ../src/itdb_device.c:279
 msgid "Mobile (1)"
 msgstr "Mobile (1)"
 
-#: ../src/itdb_device.c:273
+#: ../src/itdb_device.c:280
 msgid "Video U2"
 msgstr "U2 Vidéo"
 
-#: ../src/itdb_device.c:274
+#: ../src/itdb_device.c:281
 msgid "Nano (Silver)"
 msgstr "Nano (argent)"
 
-#: ../src/itdb_device.c:275
+#: ../src/itdb_device.c:282
 msgid "Nano (Blue)"
 msgstr "Nano (bleu)"
 
-#: ../src/itdb_device.c:276
+#: ../src/itdb_device.c:283
 msgid "Nano (Green)"
 msgstr "Nano (vert)"
 
-#: ../src/itdb_device.c:277
+#: ../src/itdb_device.c:284
 msgid "Nano (Pink)"
 msgstr "Nano (rose)"
 
-#: ../src/itdb_device.c:278
+#: ../src/itdb_device.c:285
 msgid "Nano (Red)"
 msgstr "Nano (rouge)"
 
-#: ../src/itdb_device.c:279
+#: ../src/itdb_device.c:286
 msgid "Nano (Yellow)"
 msgstr "Nano (jaune)"
 
-#: ../src/itdb_device.c:280
+#: ../src/itdb_device.c:287
 msgid "Nano (Purple)"
 msgstr "Nano (violet)"
 
-#: ../src/itdb_device.c:281
+#: ../src/itdb_device.c:288
 msgid "Nano (Orange)"
 msgstr "Nano (orange)"
 
-#: ../src/itdb_device.c:282
+#: ../src/itdb_device.c:289
 msgid "iPhone (1)"
 msgstr "iPhone (1)"
 
-#: ../src/itdb_device.c:283
+#: ../src/itdb_device.c:290
 msgid "Shuffle (Silver)"
 msgstr "Shuffle (argent)"
 
-#: ../src/itdb_device.c:284
+#: ../src/itdb_device.c:291
 msgid "Shuffle (Pink)"
 msgstr "Shuffle (rose)"
 
-#: ../src/itdb_device.c:285
+#: ../src/itdb_device.c:292
 msgid "Shuffle (Blue)"
 msgstr "Shuffle (bleu)"
 
-#: ../src/itdb_device.c:286
+#: ../src/itdb_device.c:293
 msgid "Shuffle (Green)"
 msgstr "Shuffle (vert)"
 
-#: ../src/itdb_device.c:287
+#: ../src/itdb_device.c:294
 msgid "Shuffle (Orange)"
 msgstr "Shuffle (orange)"
 
-#: ../src/itdb_device.c:288
+#: ../src/itdb_device.c:295
 msgid "Shuffle (Purple)"
 msgstr "Shuffle (violet)"
 
-#: ../src/itdb_device.c:289
+#: ../src/itdb_device.c:296
 msgid "Shuffle (Red)"
 msgstr "Shuffle (rouge)"
 
-#: ../src/itdb_device.c:290
+#: ../src/itdb_device.c:297
 msgid "Classic (Silver)"
 msgstr "Classic (argent)"
 
-#: ../src/itdb_device.c:291
+#: ../src/itdb_device.c:298
 msgid "Classic (Black)"
 msgstr "Classic (noir)"
 
-#: ../src/itdb_device.c:292
+#: ../src/itdb_device.c:299
 msgid "Touch (Black)"
 msgstr "Touch (noir)"
 
-#: ../src/itdb_device.c:299
+#: ../src/itdb_device.c:306
 msgid "Regular (1st Gen.)"
 msgstr "Normal (1ière gen.)"
 
-#: ../src/itdb_device.c:300
+#: ../src/itdb_device.c:307
 msgid "Regular (2nd Gen.)"
 msgstr "Normal (2nde gen.)"
 
-#: ../src/itdb_device.c:301
+#: ../src/itdb_device.c:308
 msgid "Regular (3rd Gen.)"
 msgstr "Normal (3ième gen.)"
 
-#: ../src/itdb_device.c:302
+#: ../src/itdb_device.c:309
 msgid "Regular (4th Gen.)"
 msgstr "Normal (4ième gen.)"
 
-#: ../src/itdb_device.c:303
+#: ../src/itdb_device.c:310
 msgid "Photo"
 msgstr "Photo"
 
-#: ../src/itdb_device.c:304
+#: ../src/itdb_device.c:311
 msgid "Mobile Phones"
 msgstr "Téléphones mobiles"
 
-#: ../src/itdb_device.c:305
+#: ../src/itdb_device.c:312
 msgid "Mini (1st Gen.)"
 msgstr "Mini (1ière gen.)"
 
-#: ../src/itdb_device.c:306
+#: ../src/itdb_device.c:313
 msgid "Mini (2nd Gen.)"
 msgstr "Mini (2nde gen.)"
 
-#: ../src/itdb_device.c:307
+#: ../src/itdb_device.c:314
 msgid "Shuffle (1st Gen.)"
 msgstr "Shuffle (1ière gen.)"
 
-#: ../src/itdb_device.c:308
+#: ../src/itdb_device.c:315
 msgid "Shuffle (2nd Gen.)"
 msgstr "Shuffle (2nde gen.)"
 
-#: ../src/itdb_device.c:309
+#: ../src/itdb_device.c:316
 msgid "Shuffle (3rd Gen.)"
 msgstr "Shuffle (3ième gen.)"
 
-#: ../src/itdb_device.c:310
+#: ../src/itdb_device.c:317
 msgid "Nano (1st Gen.)"
 msgstr "Nano (1ière gen.)"
 
-#: ../src/itdb_device.c:311
+#: ../src/itdb_device.c:318
 msgid "Nano (2nd Gen.)"
 msgstr "Nano (2nde gen.)"
 
-#: ../src/itdb_device.c:312
+#: ../src/itdb_device.c:319
 msgid "Nano Video (3rd Gen.)"
 msgstr "Nano (3ième gen.)"
 
-#: ../src/itdb_device.c:313
+#: ../src/itdb_device.c:320
 msgid "Nano Video (4th Gen.)"
 msgstr "Nano vidéo(4ième gen.)"
 
-#: ../src/itdb_device.c:314
+#: ../src/itdb_device.c:321
 msgid "Video (1st Gen.)"
 msgstr "Vidéo (1ière gen.)"
 
-#: ../src/itdb_device.c:315
+#: ../src/itdb_device.c:322
 msgid "Video (2nd Gen.)"
 msgstr "Vidéo (2nde gen.)"
 
-#: ../src/itdb_device.c:316 ../src/itdb_device.c:317
+#: ../src/itdb_device.c:323 ../src/itdb_device.c:324
 msgid "Classic"
 msgstr "Classic"
 
-#: ../src/itdb_device.c:318
+#: ../src/itdb_device.c:325
 msgid "Touch"
 msgstr "Touch"
 
-#: ../src/itdb_device.c:319
+#: ../src/itdb_device.c:326
 msgid "iPhone"
 msgstr "iPhone"
 
-#: ../src/itdb_device.c:320 ../src/itdb_device.c:321
+#: ../src/itdb_device.c:327 ../src/itdb_device.c:328
 msgid "Unused"
 msgstr "Inutilisé"
 
-#: ../src/itdb_device.c:874
+#: ../src/itdb_device.c:928
 #, c-format
 msgid "Could not open '%s' for writing."
 msgstr "Ne peut ouvrir en écriture le fichier « %s »."
 
-#: ../src/itdb_device.c:883
+#: ../src/itdb_device.c:937
 #, c-format
 msgid "Device directory does not exist."
 msgstr "Le répertoire « Device » n'existe pas."
 
-#: ../src/itdb_itunesdb.c:462
+#: ../src/itdb_itunesdb.c:507
 #, c-format
 msgid "Illegal seek to offset %ld (length %ld) in file '%s'."
 msgstr "Erreur de flux à l'offset %ld (longueur %ld) dans le fichier « %s »."
 
-#: ../src/itdb_itunesdb.c:915
+#: ../src/itdb_itunesdb.c:910
 #, c-format
 msgid "Not a Play Counts file: '%s' (missing mhdp header)."
 msgstr "« %s » n'est pas un fichier de compteur (entête mhdp manquante)."
 
-#: ../src/itdb_itunesdb.c:930
+#: ../src/itdb_itunesdb.c:925
 #, c-format
 msgid "Play Counts file ('%s'): header length smaller than expected (%d<96)."
 msgstr ""
 "Fichier de compteur (« %s ») : longueur de l'entête plus petite que prévue (%"
 "d < 96)."
 
-#: ../src/itdb_itunesdb.c:944
+#: ../src/itdb_itunesdb.c:939
 #, c-format
 msgid "Play Counts file ('%s'): entry length smaller than expected (%d<12)."
 msgstr ""
 "Fichier de compteur (« %s ») : longueur des données plus petite que prévue (%"
 "d < 12)."
 
-#: ../src/itdb_itunesdb.c:1019
+#: ../src/itdb_itunesdb.c:1014
 #, c-format
 msgid "iTunesStats file ('%s'): entry length smaller than expected (%d<18)."
 msgstr ""
 "Fichier iTunesStats (« %s ») : longueur des données plus petite que prévue (%"
 "d < 18)."
 
-#: ../src/itdb_itunesdb.c:1338
+#: ../src/itdb_itunesdb.c:1333
 #, c-format
 msgid "iTunesDB corrupt: no MHOD at offset %ld in file '%s'."
 msgstr "Corruption d'iTunesDB : pas de MHOD à l'offset %ld du fichier « %s »."
 
-#: ../src/itdb_itunesdb.c:1524
+#: ../src/itdb_itunesdb.c:1519
 #, c-format
 msgid "Unknown smart rule action at %ld: %x. Trying to continue.\n"
 msgstr ""
 "Règle de la liste intelligente inattendue %ld : %x. Tentative pour continuer "
 "quand même.\n"
 
-#: ../src/itdb_itunesdb.c:1555
+#: ../src/itdb_itunesdb.c:1550
 #, c-format
 msgid ""
 "Length of smart playlist rule field (%d) not as expected. Trying to continue "
@@ -370,24 +364,24 @@
 "Longueur du champ de la règle (%d) de la liste intelligente inattendue. "
 "Tentative pour continuer quand même.\n"
 
-#: ../src/itdb_itunesdb.c:1598
+#: ../src/itdb_itunesdb.c:1593
 #, c-format
 msgid "iTunesDB corrupt: no SLst at offset %ld in file '%s'."
 msgstr "Corruption d'iTunesDB : pas de SLst à l'offset %ld du fichier « %s »."
 
-#: ../src/itdb_itunesdb.c:1611
+#: ../src/itdb_itunesdb.c:1606
 #, c-format
 msgid ""
 "Encountered unknown MHOD type (%d) while parsing the iTunesDB. Ignoring.\n"
 "\n"
 msgstr "Type MHOD inconnu (%d) lors du parcours de iTunesDB. Erreur ignorée.\n"
 
-#: ../src/itdb_itunesdb.c:1691
+#: ../src/itdb_itunesdb.c:1689
 #, c-format
 msgid "iTunesDB corrupt: hunk length 0 for hunk at %ld in file '%s'."
 msgstr "Corruption d'iTunesDB : longueur 0 à %ld du fichier « %s »."
 
-#: ../src/itdb_itunesdb.c:1704
+#: ../src/itdb_itunesdb.c:1702
 #, c-format
 msgid ""
 "iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
@@ -395,7 +389,7 @@
 "Corruption d'iTunesDB : pas de section « %s » dans la section « %s » débutant "
 "à l'offset %ld."
 
-#: ../src/itdb_itunesdb.c:1718
+#: ../src/itdb_itunesdb.c:1716
 #, c-format
 msgid ""
 "header length of '%s' smaller than expected (%d < %d) at offset %ld in file "
@@ -404,12 +398,12 @@
 "longueur de l'entête « %s » plus petite que prévue (%d <  %d) à l'offset %ld "
 "du fichier « %s »."
 
-#: ../src/itdb_itunesdb.c:1803
+#: ../src/itdb_itunesdb.c:1801
 #, c-format
 msgid "Not a iTunesDB: '%s' (missing mhdb header)."
 msgstr "« %s » n'est pas un fichier iTunesDB (entête mhdb manquante)."
 
-#: ../src/itdb_itunesdb.c:1820
+#: ../src/itdb_itunesdb.c:1818
 #, c-format
 msgid ""
 "iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). "
@@ -418,41 +412,36 @@
 "iTunesDB (« %s ») : longueur de l'entête mhsd plus petite que prévue (%"
 "d < 32). Interruption."
 
-#: ../src/itdb_itunesdb.c:1841
+#: ../src/itdb_itunesdb.c:1839
 #, c-format
 msgid "iTunesDB '%s' corrupt: mhsd expected at %ld."
 msgstr "Corruption d'iTunesDB « %s » : mhsd attendu à l'offset %ld."
 
-#: ../src/itdb_itunesdb.c:1958
+#: ../src/itdb_itunesdb.c:1944
 #, c-format
 msgid "Number of MHODs in mhip at %ld inconsistent in file '%s'."
 msgstr ""
 "Nombre de MHODs dans mhip à l'offset %ld inconsistant dans le fichier « %s »."
 
-#: ../src/itdb_itunesdb.c:1976
+#: ../src/itdb_itunesdb.c:2121
 #, c-format
-msgid "Itdb_Track ID '%d' not found.\n"
-msgstr "Itdb_Track ID « %d » introuvable.\n"
-
-#: ../src/itdb_itunesdb.c:2146
-#, c-format
 msgid "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
 msgstr ""
 "Nombre de MHODs dans mhyp à l'offset %ld inconsistant dans le fichier « %s »."
 
-#: ../src/itdb_itunesdb.c:2156
+#: ../src/itdb_itunesdb.c:2131
 msgid "Master-PL"
 msgstr "Liste principale"
 
-#: ../src/itdb_itunesdb.c:2160
+#: ../src/itdb_itunesdb.c:2135
 msgid "Podcasts"
 msgstr "Podcasts"
 
-#: ../src/itdb_itunesdb.c:2162
+#: ../src/itdb_itunesdb.c:2137
 msgid "Playlist"
 msgstr "Liste de lecture"
 
-#: ../src/itdb_itunesdb.c:2184
+#: ../src/itdb_itunesdb.c:2159
 #, c-format
 msgid ""
 "iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %"
@@ -461,40 +450,45 @@
 "Corruption d'iTunesDB : nombre de sections mhip inconsistant dans mhyp à "
 "l'offset %ld du fichier « %s »."
 
-#: ../src/itdb_itunesdb.c:2527
+#: ../src/itdb_itunesdb.c:2180
+#, c-format
+msgid "Itdb_Track ID '%d' not found.\n"
+msgstr "Itdb_Track ID « %d » introuvable.\n"
+
+#: ../src/itdb_itunesdb.c:2524
 msgid "OTG Playlist"
 msgstr "Liste de lecture OTG"
 
-#: ../src/itdb_itunesdb.c:2545
+#: ../src/itdb_itunesdb.c:2542
 #, c-format
 msgid "Not a OTG playlist file: '%s' (missing mhpo header)."
 msgstr ""
 "Le fichier « %s » n'est pas un fichier de liste OTG (entête mhpo manquant)."
 
-#: ../src/itdb_itunesdb.c:2559
+#: ../src/itdb_itunesdb.c:2556
 #, c-format
 msgid "OTG playlist file ('%s'): header length smaller than expected (%d<20)."
 msgstr "Fichier de liste OTG (« %s ») : entête plus petit que prévu (%d < 20)."
 
-#: ../src/itdb_itunesdb.c:2571
+#: ../src/itdb_itunesdb.c:2568
 #, c-format
 msgid "OTG playlist file ('%s'): entry length smaller than expected (%d<4)."
 msgstr ""
 "Fichier de liste OTG ('%s') : longueur de données plus petite que prévue (%"
 "d<4)."
 
-#: ../src/itdb_itunesdb.c:2606
+#: ../src/itdb_itunesdb.c:2603
 #, c-format
 msgid "OTG playlist file '%s': reference to non-existent track (%d)."
 msgstr "Fichier de liste OTG « %s » : référence à un morceau inexistant (%d)."
 
-#: ../src/itdb_itunesdb.c:2651
+#: ../src/itdb_itunesdb.c:2648
 #, c-format
 msgid "OTG Playlist %d"
 msgstr "Liste de lecture OTG %d"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2719
+#: ../src/itdb_itunesdb.c:2716
 msgid ""
 "iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to "
 "continue.\n"
@@ -503,7 +497,7 @@
 "continuer quand même.\n"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2782
+#: ../src/itdb_itunesdb.c:2779
 msgid ""
 "iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. "
 "Trying to continue.\n"
@@ -511,7 +505,7 @@
 "Corruption possible d'iTunesDB : nombre de listes (mhyp) incohérent. "
 "Tentative pour continuer quand même.\n"
 
-#: ../src/itdb_itunesdb.c:2829
+#: ../src/itdb_itunesdb.c:2826
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section "
@@ -520,7 +514,7 @@
 "Corruption de iTunesDB (« %s ») : impossible de trouver la liste des morceaux "
 "(pas de section mhsd de type 1)"
 
-#: ../src/itdb_itunesdb.c:2858
+#: ../src/itdb_itunesdb.c:2855
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 "
@@ -529,62 +523,63 @@
 "Corruption de iTunesDB (« %s ») :  impossible de trouver les listes de "
 "lecture (pas de section mhsd de type 1 ou 3)"
 
-#: ../src/itdb_itunesdb.c:2880
+#: ../src/itdb_itunesdb.c:2877
 #, c-format
 msgid "iTunes directory not found: '%s' (or similar)."
 msgstr "Répertoire iTunes introuvable : « %s » (ou similaire)."
 
-#: ../src/itdb_itunesdb.c:2897
+#: ../src/itdb_itunesdb.c:2894
 #, c-format
 msgid "Music directory not found: '%s' (or similar)."
 msgstr "Répertoire « Music » introuvable : « %s » (ou similaire)."
 
-#: ../src/itdb_itunesdb.c:2915
+#: ../src/itdb_itunesdb.c:2912
 #, c-format
 msgid "Control directory not found: '%s' (or similar)."
 msgstr "Répertoire de contrôle introuvable :  « %s » (ou similaire)."
 
-#: ../src/itdb_itunesdb.c:3036
+#: ../src/itdb_itunesdb.c:3033
 #, c-format
 msgid "File not found: '%s'."
 msgstr "Fichier introuvable : « %s »."
 
-#: ../src/itdb_itunesdb.c:5410
+#: ../src/itdb_itunesdb.c:5533
 #, c-format
 msgid "Path not found: '%s' (or similar)."
 msgstr "Chemin introuvable : « %s » (ou similaire)."
 
-#: ../src/itdb_itunesdb.c:5616
+#: ../src/itdb_itunesdb.c:5742
 #, c-format
 msgid "Error renaming '%s' to '%s' (%s)."
 msgstr "Impossible de renommer « %s » en « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:5633 ../src/itdb_itunesdb.c:5650
+#: ../src/itdb_itunesdb.c:5759 ../src/itdb_itunesdb.c:5776
+#: ../src/itdb_itunesdb.c:5793
 #, c-format
 msgid "Error removing '%s' (%s)."
 msgstr "Erreur de suppression du fichier « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:5812 ../src/itdb_itunesdb.c:5985
+#: ../src/itdb_itunesdb.c:5960 ../src/itdb_itunesdb.c:6133
 #, c-format
 msgid "Mountpoint not set."
 msgstr "Point de montage non défini."
 
-#: ../src/itdb_itunesdb.c:5852
+#: ../src/itdb_itunesdb.c:6000
 #, c-format
 msgid "No 'F..' directories found in '%s'."
 msgstr "Répertoires « F.. » introuvables dans « %s »."
 
-#: ../src/itdb_itunesdb.c:5873
+#: ../src/itdb_itunesdb.c:6021
 #, c-format
 msgid "Path not found: '%s'."
 msgstr "Chemin introuvable : « %s »."
 
-#: ../src/itdb_itunesdb.c:5994
+#: ../src/itdb_itunesdb.c:6142
 #, c-format
 msgid "'%s' could not be accessed (%s)."
 msgstr "Impossible d'accéder à « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:6004
+#: ../src/itdb_itunesdb.c:6152
 #, c-format
 msgid ""
 "Destination file '%s' does not appear to be on the iPod mounted at '%s'."
@@ -592,36 +587,36 @@
 "Le fichier de destination « %s » ne semble pas être présent dans l'iPod monté "
 "dans « %s »."
 
-#: ../src/itdb_itunesdb.c:6212
+#: ../src/itdb_itunesdb.c:6360
 #, c-format
 msgid "Error opening '%s' for reading (%s)."
 msgstr "Échec de l'ouverture en lecture de « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:6224
+#: ../src/itdb_itunesdb.c:6372
 #, c-format
 msgid "Error opening '%s' for writing (%s)."
 msgstr "Échec de l'ouverture en écriture de « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:6240
+#: ../src/itdb_itunesdb.c:6388
 #, c-format
 msgid "Error while reading from '%s' (%s)."
 msgstr "Erreur lors de la lecture à partir de « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:6255
+#: ../src/itdb_itunesdb.c:6403
 #, c-format
 msgid "Error while writing to '%s' (%s)."
 msgstr "Erreur lors de l'écriture dans « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:6268 ../src/itdb_itunesdb.c:6278
+#: ../src/itdb_itunesdb.c:6416 ../src/itdb_itunesdb.c:6426
 #, c-format
 msgid "Error when closing '%s' (%s)."
 msgstr "Erreur à la fermeture de « %s » (%s)."
 
-#: ../src/itdb_itunesdb.c:6702
+#: ../src/itdb_itunesdb.c:6856
 msgid "iPod"
 msgstr "iPod"
 
-#: ../src/itdb_itunesdb.c:7024
+#: ../src/itdb_itunesdb.c:7178
 #, c-format
 msgid "Problem creating iPod directory or file: '%s'."
 msgstr "Problème à la création du répertoire ou du fichier iPod : « %s »."
@@ -840,6 +835,11 @@
 msgid "Error initialising iPod, unknown error\n"
 msgstr "Erreur d'initialisation du iPod : erreur inconnue\n"
 
+#: ../tools/ipod-time-sync.c:37
+#, fuzzy, c-format
+msgid "usage: %s <device> [timezone]\n"
+msgstr "utilisation : %s <périphérique> <point_de_montage>\n"
+
 #: ../tools/read-sysinfoextended-sgutils.c:39
 #, c-format
 msgid "usage: %s <device> <mountpoint>\n"
@@ -864,3 +864,7 @@
 #, c-format
 msgid "Couldn't write SysInfoExtended to %s"
 msgstr "Impossible d'écrire « SysInfoExtended » dans %s"
+
+#~ msgid "Could not find artwork entry (mhii id: %u) for track (dbid: %s).\n"
+#~ msgstr ""
+#~ "Impossible de trouver l'image (mhii id : %u) pour la piste (dbid : %s).\n"

Modified: libgpod/branches/upstream/current/po/he.po
===================================================================
--- libgpod/branches/upstream/current/po/he.po	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/po/he.po	2009-06-19 20:28:03 UTC (rev 384)
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gtkpod\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-12-07 20:48-0500\n"
+"POT-Creation-Date: 2009-04-03 16:08-0400\n"
 "PO-Revision-Date: 2008-12-09 23:07+0200\n"
 "Last-Translator: Assaf Gillat <gillata at gmail.com>\n"
 "Language-Team: HEBREW <kde-il at yahoogroups.com>\n"
@@ -16,31 +16,26 @@
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 "X-Generator: poedit\n"
 
-#: ../src/db-artwork-parser.c:156
+#: ../src/db-artwork-parser.c:140
 #, c-format
 msgid "Unexpected mhod string type: %d\n"
 msgstr "סוג מחרוזת mhod לא צפוי: %d\n"
 
-#: ../src/db-artwork-parser.c:476
+#: ../src/db-artwork-parser.c:460
 #, c-format
 msgid "Unexpected mhsd index: %d\n"
 msgstr "אינדקס mhsd לא צפוי: %d\n"
 
-#: ../src/db-artwork-parser.c:522
+#: ../src/db-artwork-parser.c:540
 #, c-format
 msgid "Could not find corresponding track (dbid: %s) for artwork entry.\n"
 msgstr "אי אפשר היה למצוא רצועה מתאימה (dbid: %s) עבור רשומת תמונת גלרייה.\n"
 
-#: ../src/db-artwork-parser.c:530
+#: ../src/db-artwork-parser.c:548
 #, c-format
 msgid "iTunesDB and ArtworkDB artwork sizes inconsistent (%d+%d != %d)\n"
 msgstr "גודל תמונות הגלריה בין הiTunesDB והArtworkDB לא עקבי (%d+%d != %d)\n"
 
-#: ../src/db-artwork-parser.c:566
-#, c-format
-msgid "Could not find artwork entry (mhii id: %u) for track (dbid: %s).\n"
-msgstr "אי אפשר למצוא רשומת גלריית תמונות (mhii id: %u) עבור רצועה (dbid: %s).\n"
-
 #: ../src/db-image-parser.c:91
 #, c-format
 msgid "Unexpected image type in mhni: %d, offset: %d\n"
@@ -51,8 +46,7 @@
 msgid "Could not access file '%s'."
 msgstr "אי אפשר לגשת לקובץ: '%s'."
 
-#: ../src/itdb_artwork.c:181
-#: ../src/itdb_artwork.c:241
+#: ../src/itdb_artwork.c:181 ../src/itdb_artwork.c:241
 #: ../src/itdb_artwork.c:298
 #, c-format
 msgid "Artwork support not compiled into libgpod."
@@ -65,300 +59,304 @@
 
 #: ../src/itdb_artwork.c:828
 #, c-format
-msgid "Unable to retrieve thumbnail (appears to be on iPod, but no image info available): filename: '%s'\n"
-msgstr "אי אפשר היה לאחזר את התמונות הממוזערות (כנראה הן על הiPod, אבל אין מידע תמונה זמין): קובץ '%s'\n"
+msgid ""
+"Unable to retrieve thumbnail (appears to be on iPod, but no image info "
+"available): filename: '%s'\n"
+msgstr ""
+"אי אפשר היה לאחזר את התמונות הממוזערות (כנראה הן על הiPod, אבל אין מידע "
+"תמונה זמין): קובץ '%s'\n"
 
-#: ../src/itdb_device.c:256
+#: ../src/itdb_device.c:263
 msgid "Invalid"
 msgstr "לא תקין"
 
-#: ../src/itdb_device.c:257
-#: ../src/itdb_device.c:298
+#: ../src/itdb_device.c:264 ../src/itdb_device.c:305
 msgid "Unknown"
 msgstr "לא ידוע"
 
-#: ../src/itdb_device.c:258
+#: ../src/itdb_device.c:265
 msgid "Color"
 msgstr "צבע"
 
-#: ../src/itdb_device.c:259
+#: ../src/itdb_device.c:266
 msgid "Color U2"
 msgstr "צבע U2"
 
-#: ../src/itdb_device.c:260
+#: ../src/itdb_device.c:267
 msgid "Grayscale"
 msgstr "גווני אפור"
 
-#: ../src/itdb_device.c:261
+#: ../src/itdb_device.c:268
 msgid "Grayscale U2"
 msgstr "גווני אפור U2"
 
-#: ../src/itdb_device.c:262
+#: ../src/itdb_device.c:269
 msgid "Mini (Silver)"
 msgstr "מיני (כסוף)"
 
-#: ../src/itdb_device.c:263
+#: ../src/itdb_device.c:270
 msgid "Mini (Blue)"
 msgstr "מיני (כחול)"
 
-#: ../src/itdb_device.c:264
+#: ../src/itdb_device.c:271
 msgid "Mini (Pink)"
 msgstr "מיני (ורוד)"
 
-#: ../src/itdb_device.c:265
+#: ../src/itdb_device.c:272
 msgid "Mini (Green)"
 msgstr "מיני (ירוק)"
 
-#: ../src/itdb_device.c:266
+#: ../src/itdb_device.c:273
 msgid "Mini (Gold)"
 msgstr "מיני (זהב)"
 
-#: ../src/itdb_device.c:267
+#: ../src/itdb_device.c:274
 msgid "Shuffle"
 msgstr "שאפל"
 
-#: ../src/itdb_device.c:268
+#: ../src/itdb_device.c:275
 msgid "Nano (White)"
 msgstr "נאנו (לבן)"
 
-#: ../src/itdb_device.c:269
+#: ../src/itdb_device.c:276
 msgid "Nano (Black)"
 msgstr "נאנו (שחור)"
 
-#: ../src/itdb_device.c:270
+#: ../src/itdb_device.c:277
 msgid "Video (White)"
 msgstr "וידאו (לבן)"
 
-#: ../src/itdb_device.c:271
+#: ../src/itdb_device.c:278
 msgid "Video (Black)"
 msgstr "וידאו (שחור)"
 
-#: ../src/itdb_device.c:272
+#: ../src/itdb_device.c:279
 msgid "Mobile (1)"
 msgstr "נייד (1)"
 
-#: ../src/itdb_device.c:273
+#: ../src/itdb_device.c:280
 msgid "Video U2"
 msgstr "וידאו U2"
 
-#: ../src/itdb_device.c:274
+#: ../src/itdb_device.c:281
 msgid "Nano (Silver)"
 msgstr "נאנו (כסוף)"
 
-#: ../src/itdb_device.c:275
+#: ../src/itdb_device.c:282
 msgid "Nano (Blue)"
 msgstr "נאנו (כחול)"
 
-#: ../src/itdb_device.c:276
+#: ../src/itdb_device.c:283
 msgid "Nano (Green)"
 msgstr "נאנו (ירוק)"
 
-#: ../src/itdb_device.c:277
+#: ../src/itdb_device.c:284
 msgid "Nano (Pink)"
 msgstr "נאנו (ורוד)"
 
-#: ../src/itdb_device.c:278
+#: ../src/itdb_device.c:285
 msgid "Nano (Red)"
 msgstr "נאנו (אדום)"
 
-#: ../src/itdb_device.c:279
+#: ../src/itdb_device.c:286
 msgid "Nano (Yellow)"
 msgstr "נאנו (צהוב)"
 
-#: ../src/itdb_device.c:280
+#: ../src/itdb_device.c:287
 msgid "Nano (Purple)"
 msgstr "נאנו (סגול)"
 
-#: ../src/itdb_device.c:281
+#: ../src/itdb_device.c:288
 msgid "Nano (Orange)"
 msgstr "נאנו (כתום)"
 
-#: ../src/itdb_device.c:282
+#: ../src/itdb_device.c:289
 msgid "iPhone (1)"
 msgstr "אייפון (1)"
 
-#: ../src/itdb_device.c:283
+#: ../src/itdb_device.c:290
 msgid "Shuffle (Silver)"
 msgstr "שאפל (כסוף)"
 
-#: ../src/itdb_device.c:284
+#: ../src/itdb_device.c:291
 msgid "Shuffle (Pink)"
 msgstr "שאפל (ורוד)"
 
-#: ../src/itdb_device.c:285
+#: ../src/itdb_device.c:292
 msgid "Shuffle (Blue)"
 msgstr "שאפל (כחול)"
 
-#: ../src/itdb_device.c:286
+#: ../src/itdb_device.c:293
 msgid "Shuffle (Green)"
 msgstr "שאפל (ירוק)"
 
-#: ../src/itdb_device.c:287
+#: ../src/itdb_device.c:294
 msgid "Shuffle (Orange)"
 msgstr "שאפל (כתום)"
 
-#: ../src/itdb_device.c:288
+#: ../src/itdb_device.c:295
 msgid "Shuffle (Purple)"
 msgstr "שאפל (סגול)"
 
-#: ../src/itdb_device.c:289
+#: ../src/itdb_device.c:296
 msgid "Shuffle (Red)"
 msgstr "שאפל (אדום)"
 
-#: ../src/itdb_device.c:290
+#: ../src/itdb_device.c:297
 msgid "Classic (Silver)"
 msgstr "קלאסי (כסוף)"
 
-#: ../src/itdb_device.c:291
+#: ../src/itdb_device.c:298
 msgid "Classic (Black)"
 msgstr "קלאסי (שחור)"
 
-#: ../src/itdb_device.c:292
+#: ../src/itdb_device.c:299
 msgid "Touch (Black)"
 msgstr "טאץ (שחור)"
 
-#: ../src/itdb_device.c:299
+#: ../src/itdb_device.c:306
 msgid "Regular (1st Gen.)"
 msgstr "רגיל (דור ראשון)"
 
-#: ../src/itdb_device.c:300
+#: ../src/itdb_device.c:307
 msgid "Regular (2nd Gen.)"
 msgstr "רגיל (דור שני)"
 
-#: ../src/itdb_device.c:301
+#: ../src/itdb_device.c:308
 msgid "Regular (3rd Gen.)"
 msgstr "רגיל (דור שלישי)"
 
-#: ../src/itdb_device.c:302
+#: ../src/itdb_device.c:309
 msgid "Regular (4th Gen.)"
 msgstr "רגיל (דור רביעי)"
 
-#: ../src/itdb_device.c:303
+#: ../src/itdb_device.c:310
 msgid "Photo"
 msgstr "פוטו"
 
-#: ../src/itdb_device.c:304
+#: ../src/itdb_device.c:311
 msgid "Mobile Phones"
 msgstr "טלפונים סלולריים"
 
-#: ../src/itdb_device.c:305
+#: ../src/itdb_device.c:312
 msgid "Mini (1st Gen.)"
 msgstr "מיני (דור ראשון)"
 
-#: ../src/itdb_device.c:306
+#: ../src/itdb_device.c:313
 msgid "Mini (2nd Gen.)"
 msgstr "מיני (דור שני)"
 
-#: ../src/itdb_device.c:307
+#: ../src/itdb_device.c:314
 msgid "Shuffle (1st Gen.)"
 msgstr "שאפל (דור ראשון)"
 
-#: ../src/itdb_device.c:308
+#: ../src/itdb_device.c:315
 msgid "Shuffle (2nd Gen.)"
 msgstr "שאפל (דור שני)"
 
-#: ../src/itdb_device.c:309
+#: ../src/itdb_device.c:316
 msgid "Shuffle (3rd Gen.)"
 msgstr "שאפל (דור שלישי)"
 
-#: ../src/itdb_device.c:310
+#: ../src/itdb_device.c:317
 msgid "Nano (1st Gen.)"
 msgstr "נאנו (דור ראשון)"
 
-#: ../src/itdb_device.c:311
+#: ../src/itdb_device.c:318
 msgid "Nano (2nd Gen.)"
 msgstr "נאנו (דור שני)"
 
-#: ../src/itdb_device.c:312
+#: ../src/itdb_device.c:319
 msgid "Nano Video (3rd Gen.)"
 msgstr "נאנו וידאו (דור שלישי)"
 
-#: ../src/itdb_device.c:313
+#: ../src/itdb_device.c:320
 msgid "Nano Video (4th Gen.)"
 msgstr "נאנו וידאו (דור רביעי)"
 
-#: ../src/itdb_device.c:314
+#: ../src/itdb_device.c:321
 msgid "Video (1st Gen.)"
 msgstr "וידאו (דור ראשון)"
 
-#: ../src/itdb_device.c:315
+#: ../src/itdb_device.c:322
 msgid "Video (2nd Gen.)"
 msgstr "וידאו (דור שני)"
 
-#: ../src/itdb_device.c:316
-#: ../src/itdb_device.c:317
+#: ../src/itdb_device.c:323 ../src/itdb_device.c:324
 msgid "Classic"
 msgstr "קלאסי"
 
-#: ../src/itdb_device.c:318
+#: ../src/itdb_device.c:325
 msgid "Touch"
 msgstr "טאץ"
 
-#: ../src/itdb_device.c:319
+#: ../src/itdb_device.c:326
 msgid "iPhone"
 msgstr "אייפון"
 
-#: ../src/itdb_device.c:320
-#: ../src/itdb_device.c:321
+#: ../src/itdb_device.c:327 ../src/itdb_device.c:328
 msgid "Unused"
 msgstr "לא בשימוש"
 
-#: ../src/itdb_device.c:874
+#: ../src/itdb_device.c:928
 #, c-format
 msgid "Could not open '%s' for writing."
 msgstr "אי אפשר לפתוח את '%s' לכתיבה."
 
-#: ../src/itdb_device.c:883
+#: ../src/itdb_device.c:937
 #, c-format
 msgid "Device directory does not exist."
 msgstr "תיקיית מכשיר לא קיימת."
 
-#: ../src/itdb_itunesdb.c:462
+#: ../src/itdb_itunesdb.c:507
 #, c-format
 msgid "Illegal seek to offset %ld (length %ld) in file '%s'."
 msgstr "חיפוש לא חוקי בהיסט %ld (אורך %ld) בקובץ '%s'."
 
-#: ../src/itdb_itunesdb.c:915
+#: ../src/itdb_itunesdb.c:910
 #, c-format
 msgid "Not a Play Counts file: '%s' (missing mhdp header)."
 msgstr "זהו לא קובץ ספירת השמעה: '%s' (חסר תחילית mhdp)"
 
-#: ../src/itdb_itunesdb.c:930
+#: ../src/itdb_itunesdb.c:925
 #, c-format
 msgid "Play Counts file ('%s'): header length smaller than expected (%d<96)."
 msgstr "קובץ ספירת השמעה ('%s'): אורך תחילית קטן מהצפוי (%d<96)."
 
-#: ../src/itdb_itunesdb.c:944
+#: ../src/itdb_itunesdb.c:939
 #, c-format
 msgid "Play Counts file ('%s'): entry length smaller than expected (%d<12)."
 msgstr "קובץ ספירת השמעה ('%s'): אורך רשומה קטן מהצפוי (%d<12)."
 
-#: ../src/itdb_itunesdb.c:1019
+#: ../src/itdb_itunesdb.c:1014
 #, c-format
 msgid "iTunesStats file ('%s'): entry length smaller than expected (%d<18)."
 msgstr "קובץ iTunesStats ('%s'): אורך רשומה קטן מהצפוי (%d<18)."
 
-#: ../src/itdb_itunesdb.c:1338
+#: ../src/itdb_itunesdb.c:1333
 #, c-format
 msgid "iTunesDB corrupt: no MHOD at offset %ld in file '%s'."
 msgstr "הiTunesDB שבור: אין MHOD בהיסט %ld בקובץ '%s'."
 
-#: ../src/itdb_itunesdb.c:1524
+#: ../src/itdb_itunesdb.c:1519
 #, c-format
 msgid "Unknown smart rule action at %ld: %x. Trying to continue.\n"
 msgstr "פעולת חוק חכם לא ידועה ב-%ld: %x . מנסה להמשיך.\n"
 
-#: ../src/itdb_itunesdb.c:1555
+#: ../src/itdb_itunesdb.c:1550
 #, c-format
-msgid "Length of smart playlist rule field (%d) not as expected. Trying to continue anyhow.\n"
-msgstr "אורך שדה של חוק (%d) רשימת השמעה חכמה הוא לא כצפוי. מנסה להמשיך בכל זאת.\n"
+msgid ""
+"Length of smart playlist rule field (%d) not as expected. Trying to continue "
+"anyhow.\n"
+msgstr ""
+"אורך שדה של חוק (%d) רשימת השמעה חכמה הוא לא כצפוי. מנסה להמשיך בכל זאת.\n"
 
-#: ../src/itdb_itunesdb.c:1598
+#: ../src/itdb_itunesdb.c:1593
 #, c-format
 msgid "iTunesDB corrupt: no SLst at offset %ld in file '%s'."
 msgstr "הiTunesDB שבור: אין SLst בהיסט %ld בקובץ '%s'."
 
-#: ../src/itdb_itunesdb.c:1611
+#: ../src/itdb_itunesdb.c:1606
 #, c-format
 msgid ""
 "Encountered unknown MHOD type (%d) while parsing the iTunesDB. Ignoring.\n"
@@ -367,210 +365,230 @@
 "נתקלנו בסוג לא ידוע של MHOD (%d) בזמן ניתוח ה-iTuneDB. מתעלם.\n"
 "\n"
 
-#: ../src/itdb_itunesdb.c:1691
+#: ../src/itdb_itunesdb.c:1689
 #, c-format
 msgid "iTunesDB corrupt: hunk length 0 for hunk at %ld in file '%s'."
 msgstr "הiTunesDB שבור: אורך חתיכה 0 בחתיכה  %ld בקובץ '%s'."
 
-#: ../src/itdb_itunesdb.c:1704
+#: ../src/itdb_itunesdb.c:1702
 #, c-format
-msgid "iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
+msgid ""
+"iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
 msgstr "הiTunesDB שבור: מקטע '%s' לא נמצא במקטע '%s' המתחיל ב- %ld."
 
-#: ../src/itdb_itunesdb.c:1718
+#: ../src/itdb_itunesdb.c:1716
 #, c-format
-msgid "header length of '%s' smaller than expected (%d < %d) at offset %ld in file '%s'."
+msgid ""
+"header length of '%s' smaller than expected (%d < %d) at offset %ld in file "
+"'%s'."
 msgstr "גודל תחילית של המקטע '%s' קטן מהצפוי (%d < %d) בהיסט %ld בקובץ '%s'."
 
-#: ../src/itdb_itunesdb.c:1803
+#: ../src/itdb_itunesdb.c:1801
 #, c-format
 msgid "Not a iTunesDB: '%s' (missing mhdb header)."
 msgstr "זהו לא iTunesDB: '%s' (חסרה תחילית mhdb)."
 
-#: ../src/itdb_itunesdb.c:1820
+#: ../src/itdb_itunesdb.c:1818
 #, c-format
-msgid "iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). Aborting."
-msgstr "הiTunesDB ('%s'): גודל התחילית של המקטע mhsd קטנה מהצפוי (%d<32). מבטל."
+msgid ""
+"iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). "
+"Aborting."
+msgstr ""
+"הiTunesDB ('%s'): גודל התחילית של המקטע mhsd קטנה מהצפוי (%d<32). מבטל."
 
-#: ../src/itdb_itunesdb.c:1841
+#: ../src/itdb_itunesdb.c:1839
 #, c-format
 msgid "iTunesDB '%s' corrupt: mhsd expected at %ld."
 msgstr "הiTunesDB '%s' שבור: mhsd צפוי ב-%ld."
 
-#: ../src/itdb_itunesdb.c:1958
+#: ../src/itdb_itunesdb.c:1944
 #, c-format
 msgid "Number of MHODs in mhip at %ld inconsistent in file '%s'."
 msgstr "מספר ה-MHODים ב-mhip ב-%ld הם לא עקביים בקובץ \"%s\"."
 
-#: ../src/itdb_itunesdb.c:1976
+#: ../src/itdb_itunesdb.c:2121
 #, c-format
-msgid "Itdb_Track ID '%d' not found.\n"
-msgstr "מזהה Itdb_Track '%d' לא נמצא.\n"
-
-#: ../src/itdb_itunesdb.c:2146
-#, c-format
 msgid "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
 msgstr "מספר ה-MHOD ב-mhyp ב-%ld לא עקביים בקובץ '%s'."
 
-#: ../src/itdb_itunesdb.c:2156
+#: ../src/itdb_itunesdb.c:2131
 msgid "Master-PL"
 msgstr "רשימת ראשית"
 
-#: ../src/itdb_itunesdb.c:2160
+#: ../src/itdb_itunesdb.c:2135
 msgid "Podcasts"
 msgstr "פודקאסט"
 
-#: ../src/itdb_itunesdb.c:2162
+#: ../src/itdb_itunesdb.c:2137
 msgid "Playlist"
 msgstr "רשימת השמעה"
 
-#: ../src/itdb_itunesdb.c:2184
+#: ../src/itdb_itunesdb.c:2159
 #, c-format
-msgid "iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %ld in file '%s'."
-msgstr "הiTunesDB שבור: מספר קטעי ה-mhip לא עקביים ב-mhyp המתחילים ב- %ld בקובץ '%s'."
+msgid ""
+"iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %"
+"ld in file '%s'."
+msgstr ""
+"הiTunesDB שבור: מספר קטעי ה-mhip לא עקביים ב-mhyp המתחילים ב- %ld בקובץ '%s'."
 
-#: ../src/itdb_itunesdb.c:2527
+#: ../src/itdb_itunesdb.c:2180
+#, c-format
+msgid "Itdb_Track ID '%d' not found.\n"
+msgstr "מזהה Itdb_Track '%d' לא נמצא.\n"
+
+#: ../src/itdb_itunesdb.c:2524
 msgid "OTG Playlist"
 msgstr "רשימת השמעה OTG"
 
-#: ../src/itdb_itunesdb.c:2545
+#: ../src/itdb_itunesdb.c:2542
 #, c-format
 msgid "Not a OTG playlist file: '%s' (missing mhpo header)."
 msgstr "זהו לא קובץ רשימת השמעה OTG: '%s' (חסרה תחילת קובץ mhpo)."
 
-#: ../src/itdb_itunesdb.c:2559
+#: ../src/itdb_itunesdb.c:2556
 #, c-format
 msgid "OTG playlist file ('%s'): header length smaller than expected (%d<20)."
 msgstr "קובץ רשימת השמעה OTG ('%s'): גודל תחילית קטן מהצפוי (%d<20)."
 
-#: ../src/itdb_itunesdb.c:2571
+#: ../src/itdb_itunesdb.c:2568
 #, c-format
 msgid "OTG playlist file ('%s'): entry length smaller than expected (%d<4)."
 msgstr "קובץ רשימת השמעה OTG ('%s'): גודל רשומה קטן מהצפוי (%d<4)."
 
-#: ../src/itdb_itunesdb.c:2606
+#: ../src/itdb_itunesdb.c:2603
 #, c-format
 msgid "OTG playlist file '%s': reference to non-existent track (%d)."
 msgstr "רשימת השמעה OTG '%s': התייחסות לרצועה לא קיימת (%d)."
 
-#: ../src/itdb_itunesdb.c:2651
+#: ../src/itdb_itunesdb.c:2648
 #, c-format
 msgid "OTG Playlist %d"
 msgstr "רשימת השמעה OTG %d"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2719
-msgid "iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to continue.\n"
+#: ../src/itdb_itunesdb.c:2716
+msgid ""
+"iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to "
+"continue.\n"
 msgstr "הiTuneDB שבור: מספר רצועות (mhit חתיכות) לא עקביות. מנסה להמשיך.\n"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2782
-msgid "iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. Trying to continue.\n"
-msgstr "יכול להיות ש-iTuneDB שבור: מספר רשימות השמעה (mhyp חתיכות) לא עקביות. מנסה להמשיך.\n"
+#: ../src/itdb_itunesdb.c:2779
+msgid ""
+"iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. "
+"Trying to continue.\n"
+msgstr ""
+"יכול להיות ש-iTuneDB שבור: מספר רשימות השמעה (mhyp חתיכות) לא עקביות. מנסה "
+"להמשיך.\n"
 
-#: ../src/itdb_itunesdb.c:2829
+#: ../src/itdb_itunesdb.c:2826
 #, c-format
-msgid "iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section found)"
-msgstr "הiTunesDB '%s' שבור: אי אפשר למצוא רשימת רצועות (לא קיים מקטע mhsd סוג 1)"
+msgid ""
+"iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section "
+"found)"
+msgstr ""
+"הiTunesDB '%s' שבור: אי אפשר למצוא רשימת רצועות (לא קיים מקטע mhsd סוג 1)"
 
-#: ../src/itdb_itunesdb.c:2858
+#: ../src/itdb_itunesdb.c:2855
 #, c-format
-msgid "iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 sections found)"
-msgstr "הiTunesDB '%s' שבור: אי אפשר למצוא רשימת השמעה (לא נמצאו mhsd מסוג 2 או 3)"
+msgid ""
+"iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 "
+"sections found)"
+msgstr ""
+"הiTunesDB '%s' שבור: אי אפשר למצוא רשימת השמעה (לא נמצאו mhsd מסוג 2 או 3)"
 
-#: ../src/itdb_itunesdb.c:2880
+#: ../src/itdb_itunesdb.c:2877
 #, c-format
 msgid "iTunes directory not found: '%s' (or similar)."
 msgstr "תיקיית iTunes לא נמצאה: '%s' (או דומה)."
 
-#: ../src/itdb_itunesdb.c:2897
+#: ../src/itdb_itunesdb.c:2894
 #, c-format
 msgid "Music directory not found: '%s' (or similar)."
 msgstr "תיקיית מוזיקה לא נמצאה: '%s' (או דומה)."
 
-#: ../src/itdb_itunesdb.c:2915
+#: ../src/itdb_itunesdb.c:2912
 #, c-format
 msgid "Control directory not found: '%s' (or similar)."
 msgstr "תיקיית בקרה לא נמצאה: '%s' (או דומה)."
 
-#: ../src/itdb_itunesdb.c:3036
+#: ../src/itdb_itunesdb.c:3033
 #, c-format
 msgid "File not found: '%s'."
 msgstr "קובץ לא קיים: '%s'."
 
-#: ../src/itdb_itunesdb.c:5410
+#: ../src/itdb_itunesdb.c:5533
 #, c-format
 msgid "Path not found: '%s' (or similar)."
 msgstr "נתיב לא נמצא: '%s' (או דומה)."
 
-#: ../src/itdb_itunesdb.c:5616
+#: ../src/itdb_itunesdb.c:5742
 #, c-format
 msgid "Error renaming '%s' to '%s' (%s)."
 msgstr "תקלה בשינוי שם '%s' ל '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5633
-#: ../src/itdb_itunesdb.c:5650
+#: ../src/itdb_itunesdb.c:5759 ../src/itdb_itunesdb.c:5776
+#: ../src/itdb_itunesdb.c:5793
 #, c-format
 msgid "Error removing '%s' (%s)."
 msgstr "תקלה בהסרת '%s' (%s)"
 
-#: ../src/itdb_itunesdb.c:5812
-#: ../src/itdb_itunesdb.c:5985
+#: ../src/itdb_itunesdb.c:5960 ../src/itdb_itunesdb.c:6133
 #, c-format
 msgid "Mountpoint not set."
 msgstr "לא נקבעה נקודת עגינה."
 
-#: ../src/itdb_itunesdb.c:5852
+#: ../src/itdb_itunesdb.c:6000
 #, c-format
 msgid "No 'F..' directories found in '%s'."
 msgstr "לא נמצאו תיקיות מסוג \"F..\" ב-\"%s\"."
 
-#: ../src/itdb_itunesdb.c:5873
+#: ../src/itdb_itunesdb.c:6021
 #, c-format
 msgid "Path not found: '%s'."
 msgstr "נתיב לא נמצא: '%s'."
 
-#: ../src/itdb_itunesdb.c:5994
+#: ../src/itdb_itunesdb.c:6142
 #, c-format
 msgid "'%s' could not be accessed (%s)."
 msgstr "אי אפשר לגשת אל '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6004
+#: ../src/itdb_itunesdb.c:6152
 #, c-format
-msgid "Destination file '%s' does not appear to be on the iPod mounted at '%s'."
+msgid ""
+"Destination file '%s' does not appear to be on the iPod mounted at '%s'."
 msgstr "קובץ יעד \"%s\" כנראה לא מופיע על ה-iPod המעוגן בנקודה \"%s\"."
 
-#: ../src/itdb_itunesdb.c:6212
+#: ../src/itdb_itunesdb.c:6360
 #, c-format
 msgid "Error opening '%s' for reading (%s)."
 msgstr "תקלה בפתיחת '%s' לקריאה (%s)."
 
-#: ../src/itdb_itunesdb.c:6224
+#: ../src/itdb_itunesdb.c:6372
 #, c-format
 msgid "Error opening '%s' for writing (%s)."
 msgstr "תקלה בפתיחת '%s' לכתיבה (%s)."
 
-#: ../src/itdb_itunesdb.c:6240
+#: ../src/itdb_itunesdb.c:6388
 #, c-format
 msgid "Error while reading from '%s' (%s)."
 msgstr "תקלה בזמן קריאה מ '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6255
+#: ../src/itdb_itunesdb.c:6403
 #, c-format
 msgid "Error while writing to '%s' (%s)."
 msgstr "תקלה בזמן כתיבה ל '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6268
-#: ../src/itdb_itunesdb.c:6278
+#: ../src/itdb_itunesdb.c:6416 ../src/itdb_itunesdb.c:6426
 #, c-format
 msgid "Error when closing '%s' (%s)."
 msgstr "תקלה בזמן סגירה '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6702
+#: ../src/itdb_itunesdb.c:6856
 msgid "iPod"
 msgstr "iPod"
 
-#: ../src/itdb_itunesdb.c:7024
+#: ../src/itdb_itunesdb.c:7178
 #, c-format
 msgid "Problem creating iPod directory or file: '%s'."
 msgstr "בעייה ביצירת תיקיית iPod או קובץ: \"%s\"."
@@ -580,8 +598,7 @@
 msgid "Photos directory not found: '%s' (or similar)."
 msgstr "נתיב תמונות לא נמצא: '%s' (או דומה)."
 
-#: ../src/itdb_photoalbum.c:266
-#: ../src/itdb_photoalbum.c:460
+#: ../src/itdb_photoalbum.c:266 ../src/itdb_photoalbum.c:460
 msgid "Photo Library"
 msgstr "ספריית תמונות"
 
@@ -592,8 +609,12 @@
 
 #: ../src/itdb_photoalbum.c:407
 #, c-format
-msgid "Your iPod does not seem to support photos. Maybe you need to specify the correct iPod model number? It is currently set to 'x%s' (%s/%s)."
-msgstr "נראה שה-iPod שלך לא תומך בתמונות. אולי צריך לציין את הסוג המדוייק של ה-iPod? הוא כרגע מכוון ל  'x%s' (%s/%s)."
+msgid ""
+"Your iPod does not seem to support photos. Maybe you need to specify the "
+"correct iPod model number? It is currently set to 'x%s' (%s/%s)."
+msgstr ""
+"נראה שה-iPod שלך לא תומך בתמונות. אולי צריך לציין את הסוג המדוייק של ה-iPod? "
+"הוא כרגע מכוון ל  'x%s' (%s/%s)."
 
 #: ../src/itdb_photoalbum.c:419
 #, c-format
@@ -602,12 +623,17 @@
 
 #: ../src/itdb_photoalbum.c:448
 #, c-format
-msgid "Unexpected error in itdb_photodb_add_photo_internal() while adding photo, please report."
-msgstr "תקלה לא צפוייה ב-itdb_photodb_add_photo_internal() בזמן הוספת תמונה, אנא דווח על התקלה."
+msgid ""
+"Unexpected error in itdb_photodb_add_photo_internal() while adding photo, "
+"please report."
+msgstr ""
+"תקלה לא צפוייה ב-itdb_photodb_add_photo_internal() בזמן הוספת תמונה, אנא "
+"דווח על התקלה."
 
 #: ../src/itdb_photoalbum.c:468
 #, c-format
-msgid "Library compiled without gdk-pixbuf support. Picture support is disabled."
+msgid ""
+"Library compiled without gdk-pixbuf support. Picture support is disabled."
 msgstr "הספרייה הודרה ללא תמיכה ב-gdk-pixbuf. תמיכה בתמונות לא מאופשרת."
 
 #. New action!
@@ -631,8 +657,10 @@
 msgid ""
 "Usage to add photos:\n"
 "  %s add <mountpoint> <albumname> [<filename(s)>]\n"
-"  <albumname> should be set to 'NULL' to add photos to the master photo album\n"
-"  (Photo Library) only. If you don't specify any filenames an empty album will\n"
+"  <albumname> should be set to 'NULL' to add photos to the master photo "
+"album\n"
+"  (Photo Library) only. If you don't specify any filenames an empty album "
+"will\n"
 "  be created.\n"
 msgstr ""
 "הוראות שימוש להוספת תמונות:\n"
@@ -689,24 +717,20 @@
 msgid "Error: '%s' is not a directory\n"
 msgstr "שגיאה: '%s' היא לא תיקייה\n"
 
-#: ../tests/test-photos.c:143
-#: ../tests/test-photos.c:177
+#: ../tests/test-photos.c:143 ../tests/test-photos.c:177
 #: ../tests/test-photos.c:306
 #, c-format
 msgid "Error reading iPod photo database (%s).\n"
 msgstr "תקלה בקריאת מסד נתונים של iPod photo במיקום (%s).\n"
 
-#: ../tests/test-photos.c:149
-#: ../tests/test-photos.c:183
+#: ../tests/test-photos.c:149 ../tests/test-photos.c:183
 #: ../tests/test-photos.c:313
 #, c-format
 msgid "Error reading iPod photo database.\n"
 msgstr "תקלה בקריאת מסד נתונים של iPod photo.\n"
 
-#: ../tests/test-photos.c:167
-#: ../tests/test-photos.c:226
-#: ../tests/test-photos.c:296
-#: ../tests/test-photos.c:379
+#: ../tests/test-photos.c:167 ../tests/test-photos.c:226
+#: ../tests/test-photos.c:296 ../tests/test-photos.c:379
 #, c-format
 msgid "Insufficient number of command line arguments.\n"
 msgstr "מספר לא מספק של פרמטרים לשורת הפקודה.\n"
@@ -731,8 +755,10 @@
 
 #: ../tests/test-photos.c:242
 #, c-format
-msgid "Error reading iPod photo database, will attempt to create a new database\n"
-msgstr "תקלה בזמן קריאת מסד נתונים של iPod photo, יעשה ניסיון ליצור מסד נתונים חדש\n"
+msgid ""
+"Error reading iPod photo database, will attempt to create a new database\n"
+msgstr ""
+"תקלה בזמן קריאת מסד נתונים של iPod photo, יעשה ניסיון ליצור מסד נתונים חדש\n"
 
 #: ../tests/test-photos.c:267
 #, c-format
@@ -769,6 +795,11 @@
 msgid "Error initialising iPod, unknown error\n"
 msgstr "תקלה באתחול ה-iPod, תקלה לא ידועה\n"
 
+#: ../tools/ipod-time-sync.c:37
+#, fuzzy, c-format
+msgid "usage: %s <device> [timezone]\n"
+msgstr "הוראות שימוש: %s <device> <mountpoint>\n"
+
 #: ../tools/read-sysinfoextended-sgutils.c:39
 #, c-format
 msgid "usage: %s <device> <mountpoint>\n"
@@ -793,3 +824,7 @@
 #, c-format
 msgid "Couldn't write SysInfoExtended to %s"
 msgstr "אי אפשר לכתוב SysInfoExtended אל %s"
+
+#~ msgid "Could not find artwork entry (mhii id: %u) for track (dbid: %s).\n"
+#~ msgstr ""
+#~ "אי אפשר למצוא רשומת גלריית תמונות (mhii id: %u) עבור רצועה (dbid: %s).\n"

Modified: libgpod/branches/upstream/current/po/it.po
===================================================================
--- libgpod/branches/upstream/current/po/it.po	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/po/it.po	2009-06-19 20:28:03 UTC (rev 384)
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: it\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-12-07 20:48-0500\n"
+"POT-Creation-Date: 2009-04-03 16:08-0400\n"
 "PO-Revision-Date: 2008-12-16 21:44+0100\n"
 "Last-Translator: Daniele Forsi <daniele at forsi.it>\n"
 "Language-Team: Italian <tp at lists.linux.it>\n"
@@ -18,31 +18,30 @@
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n != 1;\n"
 
-#: ../src/db-artwork-parser.c:156
+#: ../src/db-artwork-parser.c:140
 #, c-format
 msgid "Unexpected mhod string type: %d\n"
 msgstr "Tipo di stringa mhod inatteso: %d\n"
 
-#: ../src/db-artwork-parser.c:476
+#: ../src/db-artwork-parser.c:460
 #, c-format
 msgid "Unexpected mhsd index: %d\n"
 msgstr "Indice mhsd inatteso: %d\n"
 
-#: ../src/db-artwork-parser.c:522
+#: ../src/db-artwork-parser.c:540
 #, c-format
 msgid "Could not find corresponding track (dbid: %s) for artwork entry.\n"
-msgstr "Impossibile trovare la traccia corrispondente (dbid: %s) per l'elemento artwork.\n"
+msgstr ""
+"Impossibile trovare la traccia corrispondente (dbid: %s) per l'elemento "
+"artwork.\n"
 
-#: ../src/db-artwork-parser.c:530
+#: ../src/db-artwork-parser.c:548
 #, c-format
 msgid "iTunesDB and ArtworkDB artwork sizes inconsistent (%d+%d != %d)\n"
-msgstr "Le dimensioni dell'artwork in iTunesDB e in ArtworkDB sono incompatibili (%d+%d != %d)\n"
+msgstr ""
+"Le dimensioni dell'artwork in iTunesDB e in ArtworkDB sono incompatibili (%d+"
+"%d != %d)\n"
 
-#: ../src/db-artwork-parser.c:566
-#, c-format
-msgid "Could not find artwork entry (mhii id: %u) for track (dbid: %s).\n"
-msgstr "Impossibile trovare la voce della copertina (id mhii: %u) per la traccia (dbid: %s).\n"
-
 #: ../src/db-image-parser.c:91
 #, c-format
 msgid "Unexpected image type in mhni: %d, offset: %d\n"
@@ -53,8 +52,7 @@
 msgid "Could not access file '%s'."
 msgstr "Impossibile accedere al file '%s'."
 
-#: ../src/itdb_artwork.c:181
-#: ../src/itdb_artwork.c:241
+#: ../src/itdb_artwork.c:181 ../src/itdb_artwork.c:241
 #: ../src/itdb_artwork.c:298
 #, c-format
 msgid "Artwork support not compiled into libgpod."
@@ -67,15 +65,18 @@
 
 #: ../src/itdb_artwork.c:828
 #, c-format
-msgid "Unable to retrieve thumbnail (appears to be on iPod, but no image info available): filename: '%s'\n"
-msgstr "Impossibile recuperare il provino (sembra che sia sull'iPod, ma non sono disponibili informazioni sull'immagine): nome del file: '%s'\n"
+msgid ""
+"Unable to retrieve thumbnail (appears to be on iPod, but no image info "
+"available): filename: '%s'\n"
+msgstr ""
+"Impossibile recuperare il provino (sembra che sia sull'iPod, ma non sono "
+"disponibili informazioni sull'immagine): nome del file: '%s'\n"
 
-#: ../src/itdb_device.c:256
+#: ../src/itdb_device.c:263
 msgid "Invalid"
 msgstr "Non valido"
 
-#: ../src/itdb_device.c:257
-#: ../src/itdb_device.c:298
+#: ../src/itdb_device.c:264 ../src/itdb_device.c:305
 msgid "Unknown"
 msgstr "Sconosciuto"
 
@@ -83,502 +84,552 @@
 # http://docs.info.apple.com/article.html?artnum=61688-it
 # non è tradotta in Italiano, quindi presumo che si tratti di nomi
 # propri e traduco solo il colore
-#: ../src/itdb_device.c:258
+#: ../src/itdb_device.c:265
 msgid "Color"
 msgstr "Color"
 
-#: ../src/itdb_device.c:259
+#: ../src/itdb_device.c:266
 msgid "Color U2"
 msgstr "Color U2"
 
-#: ../src/itdb_device.c:260
+#: ../src/itdb_device.c:267
 msgid "Grayscale"
 msgstr "Grayscale"
 
-#: ../src/itdb_device.c:261
+#: ../src/itdb_device.c:268
 msgid "Grayscale U2"
 msgstr "Grayscale U2"
 
-#: ../src/itdb_device.c:262
+#: ../src/itdb_device.c:269
 msgid "Mini (Silver)"
 msgstr "Mini (argento)"
 
-#: ../src/itdb_device.c:263
+#: ../src/itdb_device.c:270
 msgid "Mini (Blue)"
 msgstr "Mini (blu)"
 
-#: ../src/itdb_device.c:264
+#: ../src/itdb_device.c:271
 msgid "Mini (Pink)"
 msgstr "Mini (rosa)"
 
-#: ../src/itdb_device.c:265
+#: ../src/itdb_device.c:272
 msgid "Mini (Green)"
 msgstr "Mini (verde)"
 
-#: ../src/itdb_device.c:266
+#: ../src/itdb_device.c:273
 msgid "Mini (Gold)"
 msgstr "Mini (oro)"
 
-#: ../src/itdb_device.c:267
+#: ../src/itdb_device.c:274
 msgid "Shuffle"
 msgstr "Shuffle"
 
-#: ../src/itdb_device.c:268
+#: ../src/itdb_device.c:275
 msgid "Nano (White)"
 msgstr "Nano (bianco)"
 
-#: ../src/itdb_device.c:269
+#: ../src/itdb_device.c:276
 msgid "Nano (Black)"
 msgstr "Nano (Nero)"
 
-#: ../src/itdb_device.c:270
+#: ../src/itdb_device.c:277
 msgid "Video (White)"
 msgstr "Video (bianco)"
 
-#: ../src/itdb_device.c:271
+#: ../src/itdb_device.c:278
 msgid "Video (Black)"
 msgstr "Video (nero)"
 
-#: ../src/itdb_device.c:272
+#: ../src/itdb_device.c:279
 msgid "Mobile (1)"
 msgstr "Mobile (1)"
 
-#: ../src/itdb_device.c:273
+#: ../src/itdb_device.c:280
 msgid "Video U2"
 msgstr "Video U2"
 
-#: ../src/itdb_device.c:274
+#: ../src/itdb_device.c:281
 msgid "Nano (Silver)"
 msgstr "Nano (argento)"
 
-#: ../src/itdb_device.c:275
+#: ../src/itdb_device.c:282
 msgid "Nano (Blue)"
 msgstr "Nano (blu)"
 
-#: ../src/itdb_device.c:276
+#: ../src/itdb_device.c:283
 msgid "Nano (Green)"
 msgstr "Nano (verde)"
 
-#: ../src/itdb_device.c:277
+#: ../src/itdb_device.c:284
 msgid "Nano (Pink)"
 msgstr "Nano (verde)"
 
-#: ../src/itdb_device.c:278
+#: ../src/itdb_device.c:285
 msgid "Nano (Red)"
 msgstr "Nano (rosso)"
 
-#: ../src/itdb_device.c:279
+#: ../src/itdb_device.c:286
 msgid "Nano (Yellow)"
 msgstr "Nano (giallo)"
 
-#: ../src/itdb_device.c:280
+#: ../src/itdb_device.c:287
 msgid "Nano (Purple)"
 msgstr "Nano (viola)"
 
-#: ../src/itdb_device.c:281
+#: ../src/itdb_device.c:288
 msgid "Nano (Orange)"
 msgstr "Nano (arancione)"
 
-#: ../src/itdb_device.c:282
+#: ../src/itdb_device.c:289
 msgid "iPhone (1)"
 msgstr "iPhone (1)"
 
-#: ../src/itdb_device.c:283
+#: ../src/itdb_device.c:290
 msgid "Shuffle (Silver)"
 msgstr "Shuffle (argento)"
 
-#: ../src/itdb_device.c:284
+#: ../src/itdb_device.c:291
 msgid "Shuffle (Pink)"
 msgstr "Shuffle (rosa)"
 
-#: ../src/itdb_device.c:285
+#: ../src/itdb_device.c:292
 msgid "Shuffle (Blue)"
 msgstr "Shuffle (blu)"
 
-#: ../src/itdb_device.c:286
+#: ../src/itdb_device.c:293
 msgid "Shuffle (Green)"
 msgstr "Shuffle (verde)"
 
-#: ../src/itdb_device.c:287
+#: ../src/itdb_device.c:294
 msgid "Shuffle (Orange)"
 msgstr "Shuffle (arancione)"
 
-#: ../src/itdb_device.c:288
+#: ../src/itdb_device.c:295
 msgid "Shuffle (Purple)"
 msgstr "Shuffle (viola)"
 
-#: ../src/itdb_device.c:289
+#: ../src/itdb_device.c:296
 msgid "Shuffle (Red)"
 msgstr "Shuffle (rosso)"
 
-#: ../src/itdb_device.c:290
+#: ../src/itdb_device.c:297
 msgid "Classic (Silver)"
 msgstr "Classic (argento)"
 
-#: ../src/itdb_device.c:291
+#: ../src/itdb_device.c:298
 msgid "Classic (Black)"
 msgstr "Classic (nero)"
 
-#: ../src/itdb_device.c:292
+#: ../src/itdb_device.c:299
 msgid "Touch (Black)"
 msgstr "Touch (Nero)"
 
-#: ../src/itdb_device.c:299
+#: ../src/itdb_device.c:306
 msgid "Regular (1st Gen.)"
 msgstr "Normale (1ᵃ gen.) "
 
-#: ../src/itdb_device.c:300
+#: ../src/itdb_device.c:307
 msgid "Regular (2nd Gen.)"
 msgstr "Normale (2ᵃ gen.) "
 
-#: ../src/itdb_device.c:301
+#: ../src/itdb_device.c:308
 msgid "Regular (3rd Gen.)"
 msgstr "Normale (3ᵃ gen.) "
 
-#: ../src/itdb_device.c:302
+#: ../src/itdb_device.c:309
 msgid "Regular (4th Gen.)"
 msgstr "Normale (4ᵃ gen.) "
 
-#: ../src/itdb_device.c:303
+#: ../src/itdb_device.c:310
 msgid "Photo"
 msgstr "Photo"
 
-#: ../src/itdb_device.c:304
+#: ../src/itdb_device.c:311
 msgid "Mobile Phones"
 msgstr "Telefoni cellulari"
 
-#: ../src/itdb_device.c:305
+#: ../src/itdb_device.c:312
 msgid "Mini (1st Gen.)"
 msgstr "Mini (1ᵃ gen.)"
 
-#: ../src/itdb_device.c:306
+#: ../src/itdb_device.c:313
 msgid "Mini (2nd Gen.)"
 msgstr "Mini (2ᵃ gen.)"
 
-#: ../src/itdb_device.c:307
+#: ../src/itdb_device.c:314
 msgid "Shuffle (1st Gen.)"
 msgstr "Shuffle (1ᵃ gen.)"
 
-#: ../src/itdb_device.c:308
+#: ../src/itdb_device.c:315
 msgid "Shuffle (2nd Gen.)"
 msgstr "Shuffle (2ᵃ gen.)"
 
-#: ../src/itdb_device.c:309
+#: ../src/itdb_device.c:316
 msgid "Shuffle (3rd Gen.)"
 msgstr "Shuffle (3ᵃ gen.)"
 
-#: ../src/itdb_device.c:310
+#: ../src/itdb_device.c:317
 msgid "Nano (1st Gen.)"
 msgstr "Nano (1ᵃ gen.)"
 
-#: ../src/itdb_device.c:311
+#: ../src/itdb_device.c:318
 msgid "Nano (2nd Gen.)"
 msgstr "Nano (2ᵃ gen.)"
 
-#: ../src/itdb_device.c:312
+#: ../src/itdb_device.c:319
 msgid "Nano Video (3rd Gen.)"
 msgstr "Nano Video (3ᵃ gen.)"
 
-#: ../src/itdb_device.c:313
+#: ../src/itdb_device.c:320
 msgid "Nano Video (4th Gen.)"
 msgstr "Nano Video (4ᵃ gen.)"
 
-#: ../src/itdb_device.c:314
+#: ../src/itdb_device.c:321
 msgid "Video (1st Gen.)"
 msgstr "Video (1ᵃ gen.)"
 
-#: ../src/itdb_device.c:315
+#: ../src/itdb_device.c:322
 msgid "Video (2nd Gen.)"
 msgstr "Video (2ᵃ gen.)"
 
-#: ../src/itdb_device.c:316
-#: ../src/itdb_device.c:317
+#: ../src/itdb_device.c:323 ../src/itdb_device.c:324
 msgid "Classic"
 msgstr "Classic"
 
-#: ../src/itdb_device.c:318
+#: ../src/itdb_device.c:325
 msgid "Touch"
 msgstr "Touch"
 
-#: ../src/itdb_device.c:319
+#: ../src/itdb_device.c:326
 msgid "iPhone"
 msgstr "iPhone"
 
-#: ../src/itdb_device.c:320
-#: ../src/itdb_device.c:321
+#: ../src/itdb_device.c:327 ../src/itdb_device.c:328
 msgid "Unused"
 msgstr "Non usato"
 
-#: ../src/itdb_device.c:874
+#: ../src/itdb_device.c:928
 #, c-format
 msgid "Could not open '%s' for writing."
 msgstr "Impossibile aprire '%s' in scrittura."
 
-#: ../src/itdb_device.c:883
+#: ../src/itdb_device.c:937
 #, c-format
 msgid "Device directory does not exist."
 msgstr "La directory del dispositivo non esiste."
 
-#: ../src/itdb_itunesdb.c:462
+#: ../src/itdb_itunesdb.c:507
 #, c-format
 msgid "Illegal seek to offset %ld (length %ld) in file '%s'."
 msgstr "Spostamento non ammesso all'offset %ld (lunghezza %ld) nel file '%s'."
 
-#: ../src/itdb_itunesdb.c:915
+#: ../src/itdb_itunesdb.c:910
 #, c-format
 msgid "Not a Play Counts file: '%s' (missing mhdp header)."
 msgstr "Non è un file conta riproduzioni: '%s' (manca l'intestazione mhdp)."
 
-#: ../src/itdb_itunesdb.c:930
+#: ../src/itdb_itunesdb.c:925
 #, c-format
 msgid "Play Counts file ('%s'): header length smaller than expected (%d<96)."
-msgstr "File conta riproduzioni ('%s'): lunghezza dell'intestazione più piccola di quanto previsto (%d<96)."
+msgstr ""
+"File conta riproduzioni ('%s'): lunghezza dell'intestazione più piccola di "
+"quanto previsto (%d<96)."
 
-#: ../src/itdb_itunesdb.c:944
+#: ../src/itdb_itunesdb.c:939
 #, c-format
 msgid "Play Counts file ('%s'): entry length smaller than expected (%d<12)."
-msgstr "File conta riproduzioni ('%s'): lunghezza della voce più piccola di quanto previsto (%d<12)."
+msgstr ""
+"File conta riproduzioni ('%s'): lunghezza della voce più piccola di quanto "
+"previsto (%d<12)."
 
-#: ../src/itdb_itunesdb.c:1019
+#: ../src/itdb_itunesdb.c:1014
 #, c-format
 msgid "iTunesStats file ('%s'): entry length smaller than expected (%d<18)."
-msgstr "File iTunesStats ('%s'): lunghezza della voce più piccola di quanto previsto (%d<18)."
+msgstr ""
+"File iTunesStats ('%s'): lunghezza della voce più piccola di quanto previsto "
+"(%d<18)."
 
-#: ../src/itdb_itunesdb.c:1338
+#: ../src/itdb_itunesdb.c:1333
 #, c-format
 msgid "iTunesDB corrupt: no MHOD at offset %ld in file '%s'."
 msgstr "iTunesDB corrotto: nessun MHOD all'offset %ld nel file '%s'."
 
-#: ../src/itdb_itunesdb.c:1524
+#: ../src/itdb_itunesdb.c:1519
 #, c-format
 msgid "Unknown smart rule action at %ld: %x. Trying to continue.\n"
-msgstr "Azione «smart rule» sconosciuta alla posizione %ld: %x. Si prova a continuare.\n"
+msgstr ""
+"Azione «smart rule» sconosciuta alla posizione %ld: %x. Si prova a "
+"continuare.\n"
 
-#: ../src/itdb_itunesdb.c:1555
+#: ../src/itdb_itunesdb.c:1550
 #, c-format
-msgid "Length of smart playlist rule field (%d) not as expected. Trying to continue anyhow.\n"
-msgstr "La lunghezza del campo della regola della scaletta intelligente (%d) non è come previsto. Si prova a continuare comunque.\n"
+msgid ""
+"Length of smart playlist rule field (%d) not as expected. Trying to continue "
+"anyhow.\n"
+msgstr ""
+"La lunghezza del campo della regola della scaletta intelligente (%d) non è "
+"come previsto. Si prova a continuare comunque.\n"
 
-#: ../src/itdb_itunesdb.c:1598
+#: ../src/itdb_itunesdb.c:1593
 #, c-format
 msgid "iTunesDB corrupt: no SLst at offset %ld in file '%s'."
 msgstr "iTunesDB corrotto: nessun SLst MHOD all'offset %ld nel file '%s'."
 
-#: ../src/itdb_itunesdb.c:1611
+#: ../src/itdb_itunesdb.c:1606
 #, c-format
 msgid ""
 "Encountered unknown MHOD type (%d) while parsing the iTunesDB. Ignoring.\n"
 "\n"
 msgstr ""
-"Incontrato un tipo MHOD sconosciuto (%d) durante l'interpretazione di iTunesDB. Ignorato.\n"
+"Incontrato un tipo MHOD sconosciuto (%d) durante l'interpretazione di "
+"iTunesDB. Ignorato.\n"
 "\n"
 
-#: ../src/itdb_itunesdb.c:1691
+#: ../src/itdb_itunesdb.c:1689
 #, c-format
 msgid "iTunesDB corrupt: hunk length 0 for hunk at %ld in file '%s'."
-msgstr "iTunesDB corrotto: hunk di lunghezza 0 per l'hunk alla posizione %ld nel file '%s'."
+msgstr ""
+"iTunesDB corrotto: hunk di lunghezza 0 per l'hunk alla posizione %ld nel "
+"file '%s'."
 
-#: ../src/itdb_itunesdb.c:1704
+#: ../src/itdb_itunesdb.c:1702
 #, c-format
-msgid "iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
-msgstr "iTunesDB corrotto: nessuna sezione '%s' trovata nella sezione '%s' che inizia alla posizione %ld."
+msgid ""
+"iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
+msgstr ""
+"iTunesDB corrotto: nessuna sezione '%s' trovata nella sezione '%s' che "
+"inizia alla posizione %ld."
 
-#: ../src/itdb_itunesdb.c:1718
+#: ../src/itdb_itunesdb.c:1716
 #, c-format
-msgid "header length of '%s' smaller than expected (%d < %d) at offset %ld in file '%s'."
-msgstr "la lunghezza dell'intestazione di '%s' più piccola di quanto previsto (%d < %d) alla posizione %ld nel file '%s'."
+msgid ""
+"header length of '%s' smaller than expected (%d < %d) at offset %ld in file "
+"'%s'."
+msgstr ""
+"la lunghezza dell'intestazione di '%s' più piccola di quanto previsto (%d < %"
+"d) alla posizione %ld nel file '%s'."
 
-#: ../src/itdb_itunesdb.c:1803
+#: ../src/itdb_itunesdb.c:1801
 #, c-format
 msgid "Not a iTunesDB: '%s' (missing mhdb header)."
 msgstr "Non è un file iTunesDB: '%s' (manca l'intestazione mhdb)."
 
-#: ../src/itdb_itunesdb.c:1820
+#: ../src/itdb_itunesdb.c:1818
 #, c-format
-msgid "iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). Aborting."
-msgstr "iTunesDB ('%s'): lunghezza dell'intestazione dell'hunk mhsd più piccola di quanto previsto (%d<32). Interruzione."
+msgid ""
+"iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). "
+"Aborting."
+msgstr ""
+"iTunesDB ('%s'): lunghezza dell'intestazione dell'hunk mhsd più piccola di "
+"quanto previsto (%d<32). Interruzione."
 
-#: ../src/itdb_itunesdb.c:1841
+#: ../src/itdb_itunesdb.c:1839
 #, c-format
 msgid "iTunesDB '%s' corrupt: mhsd expected at %ld."
 msgstr "iTunesDB '%s' corrotto: mhsd previsto alla posizione %ld."
 
-#: ../src/itdb_itunesdb.c:1958
+#: ../src/itdb_itunesdb.c:1944
 #, c-format
 msgid "Number of MHODs in mhip at %ld inconsistent in file '%s'."
-msgstr "Il numero di MHOD nel mhip alla posizione %ld nel file '%s' è incompatibile."
+msgstr ""
+"Il numero di MHOD nel mhip alla posizione %ld nel file '%s' è incompatibile."
 
-#: ../src/itdb_itunesdb.c:1976
+#: ../src/itdb_itunesdb.c:2121
 #, c-format
-msgid "Itdb_Track ID '%d' not found.\n"
-msgstr "itDB_Track ID '%d' non trovato.\n"
-
-#: ../src/itdb_itunesdb.c:2146
-#, c-format
 msgid "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
-msgstr "Il numero di MHOD nel mhyp alla posizione %ld nel file '%s' è incompatibile."
+msgstr ""
+"Il numero di MHOD nel mhyp alla posizione %ld nel file '%s' è incompatibile."
 
 # L'interfaccia italiana dell'iPod usa "Playlist"
-#: ../src/itdb_itunesdb.c:2156
+#: ../src/itdb_itunesdb.c:2131
 msgid "Master-PL"
 msgstr "Playlist principale"
 
-#: ../src/itdb_itunesdb.c:2160
+#: ../src/itdb_itunesdb.c:2135
 msgid "Podcasts"
 msgstr "Podcast"
 
-#: ../src/itdb_itunesdb.c:2162
+#: ../src/itdb_itunesdb.c:2137
 msgid "Playlist"
 msgstr "Playlist"
 
-#: ../src/itdb_itunesdb.c:2184
+#: ../src/itdb_itunesdb.c:2159
 #, c-format
-msgid "iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %ld in file '%s'."
-msgstr "iTunesDB corrotto: il numero di sezioni mhip è incompatibile nel mhyp che inizia alla posizione %ld nel file '%s'."
+msgid ""
+"iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %"
+"ld in file '%s'."
+msgstr ""
+"iTunesDB corrotto: il numero di sezioni mhip è incompatibile nel mhyp che "
+"inizia alla posizione %ld nel file '%s'."
 
+#: ../src/itdb_itunesdb.c:2180
+#, c-format
+msgid "Itdb_Track ID '%d' not found.\n"
+msgstr "itDB_Track ID '%d' non trovato.\n"
+
 # L'interfaccia italiana dell'iPod usa solo "On-The-Go"
-#: ../src/itdb_itunesdb.c:2527
+#: ../src/itdb_itunesdb.c:2524
 msgid "OTG Playlist"
 msgstr "Playlist OTG"
 
-#: ../src/itdb_itunesdb.c:2545
+#: ../src/itdb_itunesdb.c:2542
 #, c-format
 msgid "Not a OTG playlist file: '%s' (missing mhpo header)."
 msgstr "Non è un file di playlist OTG: '%s' (manca l'intestazione mhpo)."
 
-#: ../src/itdb_itunesdb.c:2559
+#: ../src/itdb_itunesdb.c:2556
 #, c-format
 msgid "OTG playlist file ('%s'): header length smaller than expected (%d<20)."
-msgstr "File di playlist OTG ('%s'): la lunghezza dell'intestazione è più piccola di quanto previsto (%d<20)."
+msgstr ""
+"File di playlist OTG ('%s'): la lunghezza dell'intestazione è più piccola di "
+"quanto previsto (%d<20)."
 
-#: ../src/itdb_itunesdb.c:2571
+#: ../src/itdb_itunesdb.c:2568
 #, c-format
 msgid "OTG playlist file ('%s'): entry length smaller than expected (%d<4)."
-msgstr "File di playlist OTG ('%s'): la lunghezza della voce è più piccola di quanto previsto (%d<4)."
+msgstr ""
+"File di playlist OTG ('%s'): la lunghezza della voce è più piccola di quanto "
+"previsto (%d<4)."
 
-#: ../src/itdb_itunesdb.c:2606
+#: ../src/itdb_itunesdb.c:2603
 #, c-format
 msgid "OTG playlist file '%s': reference to non-existent track (%d)."
 msgstr "Playlist OTG '%s': riferimento ad una traccia non esistente (%d)."
 
-#: ../src/itdb_itunesdb.c:2651
+#: ../src/itdb_itunesdb.c:2648
 #, c-format
 msgid "OTG Playlist %d"
 msgstr "Playlist OTG %d"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2719
-msgid "iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to continue.\n"
-msgstr "iTunesDB corrotto: il numero di tracce (hunk di tipo mhit) è incompatibile. Provo a continuare.\n"
+#: ../src/itdb_itunesdb.c:2716
+msgid ""
+"iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to "
+"continue.\n"
+msgstr ""
+"iTunesDB corrotto: il numero di tracce (hunk di tipo mhit) è incompatibile. "
+"Provo a continuare.\n"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2782
-msgid "iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. Trying to continue.\n"
-msgstr "iTunesDB è probabilmente corrotto: il numero di playlist (hunk di tipo mhyp) è incompatibile. Provo a continuare.\n"
+#: ../src/itdb_itunesdb.c:2779
+msgid ""
+"iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. "
+"Trying to continue.\n"
+msgstr ""
+"iTunesDB è probabilmente corrotto: il numero di playlist (hunk di tipo mhyp) "
+"è incompatibile. Provo a continuare.\n"
 
-#: ../src/itdb_itunesdb.c:2829
+#: ../src/itdb_itunesdb.c:2826
 #, c-format
-msgid "iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section found)"
-msgstr "iTunesDB '%s' corrotto: impossibile trovare la lista delle tracce (nessuna sezione mhsd di tipo 1 è stata trovata)"
+msgid ""
+"iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section "
+"found)"
+msgstr ""
+"iTunesDB '%s' corrotto: impossibile trovare la lista delle tracce (nessuna "
+"sezione mhsd di tipo 1 è stata trovata)"
 
-#: ../src/itdb_itunesdb.c:2858
+#: ../src/itdb_itunesdb.c:2855
 #, c-format
-msgid "iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 sections found)"
-msgstr "iTunesDB '%s' corrotto: impossibile trovare delle playlist (nessuna sezione mhsd di tipo 2 o di tipo 3 è stata trovata)"
+msgid ""
+"iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 "
+"sections found)"
+msgstr ""
+"iTunesDB '%s' corrotto: impossibile trovare delle playlist (nessuna sezione "
+"mhsd di tipo 2 o di tipo 3 è stata trovata)"
 
-#: ../src/itdb_itunesdb.c:2880
+#: ../src/itdb_itunesdb.c:2877
 #, c-format
 msgid "iTunes directory not found: '%s' (or similar)."
 msgstr "Directory di iTunes non trovata: '%s' (o simile)."
 
-#: ../src/itdb_itunesdb.c:2897
+#: ../src/itdb_itunesdb.c:2894
 #, c-format
 msgid "Music directory not found: '%s' (or similar)."
 msgstr "Directory della musica non trovata: '%s' (o simile)."
 
-#: ../src/itdb_itunesdb.c:2915
+#: ../src/itdb_itunesdb.c:2912
 #, c-format
 msgid "Control directory not found: '%s' (or similar)."
 msgstr "Directory di controllo non trovata: '%s' (o simile)."
 
-#: ../src/itdb_itunesdb.c:3036
+#: ../src/itdb_itunesdb.c:3033
 #, c-format
 msgid "File not found: '%s'."
 msgstr "File non trovato: '%s'."
 
-#: ../src/itdb_itunesdb.c:5410
+#: ../src/itdb_itunesdb.c:5533
 #, c-format
 msgid "Path not found: '%s' (or similar)."
 msgstr "Percorso non trovato: '%s' (o simile)."
 
-#: ../src/itdb_itunesdb.c:5616
+#: ../src/itdb_itunesdb.c:5742
 #, c-format
 msgid "Error renaming '%s' to '%s' (%s)."
 msgstr "Errore rinominando '%s' in '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5633
-#: ../src/itdb_itunesdb.c:5650
+#: ../src/itdb_itunesdb.c:5759 ../src/itdb_itunesdb.c:5776
+#: ../src/itdb_itunesdb.c:5793
 #, c-format
 msgid "Error removing '%s' (%s)."
 msgstr "Errore nella rimozione di '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5812
-#: ../src/itdb_itunesdb.c:5985
+#: ../src/itdb_itunesdb.c:5960 ../src/itdb_itunesdb.c:6133
 #, c-format
 msgid "Mountpoint not set."
 msgstr "Punto di mount non impostato."
 
-#: ../src/itdb_itunesdb.c:5852
+#: ../src/itdb_itunesdb.c:6000
 #, c-format
 msgid "No 'F..' directories found in '%s'."
 msgstr "Nessuna directory 'F..' trovata in '%s'."
 
-#: ../src/itdb_itunesdb.c:5873
+#: ../src/itdb_itunesdb.c:6021
 #, c-format
 msgid "Path not found: '%s'."
 msgstr "Percorso non trovato: '%s'."
 
-#: ../src/itdb_itunesdb.c:5994
+#: ../src/itdb_itunesdb.c:6142
 #, c-format
 msgid "'%s' could not be accessed (%s)."
 msgstr "Impossibile accedere a '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6004
+#: ../src/itdb_itunesdb.c:6152
 #, c-format
-msgid "Destination file '%s' does not appear to be on the iPod mounted at '%s'."
-msgstr "Il file di destinazione '%s' sembra che non sia sull'iPod montato in '%s'."
+msgid ""
+"Destination file '%s' does not appear to be on the iPod mounted at '%s'."
+msgstr ""
+"Il file di destinazione '%s' sembra che non sia sull'iPod montato in '%s'."
 
-#: ../src/itdb_itunesdb.c:6212
+#: ../src/itdb_itunesdb.c:6360
 #, c-format
 msgid "Error opening '%s' for reading (%s)."
 msgstr "Errore nell'apertura in lettura di '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6224
+#: ../src/itdb_itunesdb.c:6372
 #, c-format
 msgid "Error opening '%s' for writing (%s)."
 msgstr "Errore nell'apertura in scrittura di '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6240
+#: ../src/itdb_itunesdb.c:6388
 #, c-format
 msgid "Error while reading from '%s' (%s)."
 msgstr "Errore nella lettura da '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6255
+#: ../src/itdb_itunesdb.c:6403
 #, c-format
 msgid "Error while writing to '%s' (%s)."
 msgstr "Errore nella scrittura su '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6268
-#: ../src/itdb_itunesdb.c:6278
+#: ../src/itdb_itunesdb.c:6416 ../src/itdb_itunesdb.c:6426
 #, c-format
 msgid "Error when closing '%s' (%s)."
 msgstr "Errore nella chiusura di '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6702
+#: ../src/itdb_itunesdb.c:6856
 msgid "iPod"
 msgstr "iPod"
 
-#: ../src/itdb_itunesdb.c:7024
+#: ../src/itdb_itunesdb.c:7178
 #, c-format
 msgid "Problem creating iPod directory or file: '%s'."
 msgstr "Problema nel creare una directory o un file sull'iPod: '%s'."
@@ -588,20 +639,26 @@
 msgid "Photos directory not found: '%s' (or similar)."
 msgstr "Directory delle foto non trovata: '%s' (o simile)."
 
-#: ../src/itdb_photoalbum.c:266
-#: ../src/itdb_photoalbum.c:460
+#: ../src/itdb_photoalbum.c:266 ../src/itdb_photoalbum.c:460
 msgid "Photo Library"
 msgstr "Album fotografico"
 
 #: ../src/itdb_photoalbum.c:386
 #, c-format
 msgid "You need to specify the iPod model used before photos can be added."
-msgstr "È necessario specificare il modello di iPod prima di poter aggiungere delle fotografie."
+msgstr ""
+"È necessario specificare il modello di iPod prima di poter aggiungere delle "
+"fotografie."
 
 #: ../src/itdb_photoalbum.c:407
 #, c-format
-msgid "Your iPod does not seem to support photos. Maybe you need to specify the correct iPod model number? It is currently set to 'x%s' (%s/%s)."
-msgstr "L'iPod in uso non gestisce le fotografie. È possibile che si debba specificare il numero esatto del modello di iPod. Ora è impostato come 'x%s' (%s/%s)."
+msgid ""
+"Your iPod does not seem to support photos. Maybe you need to specify the "
+"correct iPod model number? It is currently set to 'x%s' (%s/%s)."
+msgstr ""
+"L'iPod in uso non gestisce le fotografie. È possibile che si debba "
+"specificare il numero esatto del modello di iPod. Ora è impostato come 'x%"
+"s' (%s/%s)."
 
 #: ../src/itdb_photoalbum.c:419
 #, c-format
@@ -610,19 +667,27 @@
 
 #: ../src/itdb_photoalbum.c:448
 #, c-format
-msgid "Unexpected error in itdb_photodb_add_photo_internal() while adding photo, please report."
-msgstr "Errore inatteso in itdb_photodb_add_photo_internal() durante l'aggiunta di una fotografia, si invii una segnalazione."
+msgid ""
+"Unexpected error in itdb_photodb_add_photo_internal() while adding photo, "
+"please report."
+msgstr ""
+"Errore inatteso in itdb_photodb_add_photo_internal() durante l'aggiunta di "
+"una fotografia, si invii una segnalazione."
 
 #: ../src/itdb_photoalbum.c:468
 #, c-format
-msgid "Library compiled without gdk-pixbuf support. Picture support is disabled."
-msgstr "La libreria è stata compilata senza il supporto per gdk-pixbuf. Il supporto per le immagini è disabilitato."
+msgid ""
+"Library compiled without gdk-pixbuf support. Picture support is disabled."
+msgstr ""
+"La libreria è stata compilata senza il supporto per gdk-pixbuf. Il supporto "
+"per le immagini è disabilitato."
 
 #. New action!
 #: ../src/itdb_playlist.c:78
 #, c-format
 msgid "Unknown action (%d) in smart playlist will be ignored.\n"
-msgstr "L'azione sconosciuta (%d) nella playlist intelligente verrà ignorata.\n"
+msgstr ""
+"L'azione sconosciuta (%d) nella playlist intelligente verrà ignorata.\n"
 
 #: ../src/itdb_thumb.c:326
 #, c-format
@@ -639,14 +704,18 @@
 msgid ""
 "Usage to add photos:\n"
 "  %s add <mountpoint> <albumname> [<filename(s)>]\n"
-"  <albumname> should be set to 'NULL' to add photos to the master photo album\n"
-"  (Photo Library) only. If you don't specify any filenames an empty album will\n"
+"  <albumname> should be set to 'NULL' to add photos to the master photo "
+"album\n"
+"  (Photo Library) only. If you don't specify any filenames an empty album "
+"will\n"
 "  be created.\n"
 msgstr ""
 "Uso per aggiungere fotografie:\n"
 "  %s add <puntodimount> <nomealbum> [<nomifile>]\n"
-"  <nomealbum> deve essere impostato a 'NULL' per aggiungere le fotografie solamente all'album di fotografie principale\n"
-"  (Album fotografico). Se non si specificano nomi di file verrà creato un album vuoto.\n"
+"  <nomealbum> deve essere impostato a 'NULL' per aggiungere le fotografie "
+"solamente all'album di fotografie principale\n"
+"  (Album fotografico). Se non si specificano nomi di file verrà creato un "
+"album vuoto.\n"
 
 #: ../tests/test-photos.c:42
 #, c-format
@@ -681,7 +750,8 @@
 "  <nomealbum> deve essere impostato a 'NULL' per rimuovere completamente\n"
 "  le fotografie dall'iPod. Se non si specifica un ID invece sarà rimosso\n"
 "  l'album.\n"
-"  ATTENZIONE: gli ID possono cambiare durante la scrittura del file PhotoDB.\n"
+"  ATTENZIONE: gli ID possono cambiare durante la scrittura del file "
+"PhotoDB.\n"
 
 #: ../tests/test-photos.c:119
 #, c-format
@@ -698,24 +768,20 @@
 msgid "Error: '%s' is not a directory\n"
 msgstr "Errore: '%s' non è una directory\n"
 
-#: ../tests/test-photos.c:143
-#: ../tests/test-photos.c:177
+#: ../tests/test-photos.c:143 ../tests/test-photos.c:177
 #: ../tests/test-photos.c:306
 #, c-format
 msgid "Error reading iPod photo database (%s).\n"
 msgstr "Errore durante la lettura del database di fotografie dell'iPod (%s).\n"
 
-#: ../tests/test-photos.c:149
-#: ../tests/test-photos.c:183
+#: ../tests/test-photos.c:149 ../tests/test-photos.c:183
 #: ../tests/test-photos.c:313
 #, c-format
 msgid "Error reading iPod photo database.\n"
 msgstr "Errore durante la lettura del database di fotografie dell'iPod.\n"
 
-#: ../tests/test-photos.c:167
-#: ../tests/test-photos.c:226
-#: ../tests/test-photos.c:296
-#: ../tests/test-photos.c:379
+#: ../tests/test-photos.c:167 ../tests/test-photos.c:226
+#: ../tests/test-photos.c:296 ../tests/test-photos.c:379
 #, c-format
 msgid "Insufficient number of command line arguments.\n"
 msgstr "Numero insufficiente di argomenti sulla riga di comando.\n"
@@ -740,13 +806,18 @@
 
 #: ../tests/test-photos.c:242
 #, c-format
-msgid "Error reading iPod photo database, will attempt to create a new database\n"
-msgstr "Errore durante la lettura del database di fotografie dell'iPod, verrà fatto un tentativo per creare un nuovo database.\n"
+msgid ""
+"Error reading iPod photo database, will attempt to create a new database\n"
+msgstr ""
+"Errore durante la lettura del database di fotografie dell'iPod, verrà fatto "
+"un tentativo per creare un nuovo database.\n"
 
 #: ../tests/test-photos.c:267
 #, c-format
 msgid "Error adding photo (%s) to photo database: %s\n"
-msgstr "Errore durante l'aggiunta della fotografia (%s) al database delle fotografie: %s.\n"
+msgstr ""
+"Errore durante l'aggiunta della fotografia (%s) al database delle "
+"fotografie: %s.\n"
 
 #: ../tests/test-photos.c:324
 #, c-format
@@ -756,12 +827,14 @@
 #: ../tests/test-photos.c:336
 #, c-format
 msgid "Cannot remove Photo Library playlist. Aborting.\n"
-msgstr "Impossibile rimuovere la playlist dell'album fotografico. Interruzione.\n"
+msgstr ""
+"Impossibile rimuovere la playlist dell'album fotografico. Interruzione.\n"
 
 #: ../tests/test-photos.c:357
 #, c-format
 msgid "Warning: could not find photo with ID <%d>. Skipping...\n"
-msgstr "Attenzione: impossibile trovare la fotografia con ID <%d>. Saltata...\n"
+msgstr ""
+"Attenzione: impossibile trovare la fotografia con ID <%d>. Saltata...\n"
 
 #: ../tests/test-photos.c:403
 #, c-format
@@ -778,6 +851,11 @@
 msgid "Error initialising iPod, unknown error\n"
 msgstr "Errore durante l'inizializzazione dell'iPod: errore sconosciuto\n"
 
+#: ../tools/ipod-time-sync.c:37
+#, fuzzy, c-format
+msgid "usage: %s <device> [timezone]\n"
+msgstr "Uso: %s <device> <punto_di_mount>\n"
+
 #: ../tools/read-sysinfoextended-sgutils.c:39
 #, c-format
 msgid "usage: %s <device> <mountpoint>\n"
@@ -803,3 +881,7 @@
 msgid "Couldn't write SysInfoExtended to %s"
 msgstr "Impossibile scrivere SysInfoExtended su %s"
 
+#~ msgid "Could not find artwork entry (mhii id: %u) for track (dbid: %s).\n"
+#~ msgstr ""
+#~ "Impossibile trovare la voce della copertina (id mhii: %u) per la traccia "
+#~ "(dbid: %s).\n"

Modified: libgpod/branches/upstream/current/po/ja.po
===================================================================
--- libgpod/branches/upstream/current/po/ja.po	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/po/ja.po	2009-06-19 20:28:03 UTC (rev 384)
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gtkpod 0.40\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-12-07 20:48-0500\n"
+"POT-Creation-Date: 2009-04-03 16:08-0400\n"
 "PO-Revision-Date: 2006-02-14 16:48+0900\n"
 "Last-Translator: Kentaro Fukuchi <fukuchi at users.sourceforge.net>\n"
 "Language-Team: n/a\n"
@@ -16,33 +16,28 @@
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=1; plural=0;\n"
 
-#: ../src/db-artwork-parser.c:156
+#: ../src/db-artwork-parser.c:140
 #, fuzzy, c-format
 msgid "Unexpected mhod string type: %d\n"
 msgstr "ͽ´ü¤»¤Ì mhod3 string type ¤Ç¤¹: %d\n"
 
-#: ../src/db-artwork-parser.c:476
+#: ../src/db-artwork-parser.c:460
 #, c-format
 msgid "Unexpected mhsd index: %d\n"
 msgstr "ͽ´ü¤»¤Ì mhsd index: %d\n"
 
-#: ../src/db-artwork-parser.c:522
+#: ../src/db-artwork-parser.c:540
 #, c-format
 msgid "Could not find corresponding track (dbid: %s) for artwork entry.\n"
 msgstr "¥¢¡¼¥È¥ï¡¼¥¯¤ËÂбþ¤¹¤ë¶Ê (dbid: %s) ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó.\n"
 
-#: ../src/db-artwork-parser.c:530
+#: ../src/db-artwork-parser.c:548
 #, c-format
 msgid "iTunesDB and ArtworkDB artwork sizes inconsistent (%d+%d != %d)\n"
 msgstr ""
 "iTunesDB Æâ¤Î¾ðÊó¤È ArtworkDB ¤Î¥¢¡¼¥È¥ï¡¼¥¯¤Î¥µ¥¤¥º¤¬°ìÃפ·¤Þ¤»¤ó (%d+%d != "
 "%d)\n"
 
-#: ../src/db-artwork-parser.c:566
-#, fuzzy, c-format
-msgid "Could not find artwork entry (mhii id: %u) for track (dbid: %s).\n"
-msgstr "¥¢¡¼¥È¥ï¡¼¥¯¤ËÂбþ¤¹¤ë¶Ê (dbid: %s) ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó.\n"
-
 #: ../src/db-image-parser.c:91
 #, fuzzy, c-format
 msgid "Unexpected image type in mhni: %d, offset: %d\n"
@@ -73,304 +68,304 @@
 "¥µ¥à¥Í¥¤¥ë¤ò¼èÆÀ¤Ç¤­¤Þ¤»¤ó (iPod ¤ÎÃæ¤Ë¤¢¤ëȦ¤Ç¤¹¤¬, ²èÁü¾ðÊ󤬸«¤Ä¤«¤ê¤Þ¤»"
 "¤ó): type: %d, filename: '%s'\n"
 
-#: ../src/itdb_device.c:256
+#: ../src/itdb_device.c:263
 msgid "Invalid"
 msgstr "°Û¾ï"
 
-#: ../src/itdb_device.c:257 ../src/itdb_device.c:298
+#: ../src/itdb_device.c:264 ../src/itdb_device.c:305
 msgid "Unknown"
 msgstr "ÉÔÌÀ"
 
-#: ../src/itdb_device.c:258
+#: ../src/itdb_device.c:265
 msgid "Color"
 msgstr ""
 
-#: ../src/itdb_device.c:259
+#: ../src/itdb_device.c:266
 msgid "Color U2"
 msgstr ""
 
-#: ../src/itdb_device.c:260
+#: ../src/itdb_device.c:267
 msgid "Grayscale"
 msgstr ""
 
-#: ../src/itdb_device.c:261
+#: ../src/itdb_device.c:268
 msgid "Grayscale U2"
 msgstr ""
 
-#: ../src/itdb_device.c:262
+#: ../src/itdb_device.c:269
 msgid "Mini (Silver)"
 msgstr "Mini (¶ä)"
 
-#: ../src/itdb_device.c:263
+#: ../src/itdb_device.c:270
 msgid "Mini (Blue)"
 msgstr "Mini (ÀÄ)"
 
-#: ../src/itdb_device.c:264
+#: ../src/itdb_device.c:271
 msgid "Mini (Pink)"
 msgstr "Mini (¥Ô¥ó¥¯)"
 
-#: ../src/itdb_device.c:265
+#: ../src/itdb_device.c:272
 msgid "Mini (Green)"
 msgstr "Mini (ÎÐ)"
 
-#: ../src/itdb_device.c:266
+#: ../src/itdb_device.c:273
 msgid "Mini (Gold)"
 msgstr "Mini (¶â)"
 
-#: ../src/itdb_device.c:267
+#: ../src/itdb_device.c:274
 msgid "Shuffle"
 msgstr ""
 
-#: ../src/itdb_device.c:268
+#: ../src/itdb_device.c:275
 msgid "Nano (White)"
 msgstr "Nano (Çò)"
 
-#: ../src/itdb_device.c:269
+#: ../src/itdb_device.c:276
 msgid "Nano (Black)"
 msgstr "Nano (¹õ)"
 
-#: ../src/itdb_device.c:270
+#: ../src/itdb_device.c:277
 msgid "Video (White)"
 msgstr "Video (Çò)"
 
-#: ../src/itdb_device.c:271
+#: ../src/itdb_device.c:278
 msgid "Video (Black)"
 msgstr "Video (¹õ)"
 
-#: ../src/itdb_device.c:272
+#: ../src/itdb_device.c:279
 msgid "Mobile (1)"
 msgstr ""
 
-#: ../src/itdb_device.c:273
+#: ../src/itdb_device.c:280
 msgid "Video U2"
 msgstr ""
 
-#: ../src/itdb_device.c:274
+#: ../src/itdb_device.c:281
 msgid "Nano (Silver)"
 msgstr "Nano (¶ä)"
 
-#: ../src/itdb_device.c:275
+#: ../src/itdb_device.c:282
 msgid "Nano (Blue)"
 msgstr "Nano (ÀÄ)"
 
-#: ../src/itdb_device.c:276
+#: ../src/itdb_device.c:283
 msgid "Nano (Green)"
 msgstr "Nano (ÎÐ)"
 
-#: ../src/itdb_device.c:277
+#: ../src/itdb_device.c:284
 msgid "Nano (Pink)"
 msgstr "Nano (¥Ô¥ó¥¯)"
 
-#: ../src/itdb_device.c:278
+#: ../src/itdb_device.c:285
 #, fuzzy
 msgid "Nano (Red)"
 msgstr "Nano (ÀÄ)"
 
-#: ../src/itdb_device.c:279
+#: ../src/itdb_device.c:286
 #, fuzzy
 msgid "Nano (Yellow)"
 msgstr "Nano (ÀÄ)"
 
-#: ../src/itdb_device.c:280
+#: ../src/itdb_device.c:287
 #, fuzzy
 msgid "Nano (Purple)"
 msgstr "Nano (ÀÄ)"
 
-#: ../src/itdb_device.c:281
+#: ../src/itdb_device.c:288
 #, fuzzy
 msgid "Nano (Orange)"
 msgstr "Nano (ÎÐ)"
 
-#: ../src/itdb_device.c:282
+#: ../src/itdb_device.c:289
 msgid "iPhone (1)"
 msgstr ""
 
-#: ../src/itdb_device.c:283
+#: ../src/itdb_device.c:290
 #, fuzzy
 msgid "Shuffle (Silver)"
 msgstr "Mini (¶ä)"
 
-#: ../src/itdb_device.c:284
+#: ../src/itdb_device.c:291
 msgid "Shuffle (Pink)"
 msgstr ""
 
-#: ../src/itdb_device.c:285
+#: ../src/itdb_device.c:292
 msgid "Shuffle (Blue)"
 msgstr ""
 
-#: ../src/itdb_device.c:286
+#: ../src/itdb_device.c:293
 msgid "Shuffle (Green)"
 msgstr ""
 
-#: ../src/itdb_device.c:287
+#: ../src/itdb_device.c:294
 msgid "Shuffle (Orange)"
 msgstr ""
 
-#: ../src/itdb_device.c:288
+#: ../src/itdb_device.c:295
 msgid "Shuffle (Purple)"
 msgstr ""
 
-#: ../src/itdb_device.c:289
+#: ../src/itdb_device.c:296
 msgid "Shuffle (Red)"
 msgstr ""
 
-#: ../src/itdb_device.c:290
+#: ../src/itdb_device.c:297
 #, fuzzy
 msgid "Classic (Silver)"
 msgstr "Mini (¶ä)"
 
-#: ../src/itdb_device.c:291
+#: ../src/itdb_device.c:298
 #, fuzzy
 msgid "Classic (Black)"
 msgstr "Nano (¹õ)"
 
-#: ../src/itdb_device.c:292
+#: ../src/itdb_device.c:299
 #, fuzzy
 msgid "Touch (Black)"
 msgstr "Nano (¹õ)"
 
-#: ../src/itdb_device.c:299
+#: ../src/itdb_device.c:306
 msgid "Regular (1st Gen.)"
 msgstr ""
 
-#: ../src/itdb_device.c:300
+#: ../src/itdb_device.c:307
 msgid "Regular (2nd Gen.)"
 msgstr ""
 
-#: ../src/itdb_device.c:301
+#: ../src/itdb_device.c:308
 msgid "Regular (3rd Gen.)"
 msgstr ""
 
-#: ../src/itdb_device.c:302
+#: ../src/itdb_device.c:309
 msgid "Regular (4th Gen.)"
 msgstr ""
 
-#: ../src/itdb_device.c:303
+#: ../src/itdb_device.c:310
 msgid "Photo"
 msgstr ""
 
-#: ../src/itdb_device.c:304
+#: ../src/itdb_device.c:311
 #, fuzzy
 msgid "Mobile Phones"
 msgstr "·ÈÂÓÅÅÏÃ"
 
-#: ../src/itdb_device.c:305
+#: ../src/itdb_device.c:312
 #, fuzzy
 msgid "Mini (1st Gen.)"
 msgstr "Mini (ÎÐ)"
 
-#: ../src/itdb_device.c:306
+#: ../src/itdb_device.c:313
 #, fuzzy
 msgid "Mini (2nd Gen.)"
 msgstr "Mini (ÎÐ)"
 
-#: ../src/itdb_device.c:307
+#: ../src/itdb_device.c:314
 msgid "Shuffle (1st Gen.)"
 msgstr ""
 
-#: ../src/itdb_device.c:308
+#: ../src/itdb_device.c:315
 msgid "Shuffle (2nd Gen.)"
 msgstr ""
 
-#: ../src/itdb_device.c:309
+#: ../src/itdb_device.c:316
 msgid "Shuffle (3rd Gen.)"
 msgstr ""
 
-#: ../src/itdb_device.c:310
+#: ../src/itdb_device.c:317
 #, fuzzy
 msgid "Nano (1st Gen.)"
 msgstr "Nano (ÎÐ)"
 
-#: ../src/itdb_device.c:311
+#: ../src/itdb_device.c:318
 #, fuzzy
 msgid "Nano (2nd Gen.)"
 msgstr "Nano (ÎÐ)"
 
-#: ../src/itdb_device.c:312
+#: ../src/itdb_device.c:319
 #, fuzzy
 msgid "Nano Video (3rd Gen.)"
 msgstr "Nano (ÎÐ)"
 
-#: ../src/itdb_device.c:313
+#: ../src/itdb_device.c:320
 #, fuzzy
 msgid "Nano Video (4th Gen.)"
 msgstr "Nano (ÎÐ)"
 
-#: ../src/itdb_device.c:314
+#: ../src/itdb_device.c:321
 #, fuzzy
 msgid "Video (1st Gen.)"
 msgstr "Video (Çò)"
 
-#: ../src/itdb_device.c:315
+#: ../src/itdb_device.c:322
 #, fuzzy
 msgid "Video (2nd Gen.)"
 msgstr "Video (Çò)"
 
-#: ../src/itdb_device.c:316 ../src/itdb_device.c:317
+#: ../src/itdb_device.c:323 ../src/itdb_device.c:324
 msgid "Classic"
 msgstr ""
 
-#: ../src/itdb_device.c:318
+#: ../src/itdb_device.c:325
 msgid "Touch"
 msgstr ""
 
-#: ../src/itdb_device.c:319
+#: ../src/itdb_device.c:326
 #, fuzzy
 msgid "iPhone"
 msgstr "·ÈÂÓÅÅÏÃ"
 
-#: ../src/itdb_device.c:320 ../src/itdb_device.c:321
+#: ../src/itdb_device.c:327 ../src/itdb_device.c:328
 msgid "Unused"
 msgstr ""
 
-#: ../src/itdb_device.c:874
+#: ../src/itdb_device.c:928
 #, c-format
 msgid "Could not open '%s' for writing."
 msgstr "'%s' ¤ò½ñ¤­¹þ¤ßÍѤ˳«¤¯¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó."
 
-#: ../src/itdb_device.c:883
+#: ../src/itdb_device.c:937
 #, c-format
 msgid "Device directory does not exist."
 msgstr "¥Ç¥Ð¥¤¥¹¥Ç¥£¥ì¥¯¥È¥ê¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó."
 
-#: ../src/itdb_itunesdb.c:462
+#: ../src/itdb_itunesdb.c:507
 #, c-format
 msgid "Illegal seek to offset %ld (length %ld) in file '%s'."
 msgstr "ÉÔÀµ¤Ê¥·¡¼¥¯: '%3$s', ¥ª¥Õ¥»¥Ã¥È %1$ld (Ťµ %2$ld)"
 
-#: ../src/itdb_itunesdb.c:915
+#: ../src/itdb_itunesdb.c:910
 #, c-format
 msgid "Not a Play Counts file: '%s' (missing mhdp header)."
 msgstr "ºÆÀ¸²ó¿ô¥Õ¥¡¥¤¥ë¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó: '%s' (mhdp ¥Ø¥Ã¥À¤¬Ìµ¤¤)"
 
-#: ../src/itdb_itunesdb.c:930
+#: ../src/itdb_itunesdb.c:925
 #, c-format
 msgid "Play Counts file ('%s'): header length smaller than expected (%d<96)."
 msgstr "ºÆÀ¸²ó¿ô¥Õ¥¡¥¤¥ë ('%s'): ¥Ø¥Ã¥À¤ÎŤµ¤¬Â­¤ê¤Þ¤»¤ó (%d<96)."
 
-#: ../src/itdb_itunesdb.c:944
+#: ../src/itdb_itunesdb.c:939
 #, c-format
 msgid "Play Counts file ('%s'): entry length smaller than expected (%d<12)."
 msgstr "ºÆÀ¸²ó¿ô¥Õ¥¡¥¤¥ë ('%s'): ¥¨¥ó¥È¥ê¤ÎŤµ¤¬Â­¤ê¤Þ¤»¤ó (%d<12)."
 
-#: ../src/itdb_itunesdb.c:1019
+#: ../src/itdb_itunesdb.c:1014
 #, c-format
 msgid "iTunesStats file ('%s'): entry length smaller than expected (%d<18)."
 msgstr "iTunesStats ¥Õ¥¡¥¤¥ë ('%s'): ¥¨¥ó¥È¥ê¤ÎŤµ¤¬Â­¤ê¤Þ¤»¤ó (%d<18)."
 
-#: ../src/itdb_itunesdb.c:1338
+#: ../src/itdb_itunesdb.c:1333
 #, c-format
 msgid "iTunesDB corrupt: no MHOD at offset %ld in file '%s'."
 msgstr ""
 "iTunesDB ¤¬²õ¤ì¤Æ¤¤¤Þ¤¹: MHOD ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó (¥Õ¥¡¥¤¥ë '%2$s', ¥ª¥Õ¥»¥Ã¥È %"
 "1$ld)."
 
-#: ../src/itdb_itunesdb.c:1524
+#: ../src/itdb_itunesdb.c:1519
 #, c-format
 msgid "Unknown smart rule action at %ld: %x. Trying to continue.\n"
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:1555
+#: ../src/itdb_itunesdb.c:1550
 #, c-format
 msgid ""
 "Length of smart playlist rule field (%d) not as expected. Trying to continue "
@@ -379,14 +374,14 @@
 "¥¹¥Þ¡¼¥È¥×¥ì¥¤¥ê¥¹¥È¤Î¥ë¡¼¥ë¤ÎŤµ (%d) ¤¬´üÂÔ¤µ¤ì¤ëŤµ¤È°Û¤Ê¤ê¤Þ¤¹. ½èÍý¤ò"
 "³¤±¤Þ¤¹.\n"
 
-#: ../src/itdb_itunesdb.c:1598
+#: ../src/itdb_itunesdb.c:1593
 #, c-format
 msgid "iTunesDB corrupt: no SLst at offset %ld in file '%s'."
 msgstr ""
 "iTunesDB ¤¬²õ¤ì¤Æ¤¤¤Þ¤¹: SLst ¤¬¸«ÉÕ¤«¤ê¤Þ¤»¤ó (¥Õ¥¡¥¤¥ë '%2$s', ¥ª¥Õ¥»¥Ã¥È %"
 "1$ld)."
 
-#: ../src/itdb_itunesdb.c:1611
+#: ../src/itdb_itunesdb.c:1606
 #, c-format
 msgid ""
 "Encountered unknown MHOD type (%d) while parsing the iTunesDB. Ignoring.\n"
@@ -396,14 +391,14 @@
 "¤¹.\n"
 "\n"
 
-#: ../src/itdb_itunesdb.c:1691
+#: ../src/itdb_itunesdb.c:1689
 #, c-format
 msgid "iTunesDB corrupt: hunk length 0 for hunk at %ld in file '%s'."
 msgstr ""
 "iTunesDB ¤¬²õ¤ì¤Æ¤¤¤Þ¤¹: hunk ¤ÎŤµ¤¬ 0 ¤Ç¤¹ (¥Õ¥¡¥¤¥ë '%2$s', ¥ª¥Õ¥»¥Ã¥È %1"
 "$ld)."
 
-#: ../src/itdb_itunesdb.c:1704
+#: ../src/itdb_itunesdb.c:1702
 #, c-format
 msgid ""
 "iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
@@ -411,7 +406,7 @@
 "iTunesDB ¤¬²õ¤ì¤Æ¤¤¤Þ¤¹: %3$ld ¤Î°ÌÃ֤ˤ¢¤ë¥»¥¯¥·¥ç¥ó '%2$s' ¤ÎÃæ¤Ë¥»¥¯¥·¥ç"
 "¥ó '%1$s' ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó."
 
-#: ../src/itdb_itunesdb.c:1718
+#: ../src/itdb_itunesdb.c:1716
 #, c-format
 msgid ""
 "header length of '%s' smaller than expected (%d < %d) at offset %ld in file "
@@ -420,53 +415,48 @@
 "'%1$s' ¤Î¥Ø¥Ã¥À¤ÎŤµ¤¬Â­¤ê¤Þ¤»¤ó (%2$d < %3$d) (¥Õ¥¡¥¤¥ë '%5$s', ¥ª¥Õ¥»¥Ã¥È "
 "%4$ld)."
 
-#: ../src/itdb_itunesdb.c:1803
+#: ../src/itdb_itunesdb.c:1801
 #, c-format
 msgid "Not a iTunesDB: '%s' (missing mhdb header)."
 msgstr "iTunesDB ¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó: '%s' (mhdb ¥Ø¥Ã¥À¤¬Ìµ¤¤)."
 
-#: ../src/itdb_itunesdb.c:1820
+#: ../src/itdb_itunesdb.c:1818
 #, c-format
 msgid ""
 "iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). "
 "Aborting."
 msgstr "iTunesDB ('%s'): mhsd ¤Î¥Ø¥Ã¥À¤ÎŤµ¤¬Â­¤ê¤Þ¤»¤ó (%d<32). Ãæ»ß¤·¤Þ¤¹."
 
-#: ../src/itdb_itunesdb.c:1841
+#: ../src/itdb_itunesdb.c:1839
 #, c-format
 msgid "iTunesDB '%s' corrupt: mhsd expected at %ld."
 msgstr "iTunesDB '%s' ¤¬²õ¤ì¤Æ¤¤¤Þ¤¹: mhsd ¤¬ %ld ¤Î°ÌÃ֤˸«¤Ä¤«¤ê¤Þ¤»¤ó."
 
-#: ../src/itdb_itunesdb.c:1958
+#: ../src/itdb_itunesdb.c:1944
 #, c-format
 msgid "Number of MHODs in mhip at %ld inconsistent in file '%s'."
 msgstr ""
 "mhip Ãæ¤Î MHOD ¤Î¿ô¤¬¿©¤¤°ã¤Ã¤Æ¤¤¤Þ¤¹ (¥Õ¥¡¥¤¥ë '%2$s', ¥ª¥Õ¥»¥Ã¥È %1$ld)."
 
-#: ../src/itdb_itunesdb.c:1976
+#: ../src/itdb_itunesdb.c:2121
 #, c-format
-msgid "Itdb_Track ID '%d' not found.\n"
-msgstr "Itdb_Track ID '%d' ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó.\n"
-
-#: ../src/itdb_itunesdb.c:2146
-#, c-format
 msgid "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
 msgstr ""
 "mhyp Ãæ¤Î MHOD ¤Î¿ô¤¬¿©¤¤°ã¤Ã¤Æ¤¤¤Þ¤¹ (¥Õ¥¡¥¤¥ë '%2$s', ¥ª¥Õ¥»¥Ã¥È %1$ld)."
 
-#: ../src/itdb_itunesdb.c:2156
+#: ../src/itdb_itunesdb.c:2131
 msgid "Master-PL"
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:2160
+#: ../src/itdb_itunesdb.c:2135
 msgid "Podcasts"
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:2162
+#: ../src/itdb_itunesdb.c:2137
 msgid "Playlist"
 msgstr "¥×¥ì¥¤¥ê¥¹¥È"
 
-#: ../src/itdb_itunesdb.c:2184
+#: ../src/itdb_itunesdb.c:2159
 #, c-format
 msgid ""
 "iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %"
@@ -475,38 +465,43 @@
 "iTunesDB ¤¬²õ¤ì¤Æ¤¤¤Þ¤¹: mhyp Ãæ¤Î mhip ¥»¥¯¥·¥ç¥ó¤Î¿ô¤¬¿©¤¤°ã¤Ã¤Æ¤¤¤Þ¤¹ "
 "(¥Õ¥¡¥¤¥ë '%2$s', ¥ª¥Õ¥»¥Ã¥È %1$ld)."
 
-#: ../src/itdb_itunesdb.c:2527
+#: ../src/itdb_itunesdb.c:2180
+#, c-format
+msgid "Itdb_Track ID '%d' not found.\n"
+msgstr "Itdb_Track ID '%d' ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó.\n"
+
+#: ../src/itdb_itunesdb.c:2524
 msgid "OTG Playlist"
 msgstr "OTG ¥×¥ì¥¤¥ê¥¹¥È"
 
-#: ../src/itdb_itunesdb.c:2545
+#: ../src/itdb_itunesdb.c:2542
 #, c-format
 msgid "Not a OTG playlist file: '%s' (missing mhpo header)."
 msgstr "OTG ¥×¥ì¥¤¥ê¥¹¥È¤Î¥Õ¥¡¥¤¥ë¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó: '%s' (mhpo ¥Ø¥Ã¥À¤¬Ìµ¤¤)."
 
-#: ../src/itdb_itunesdb.c:2559
+#: ../src/itdb_itunesdb.c:2556
 #, c-format
 msgid "OTG playlist file ('%s'): header length smaller than expected (%d<20)."
 msgstr "OTG ¥×¥ì¥¤¥ê¥¹¥È¥Õ¥¡¥¤¥ë ('%s'): ¥Ø¥Ã¥À¤ÎŤµ¤¬Â­¤ê¤Þ¤»¤ó (%d<20)."
 
-#: ../src/itdb_itunesdb.c:2571
+#: ../src/itdb_itunesdb.c:2568
 #, fuzzy, c-format
 msgid "OTG playlist file ('%s'): entry length smaller than expected (%d<4)."
 msgstr "OTG ¥×¥ì¥¤¥ê¥¹¥È¥Õ¥¡¥¤¥ë ('%s'): ¥¨¥ó¥È¥ê¤ÎŤµ¤¬Â­¤ê¤Þ¤»¤ó (%d<4)."
 
-#: ../src/itdb_itunesdb.c:2606
+#: ../src/itdb_itunesdb.c:2603
 #, c-format
 msgid "OTG playlist file '%s': reference to non-existent track (%d)."
 msgstr ""
 "OTG ¥×¥ì¥¤¥ê¥¹¥È¥Õ¥¡¥¤¥ë ('%s'): ¸ºß¤·¤Ê¤¤¶ÊÈÖ¹æ (%d) ¤Ø¤Î»²¾È¤¬¤¢¤ê¤Þ¤¹."
 
-#: ../src/itdb_itunesdb.c:2651
+#: ../src/itdb_itunesdb.c:2648
 #, c-format
 msgid "OTG Playlist %d"
 msgstr "OTG ¥×¥ì¥¤¥ê¥¹¥È %d"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2719
+#: ../src/itdb_itunesdb.c:2716
 msgid ""
 "iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to "
 "continue.\n"
@@ -515,7 +510,7 @@
 "¤¹.\n"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2782
+#: ../src/itdb_itunesdb.c:2779
 msgid ""
 "iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. "
 "Trying to continue.\n"
@@ -523,7 +518,7 @@
 "iTunesDB ¤¬Â¿Ê¬²õ¤ì¤Æ¤¤¤Þ¤¹: ¥×¥ì¥¤¥ê¥¹¥È¤Î¿ô (mhyp ¤Î¿ô) ¤¬¿©¤¤°ã¤Ã¤Æ¤¤¤Þ"
 "¤¹. ½èÍý¤ò³¤±¤Þ¤¹.\n"
 
-#: ../src/itdb_itunesdb.c:2829
+#: ../src/itdb_itunesdb.c:2826
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section "
@@ -532,7 +527,7 @@
 "iTunesDB '%s' ¤¬²õ¤ì¤Æ¤¤¤Þ¤¹: ¶Ê¥ê¥¹¥È¤¬¸«ÉÕ¤«¤ê¤Þ¤»¤ó. (mhsd ¥¿¥¤¥× 1 ¥»¥¯"
 "¥·¥ç¥ó¤¬¸«¤Ä¤«¤é¤Ê¤¤)"
 
-#: ../src/itdb_itunesdb.c:2858
+#: ../src/itdb_itunesdb.c:2855
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 "
@@ -541,97 +536,98 @@
 "iTunesDB '%s' ¤¬²õ¤ì¤Æ¤¤¤Þ¤¹: ¥×¥ì¥¤¥ê¥¹¥È¤¬¸«ÉÕ¤«¤ê¤Þ¤»¤ó. (mhsd ¥¿¥¤¥× 2 "
 "¤È ¥¿¥¤¥× 3 ¤Î¥»¥¯¥·¥ç¥ó¤¬¸«¤Ä¤«¤é¤Ê¤¤)"
 
-#: ../src/itdb_itunesdb.c:2880
+#: ../src/itdb_itunesdb.c:2877
 #, c-format
 msgid "iTunes directory not found: '%s' (or similar)."
 msgstr "iTunes ¥Ç¥£¥ì¥¯¥È¥ê¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó: '%s' (¤Ê¤É)."
 
-#: ../src/itdb_itunesdb.c:2897
+#: ../src/itdb_itunesdb.c:2894
 #, c-format
 msgid "Music directory not found: '%s' (or similar)."
 msgstr "Music ¥Ç¥£¥ì¥¯¥È¥ê¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó: '%s' (¤Ê¤É)."
 
-#: ../src/itdb_itunesdb.c:2915
+#: ../src/itdb_itunesdb.c:2912
 #, c-format
 msgid "Control directory not found: '%s' (or similar)."
 msgstr "Control ¥Ç¥£¥ì¥¯¥È¥ê¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó: '%s' (¤Ê¤É)."
 
-#: ../src/itdb_itunesdb.c:3036
+#: ../src/itdb_itunesdb.c:3033
 #, c-format
 msgid "File not found: '%s'."
 msgstr "¥Õ¥¡¥¤¥ë¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó: '%s'."
 
-#: ../src/itdb_itunesdb.c:5410
+#: ../src/itdb_itunesdb.c:5533
 #, c-format
 msgid "Path not found: '%s' (or similar)."
 msgstr "¥Ñ¥¹¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó: '%s' (¤Ê¤É)."
 
-#: ../src/itdb_itunesdb.c:5616
+#: ../src/itdb_itunesdb.c:5742
 #, c-format
 msgid "Error renaming '%s' to '%s' (%s)."
 msgstr "'%s' ¤ò '%s' ¤ËÊѹ¹¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó (%s)."
 
-#: ../src/itdb_itunesdb.c:5633 ../src/itdb_itunesdb.c:5650
+#: ../src/itdb_itunesdb.c:5759 ../src/itdb_itunesdb.c:5776
+#: ../src/itdb_itunesdb.c:5793
 #, c-format
 msgid "Error removing '%s' (%s)."
 msgstr "'%s' ¤Îºï½üÃæ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿ (%s)."
 
-#: ../src/itdb_itunesdb.c:5812 ../src/itdb_itunesdb.c:5985
+#: ../src/itdb_itunesdb.c:5960 ../src/itdb_itunesdb.c:6133
 #, fuzzy, c-format
 msgid "Mountpoint not set."
 msgstr "¥Þ¥¦¥ó¥È¾ì½ê¤¬ÀßÄꤵ¤ì¤Æ¤¤¤Þ¤»¤ó.\n"
 
-#: ../src/itdb_itunesdb.c:5852
+#: ../src/itdb_itunesdb.c:6000
 #, c-format
 msgid "No 'F..' directories found in '%s'."
 msgstr "'F..' ¥Ç¥£¥ì¥¯¥È¥ê¤¬ '%s' ¤ÎÃæ¤Ë¤¢¤ê¤Þ¤»¤ó."
 
-#: ../src/itdb_itunesdb.c:5873
+#: ../src/itdb_itunesdb.c:6021
 #, c-format
 msgid "Path not found: '%s'."
 msgstr "¥Ñ¥¹¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó: '%s'."
 
-#: ../src/itdb_itunesdb.c:5994
+#: ../src/itdb_itunesdb.c:6142
 #, fuzzy, c-format
 msgid "'%s' could not be accessed (%s)."
 msgstr "¥Õ¥¡¥¤¥ë '%s' ¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿."
 
-#: ../src/itdb_itunesdb.c:6004
+#: ../src/itdb_itunesdb.c:6152
 #, c-format
 msgid ""
 "Destination file '%s' does not appear to be on the iPod mounted at '%s'."
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:6212
+#: ../src/itdb_itunesdb.c:6360
 #, c-format
 msgid "Error opening '%s' for reading (%s)."
 msgstr "'%s' ¤òÆɤ߹þ¤ßÍѤ˳«¤¯¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó (%s)."
 
-#: ../src/itdb_itunesdb.c:6224
+#: ../src/itdb_itunesdb.c:6372
 #, c-format
 msgid "Error opening '%s' for writing (%s)."
 msgstr "'%s' ¤ò½ñ¤­¹þ¤ßÍѤ˳«¤¯¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó (%s)."
 
-#: ../src/itdb_itunesdb.c:6240
+#: ../src/itdb_itunesdb.c:6388
 #, c-format
 msgid "Error while reading from '%s' (%s)."
 msgstr "'%s' ¤ÎÆɤ߹þ¤ßÃæ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿ (%s)."
 
-#: ../src/itdb_itunesdb.c:6255
+#: ../src/itdb_itunesdb.c:6403
 #, c-format
 msgid "Error while writing to '%s' (%s)."
 msgstr "'%s' ¤Î½ñ¤­¹þ¤ßÃæ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿ (%s)."
 
-#: ../src/itdb_itunesdb.c:6268 ../src/itdb_itunesdb.c:6278
+#: ../src/itdb_itunesdb.c:6416 ../src/itdb_itunesdb.c:6426
 #, c-format
 msgid "Error when closing '%s' (%s)."
 msgstr "'%s' ¤òÊĤ¸¤ëºÝ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤Þ¤·¤¿ (%s)."
 
-#: ../src/itdb_itunesdb.c:6702
+#: ../src/itdb_itunesdb.c:6856
 msgid "iPod"
 msgstr ""
 
-#: ../src/itdb_itunesdb.c:7024
+#: ../src/itdb_itunesdb.c:7178
 #, c-format
 msgid "Problem creating iPod directory or file: '%s'."
 msgstr "iPod ¥Ç¥£¥ì¥¯¥È¥ê¤ÎºîÀ®¤Þ¤¿¤Ï¥Õ¥¡¥¤¥ë '%s' ¤ÎºîÀ®¤Ë¼ºÇÔ¤·¤Þ¤·¤¿."
@@ -842,6 +838,11 @@
 msgid "Error initialising iPod, unknown error\n"
 msgstr ""
 
+#: ../tools/ipod-time-sync.c:37
+#, c-format
+msgid "usage: %s <device> [timezone]\n"
+msgstr ""
+
 #: ../tools/read-sysinfoextended-sgutils.c:39
 #, c-format
 msgid "usage: %s <device> <mountpoint>\n"
@@ -867,6 +868,10 @@
 msgid "Couldn't write SysInfoExtended to %s"
 msgstr ""
 
+#, fuzzy
+#~ msgid "Could not find artwork entry (mhii id: %u) for track (dbid: %s).\n"
+#~ msgstr "¥¢¡¼¥È¥ï¡¼¥¯¤ËÂбþ¤¹¤ë¶Ê (dbid: %s) ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó.\n"
+
 #~ msgid "First Generation"
 #~ msgstr "1G"
 

Modified: libgpod/branches/upstream/current/po/ro.po
===================================================================
--- libgpod/branches/upstream/current/po/ro.po	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/po/ro.po	2009-06-19 20:28:03 UTC (rev 384)
@@ -2,7 +2,7 @@
 msgstr ""
 "Project-Id-Version: gtkpod\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-06-30 08:46+0900\n"
+"POT-Creation-Date: 2009-04-03 16:08-0400\n"
 "PO-Revision-Date: 2009-01-14 02:11+0200\n"
 "Last-Translator: alexef <alex at eftimie.ro>\n"
 "Language-Team: Romanian <tradu at softwareliber.ro>\n"
@@ -13,234 +13,368 @@
 "20)) ? 1 : 2;\n"
 "X-Generator: Narro 0.9.3 on http://tradu.softwareliber.ro\n"
 
-#: ../src/db-artwork-parser.c:131
-#, c-format
-msgid "Unexpected mhod3 string type: %d\n"
+#: ../src/db-artwork-parser.c:140
+#, fuzzy, c-format
+msgid "Unexpected mhod string type: %d\n"
 msgstr "Tip ÅŸir mhod3 nepotrivit: %d\n"
 
-#: ../src/db-artwork-parser.c:267
+#: ../src/db-artwork-parser.c:460
 #, c-format
+msgid "Unexpected mhsd index: %d\n"
+msgstr "Index mhsd nepotrivit: %d\n"
+
+#: ../src/db-artwork-parser.c:540
+#, c-format
 msgid "Could not find corresponding track (dbid: %s) for artwork entry.\n"
 msgstr ""
 "Nu am putut găsi piesa corespunzpătoare (dbid: %s) pentru obiectul artwork.\n"
 
-#: ../src/db-artwork-parser.c:293
+#: ../src/db-artwork-parser.c:548
 #, c-format
 msgid "iTunesDB and ArtworkDB artwork sizes inconsistent (%d+%d != %d)\n"
 msgstr ""
 "Dimesniunile artwork iTunesDB ÅŸi ArtworkDB sunt inconsistente (%d+%d != %d)\n"
 
-#: ../src/db-artwork-parser.c:463
-#, c-format
-msgid "Unexpected mhsd index: %d\n"
-msgstr "Index mhsd nepotrivit: %d\n"
-
-#: ../src/db-image-parser.c:118
-#, c-format
-msgid "Unexpected image type in mhni: size: %ux%u (%d), offset: %d\n"
+#: ../src/db-image-parser.c:91
+#, fuzzy, c-format
+msgid "Unexpected image type in mhni: %d, offset: %d\n"
 msgstr "Tip imagine nepotrivit în mhni: size: %ux%u (%d), offset: %d\n"
 
-#: ../src/itdb_artwork.c:199
+#: ../src/itdb_artwork.c:163
 #, c-format
 msgid "Could not access file '%s'."
 msgstr "Nu am putut accesa fiÅŸierul '%s'."
 
-#: ../src/itdb_artwork.c:216 ../src/itdb_artwork.c:277
-#: ../src/itdb_artwork.c:337
+#: ../src/itdb_artwork.c:181 ../src/itdb_artwork.c:241
+#: ../src/itdb_artwork.c:298
+#, c-format
 msgid "Artwork support not compiled into libgpod."
 msgstr "Suportul pentru artwork nu a fost compilat în libgpod."
 
-#: ../src/itdb_artwork.c:395
+#: ../src/itdb_artwork.c:668
 #, c-format
-msgid "Illegal filename: '%s'.\n"
-msgstr "Nume de fiÅŸier ilegal: '%s'.\n"
-
-#: ../src/itdb_artwork.c:401
-msgid "Mountpoint not set.\n"
-msgstr "Punctul de montare nu a fost stabilit\n"
-
-#: ../src/itdb_artwork.c:554
-#, c-format
 msgid "Could not find on iPod: '%s'\n"
 msgstr "Nu am putut găsi pe iPod: '%s'\n"
 
-#: ../src/itdb_artwork.c:768
-#, c-format
+#: ../src/itdb_artwork.c:828
+#, fuzzy, c-format
 msgid ""
 "Unable to retrieve thumbnail (appears to be on iPod, but no image info "
-"available): type: %d, filename: '%s'\n"
+"available): filename: '%s'\n"
 msgstr ""
-"Nu am putut obţine miniatura (apare ca fiind pe iPod, dar nu sunt disponibile "
-"informaţii despre imagine): tip: %d, nume fişier: '%s'\n"
+"Nu am putut obţine miniatura (apare ca fiind pe iPod, dar nu sunt "
+"disponibile informaţii despre imagine): tip: %d, nume fişier: '%s'\n"
 
-#: ../src/itdb_device.c:170
+#: ../src/itdb_device.c:263
 msgid "Invalid"
 msgstr "Nevalid"
 
-#: ../src/itdb_device.c:171 ../src/itdb_device.c:197
+#: ../src/itdb_device.c:264 ../src/itdb_device.c:305
 msgid "Unknown"
 msgstr "Necunoscut"
 
-#: ../src/itdb_device.c:172
+#: ../src/itdb_device.c:265
 msgid "Color"
 msgstr "Color"
 
-#: ../src/itdb_device.c:173
+#: ../src/itdb_device.c:266
 msgid "Color U2"
 msgstr "Color U2"
 
-#: ../src/itdb_device.c:174
+#: ../src/itdb_device.c:267
 msgid "Grayscale"
 msgstr "CenuÅŸiu"
 
-#: ../src/itdb_device.c:175
+#: ../src/itdb_device.c:268
 msgid "Grayscale U2"
 msgstr "CenuÅŸiu U2"
 
-#: ../src/itdb_device.c:176
+#: ../src/itdb_device.c:269
 msgid "Mini (Silver)"
 msgstr "Mini (Argintiu)"
 
-#: ../src/itdb_device.c:177
+#: ../src/itdb_device.c:270
 msgid "Mini (Blue)"
 msgstr "Mini (Albastru)"
 
-#: ../src/itdb_device.c:178
+#: ../src/itdb_device.c:271
 msgid "Mini (Pink)"
 msgstr "Mini (Roz)"
 
-#: ../src/itdb_device.c:179
+#: ../src/itdb_device.c:272
 msgid "Mini (Green)"
 msgstr "Mini (Verde)"
 
-#: ../src/itdb_device.c:180
+#: ../src/itdb_device.c:273
 msgid "Mini (Gold)"
 msgstr "Mini (Auriu)"
 
-#: ../src/itdb_device.c:181
+#: ../src/itdb_device.c:274
 msgid "Shuffle"
 msgstr "Amestecat"
 
-#: ../src/itdb_device.c:182
+#: ../src/itdb_device.c:275
 msgid "Nano (White)"
 msgstr "Nano (Alb)"
 
-#: ../src/itdb_device.c:183
+#: ../src/itdb_device.c:276
 msgid "Nano (Black)"
 msgstr "Nano (Negru)"
 
-#: ../src/itdb_device.c:184
+#: ../src/itdb_device.c:277
 msgid "Video (White)"
 msgstr "Video (Alb)"
 
-#: ../src/itdb_device.c:185
+#: ../src/itdb_device.c:278
 msgid "Video (Black)"
 msgstr "Video (Negru)"
 
-#: ../src/itdb_device.c:186
+#: ../src/itdb_device.c:279
 msgid "Mobile (1)"
 msgstr "Mobil (1)"
 
-#: ../src/itdb_device.c:187
+#: ../src/itdb_device.c:280
 msgid "Video U2"
 msgstr "Video U2"
 
-#: ../src/itdb_device.c:188
+#: ../src/itdb_device.c:281
 msgid "Nano (Silver)"
 msgstr "Nano (Argintiu)"
 
-#: ../src/itdb_device.c:189
+#: ../src/itdb_device.c:282
 msgid "Nano (Blue)"
 msgstr "Nano (Albastru)"
 
-#: ../src/itdb_device.c:190
+#: ../src/itdb_device.c:283
 msgid "Nano (Green)"
 msgstr "Nano (Verde)"
 
-#: ../src/itdb_device.c:191
+#: ../src/itdb_device.c:284
 msgid "Nano (Pink)"
 msgstr "Nano (Roz)"
 
-#: ../src/itdb_device.c:198
-msgid "First Generation"
-msgstr "Prima generaţie"
+#: ../src/itdb_device.c:285
+#, fuzzy
+msgid "Nano (Red)"
+msgstr "Nano (Albastru)"
 
-#: ../src/itdb_device.c:199
-msgid "Second Generation"
-msgstr "A doua generaţie"
+#: ../src/itdb_device.c:286
+#, fuzzy
+msgid "Nano (Yellow)"
+msgstr "Nano (Albastru)"
 
-#: ../src/itdb_device.c:200
-msgid "Third Generation"
-msgstr "A treia generaţie"
+#: ../src/itdb_device.c:287
+#, fuzzy
+msgid "Nano (Purple)"
+msgstr "Nano (Albastru)"
 
-#: ../src/itdb_device.c:201
-msgid "Fourth Generation"
-msgstr "A patra generaţie"
+#: ../src/itdb_device.c:288
+#, fuzzy
+msgid "Nano (Orange)"
+msgstr "Nano (Verde)"
 
-#: ../src/itdb_device.c:202
-msgid "Fifth Generation"
-msgstr "A cincea generaţie"
+#: ../src/itdb_device.c:289
+#, fuzzy
+msgid "iPhone (1)"
+msgstr "Mobil (1)"
 
-#: ../src/itdb_device.c:203
-msgid "Sixth Generation"
-msgstr "A şasea generaţie"
+#: ../src/itdb_device.c:290
+#, fuzzy
+msgid "Shuffle (Silver)"
+msgstr "Mini (Argintiu)"
 
-#: ../src/itdb_device.c:204
-msgid "Mobile Phone"
+#: ../src/itdb_device.c:291
+#, fuzzy
+msgid "Shuffle (Pink)"
+msgstr "Amestecat"
+
+#: ../src/itdb_device.c:292
+#, fuzzy
+msgid "Shuffle (Blue)"
+msgstr "Amestecat"
+
+#: ../src/itdb_device.c:293
+#, fuzzy
+msgid "Shuffle (Green)"
+msgstr "Amestecat"
+
+#: ../src/itdb_device.c:294
+#, fuzzy
+msgid "Shuffle (Orange)"
+msgstr "Amestecat"
+
+#: ../src/itdb_device.c:295
+#, fuzzy
+msgid "Shuffle (Purple)"
+msgstr "Amestecat"
+
+#: ../src/itdb_device.c:296
+#, fuzzy
+msgid "Shuffle (Red)"
+msgstr "Amestecat"
+
+#: ../src/itdb_device.c:297
+#, fuzzy
+msgid "Classic (Silver)"
+msgstr "Mini (Argintiu)"
+
+#: ../src/itdb_device.c:298
+#, fuzzy
+msgid "Classic (Black)"
+msgstr "Nano (Negru)"
+
+#: ../src/itdb_device.c:299
+#, fuzzy
+msgid "Touch (Black)"
+msgstr "Nano (Negru)"
+
+#: ../src/itdb_device.c:306
+msgid "Regular (1st Gen.)"
+msgstr ""
+
+#: ../src/itdb_device.c:307
+msgid "Regular (2nd Gen.)"
+msgstr ""
+
+#: ../src/itdb_device.c:308
+msgid "Regular (3rd Gen.)"
+msgstr ""
+
+#: ../src/itdb_device.c:309
+msgid "Regular (4th Gen.)"
+msgstr ""
+
+#: ../src/itdb_device.c:310
+msgid "Photo"
+msgstr ""
+
+#: ../src/itdb_device.c:311
+#, fuzzy
+msgid "Mobile Phones"
 msgstr "Telefon mobil"
 
-#: ../src/itdb_device.c:470
+#: ../src/itdb_device.c:312
+#, fuzzy
+msgid "Mini (1st Gen.)"
+msgstr "Mini (Verde)"
+
+#: ../src/itdb_device.c:313
+#, fuzzy
+msgid "Mini (2nd Gen.)"
+msgstr "Mini (Verde)"
+
+#: ../src/itdb_device.c:314
+msgid "Shuffle (1st Gen.)"
+msgstr ""
+
+#: ../src/itdb_device.c:315
+msgid "Shuffle (2nd Gen.)"
+msgstr ""
+
+#: ../src/itdb_device.c:316
+msgid "Shuffle (3rd Gen.)"
+msgstr ""
+
+#: ../src/itdb_device.c:317
+#, fuzzy
+msgid "Nano (1st Gen.)"
+msgstr "Nano (Verde)"
+
+#: ../src/itdb_device.c:318
+#, fuzzy
+msgid "Nano (2nd Gen.)"
+msgstr "Nano (Verde)"
+
+#: ../src/itdb_device.c:319
+#, fuzzy
+msgid "Nano Video (3rd Gen.)"
+msgstr "Nano (Verde)"
+
+#: ../src/itdb_device.c:320
+#, fuzzy
+msgid "Nano Video (4th Gen.)"
+msgstr "Nano (Verde)"
+
+#: ../src/itdb_device.c:321
+#, fuzzy
+msgid "Video (1st Gen.)"
+msgstr "Video (Alb)"
+
+#: ../src/itdb_device.c:322
+#, fuzzy
+msgid "Video (2nd Gen.)"
+msgstr "Video (Alb)"
+
+#: ../src/itdb_device.c:323 ../src/itdb_device.c:324
+msgid "Classic"
+msgstr ""
+
+#: ../src/itdb_device.c:325
+msgid "Touch"
+msgstr ""
+
+#: ../src/itdb_device.c:326
+#, fuzzy
+msgid "iPhone"
+msgstr "Telefon mobil"
+
+#: ../src/itdb_device.c:327 ../src/itdb_device.c:328
+msgid "Unused"
+msgstr ""
+
+#: ../src/itdb_device.c:928
 #, c-format
 msgid "Could not open '%s' for writing."
 msgstr "Nu am putut deschide '%s' pentru scriere."
 
-#: ../src/itdb_device.c:479
+#: ../src/itdb_device.c:937
+#, c-format
 msgid "Device directory does not exist."
 msgstr "Dosarul dispozitivului nu există"
 
-#: ../src/itdb_itunesdb.c:451
+#: ../src/itdb_itunesdb.c:507
 #, c-format
 msgid "Illegal seek to offset %ld (length %ld) in file '%s'."
 msgstr "Căutare ilegală la deplasarea %ld (lungime %ld) în fişierul '%s'."
 
-#: ../src/itdb_itunesdb.c:905
+#: ../src/itdb_itunesdb.c:910
 #, c-format
 msgid "Not a Play Counts file: '%s' (missing mhdp header)."
 msgstr "Nu un fişier de contorizare a redărilor: '%s' (lipseşte antetul mhdp)."
 
-#: ../src/itdb_itunesdb.c:920
+#: ../src/itdb_itunesdb.c:925
 #, c-format
 msgid "Play Counts file ('%s'): header length smaller than expected (%d<96)."
 msgstr ""
 "Fişier de contorizare a redărilor ('%s'): lungimea antetului mai mică decât "
 "este aÅŸteptat (%d<96)."
 
-#: ../src/itdb_itunesdb.c:934
+#: ../src/itdb_itunesdb.c:939
 #, c-format
 msgid "Play Counts file ('%s'): entry length smaller than expected (%d<12)."
 msgstr ""
 "Fişier de contorizare a redărilor ('%s'): lungimea intrării mai mică decât "
 "este aÅŸteptat (%d<96)."
 
-#: ../src/itdb_itunesdb.c:1009
+#: ../src/itdb_itunesdb.c:1014
 #, c-format
 msgid "iTunesStats file ('%s'): entry length smaller than expected (%d<18)."
 msgstr ""
 "Fişier iTunesStats ('%s'): lungimea intrării mai mică decât este aşteptat (%"
 "d<18)."
 
-#: ../src/itdb_itunesdb.c:1331
+#: ../src/itdb_itunesdb.c:1333
 #, c-format
 msgid "iTunesDB corrupt: no MHOD at offset %ld in file '%s'."
 msgstr "iTunesDB coruptă: lipsă MHOD la deplasarea %ld în fişierul '%s'."
 
-#: ../src/itdb_itunesdb.c:1479
+#: ../src/itdb_itunesdb.c:1519
 #, c-format
 msgid "Unknown smart rule action at %ld: %x. Trying to continue.\n"
 msgstr ""
 "Acţiune regulă inteligentă necunoscută la %ld: %x. Încercând să continuu.\n"
 
-#: ../src/itdb_itunesdb.c:1510
+#: ../src/itdb_itunesdb.c:1550
 #, c-format
 msgid ""
 "Length of smart playlist rule field (%d) not as expected. Trying to continue "
@@ -249,12 +383,12 @@
 "Lungimea câmpului regulă a listei de redare inteligentă (%d) neaşteptată. "
 "Încercând să continuu oricum\n"
 
-#: ../src/itdb_itunesdb.c:1553
+#: ../src/itdb_itunesdb.c:1593
 #, c-format
 msgid "iTunesDB corrupt: no SLst at offset %ld in file '%s'."
 msgstr "iTunesDB coruptă: lipsă SLst la deplasarea %ld în fişierul '%s'."
 
-#: ../src/itdb_itunesdb.c:1566
+#: ../src/itdb_itunesdb.c:1606
 #, c-format
 msgid ""
 "Encountered unknown MHOD type (%d) while parsing the iTunesDB. Ignoring.\n"
@@ -263,33 +397,34 @@
 "Tip MHOD necunoscut (%d) întâlnit la prelucrarea iTunesDB. Ignorând.\n"
 "\n"
 
-#: ../src/itdb_itunesdb.c:1645
+#: ../src/itdb_itunesdb.c:1689
 #, c-format
 msgid "iTunesDB corrupt: hunk length 0 for hunk at %ld in file '%s'."
 msgstr "iTunesDB coruptă: lungime 0 pentru bucata de la %ld în fişierul '%s'."
 
-#: ../src/itdb_itunesdb.c:1658
+#: ../src/itdb_itunesdb.c:1702
 #, c-format
-msgid "iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
+msgid ""
+"iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
 msgstr ""
 "iTunesDB coruptă: secţiunea '%s' nu a fost găsită în secţiunea '%s' începând "
 "de la %ld"
 
-#: ../src/itdb_itunesdb.c:1672
+#: ../src/itdb_itunesdb.c:1716
 #, c-format
 msgid ""
-"header length of '%s' smaller than expected (%d < %d) at offset %ld in file '%"
-"s'."
+"header length of '%s' smaller than expected (%d < %d) at offset %ld in file "
+"'%s'."
 msgstr ""
-"lungimea antetului '%s' mai mică decât este aşteptat (%d < %d) la deplasarea %"
-"ldîn fişierul '%s'."
+"lungimea antetului '%s' mai mică decât este aşteptat (%d < %d) la deplasarea "
+"%ldîn fişierul '%s'."
 
-#: ../src/itdb_itunesdb.c:1757
+#: ../src/itdb_itunesdb.c:1801
 #, c-format
 msgid "Not a iTunesDB: '%s' (missing mhdb header)."
 msgstr "Nu o iTunesDB: '%s' (lipsă antet mhdb)."
 
-#: ../src/itdb_itunesdb.c:1774
+#: ../src/itdb_itunesdb.c:1818
 #, c-format
 msgid ""
 "iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). "
@@ -298,39 +433,34 @@
 "iTunesDB ('%s'): lungimea antetului bucăţii mhsd mai mică decât aşteptat (%"
 "d<32). Renunţând"
 
-#: ../src/itdb_itunesdb.c:1795
+#: ../src/itdb_itunesdb.c:1839
 #, c-format
 msgid "iTunesDB '%s' corrupt: mhsd expected at %ld."
 msgstr "iTunesDB '%s' coruptă: mhsd aşteptat la %ld."
 
-#: ../src/itdb_itunesdb.c:1912
+#: ../src/itdb_itunesdb.c:1944
 #, c-format
 msgid "Number of MHODs in mhip at %ld inconsistent in file '%s'."
 msgstr "Numărul de MHOD în mhip la %ld inconsistent în fişierul '%s'."
 
-#: ../src/itdb_itunesdb.c:1930
+#: ../src/itdb_itunesdb.c:2121
 #, c-format
-msgid "Itdb_Track ID '%d' not found.\n"
-msgstr "Itdb_Track ID '%d' nu a fost găsit.\n"
-
-#: ../src/itdb_itunesdb.c:2099
-#, c-format
 msgid "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
 msgstr "Numărul de MHOD în mhyp la %ld inconsistent în fişierul '%s'."
 
-#: ../src/itdb_itunesdb.c:2109
+#: ../src/itdb_itunesdb.c:2131
 msgid "Master-PL"
 msgstr "LR-Principală"
 
-#: ../src/itdb_itunesdb.c:2113
+#: ../src/itdb_itunesdb.c:2135
 msgid "Podcasts"
 msgstr "Podcasturi"
 
-#: ../src/itdb_itunesdb.c:2115
+#: ../src/itdb_itunesdb.c:2137
 msgid "Playlist"
 msgstr "Listă redare"
 
-#: ../src/itdb_itunesdb.c:2137
+#: ../src/itdb_itunesdb.c:2159
 #, c-format
 msgid ""
 "iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %"
@@ -339,42 +469,47 @@
 "iTunesDV coruptă: numărul de secţiuni mhip inconsistent în mhyp începând la%"
 "ld în fişierul '%s'."
 
-#: ../src/itdb_itunesdb.c:2478
+#: ../src/itdb_itunesdb.c:2180
+#, c-format
+msgid "Itdb_Track ID '%d' not found.\n"
+msgstr "Itdb_Track ID '%d' nu a fost găsit.\n"
+
+#: ../src/itdb_itunesdb.c:2524
 msgid "OTG Playlist"
 msgstr "Listă redare OTG"
 
-#: ../src/itdb_itunesdb.c:2496
+#: ../src/itdb_itunesdb.c:2542
 #, c-format
 msgid "Not a OTG playlist file: '%s' (missing mhpo header)."
 msgstr "Nu un fişier listă redare OTG: '%s' (lipsă antet mhpo)."
 
-#: ../src/itdb_itunesdb.c:2510
+#: ../src/itdb_itunesdb.c:2556
 #, c-format
 msgid "OTG playlist file ('%s'): header length smaller than expected (%d<20)."
 msgstr ""
 "Fişier listă redare OTG ('%s'): lungimea antetului mai mică decât aşteptat (%"
 "d<20)."
 
-#: ../src/itdb_itunesdb.c:2522
+#: ../src/itdb_itunesdb.c:2568
 #, c-format
 msgid "OTG playlist file ('%s'): entry length smaller than expected (%d<4)."
 msgstr ""
 "Fişier listă redare OTG ('%s'): lungimea intrării mai mică decât aşteptat (%"
 "d<4)."
 
-#: ../src/itdb_itunesdb.c:2557
+#: ../src/itdb_itunesdb.c:2603
 #, c-format
 msgid "OTG playlist file '%s': reference to non-existent track (%d)."
 msgstr ""
 "Fişier listă redare OTG ('%s'): referinţă către o piesă inexistentă (%d)."
 
-#: ../src/itdb_itunesdb.c:2602
+#: ../src/itdb_itunesdb.c:2648
 #, c-format
 msgid "OTG Playlist %d"
 msgstr "Listă redare OTG %d"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2670
+#: ../src/itdb_itunesdb.c:2716
 msgid ""
 "iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to "
 "continue.\n"
@@ -383,7 +518,7 @@
 "continuu.\n"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2733
+#: ../src/itdb_itunesdb.c:2779
 msgid ""
 "iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. "
 "Trying to continue.\n"
@@ -391,15 +526,16 @@
 "Bază de date coruptă: număr liste de redare inconsistent. Încerc să "
 "continuu.\n"
 
-#: ../src/itdb_itunesdb.c:2780
+#: ../src/itdb_itunesdb.c:2826
 #, c-format
 msgid ""
-"iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section found)"
+"iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section "
+"found)"
 msgstr ""
 "iTunesDB '%s' coruptă: Nu am putut găsi lista de piese (lipsă secţiuni mhsd "
 "de tip 1)"
 
-#: ../src/itdb_itunesdb.c:2809
+#: ../src/itdb_itunesdb.c:2855
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 "
@@ -408,125 +544,119 @@
 "iTunesDB '%s' coruptă: Nu am putut găsi liste de redare (lipsă secţiuni mhsd "
 "de tip 2 sau 3)"
 
-#: ../src/itdb_itunesdb.c:2831
+#: ../src/itdb_itunesdb.c:2877
 #, c-format
 msgid "iTunes directory not found: '%s' (or similar)."
 msgstr "Dosar iTunes negăsit: '%s' (sau similar)."
 
-#: ../src/itdb_itunesdb.c:2848
+#: ../src/itdb_itunesdb.c:2894
 #, c-format
 msgid "Music directory not found: '%s' (or similar)."
 msgstr "Dosar muzică negăsit: '%s' (sau similar)."
 
-#: ../src/itdb_itunesdb.c:2866
+#: ../src/itdb_itunesdb.c:2912
 #, c-format
 msgid "Control directory not found: '%s' (or similar)."
 msgstr "Dosar de control negăsit: '%s' (sau similar)."
 
-#: ../src/itdb_itunesdb.c:2984
+#: ../src/itdb_itunesdb.c:3033
 #, c-format
 msgid "File not found: '%s'."
 msgstr "Fişier negăsit: '%s'."
 
-#: ../src/itdb_itunesdb.c:4753
+#: ../src/itdb_itunesdb.c:5533
 #, c-format
-msgid "Opening of '%s' for writing failed (%s)."
-msgstr "Deschiderea '%s' pentru scriere eşuată (%s)."
-
-#: ../src/itdb_itunesdb.c:4764 ../src/itdb_itunesdb.c:4775
-#, c-format
-msgid "Writing to '%s' failed (%s)."
-msgstr "Scriere în '%s' eşuată (%s)."
-
-#: ../src/itdb_itunesdb.c:5129
-#, c-format
 msgid "Path not found: '%s' (or similar)."
 msgstr "Cale negăsită: '%s' (sau similară)."
 
-#: ../src/itdb_itunesdb.c:5348
+#: ../src/itdb_itunesdb.c:5742
 #, c-format
 msgid "Error renaming '%s' to '%s' (%s)."
 msgstr "Eroare la redenumirea '%s' în '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5365 ../src/itdb_itunesdb.c:5382
+#: ../src/itdb_itunesdb.c:5759 ../src/itdb_itunesdb.c:5776
+#: ../src/itdb_itunesdb.c:5793
 #, c-format
 msgid "Error removing '%s' (%s)."
 msgstr "Eroare la ÅŸtergerea '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5538 ../src/itdb_itunesdb.c:5699
+#: ../src/itdb_itunesdb.c:5960 ../src/itdb_itunesdb.c:6133
+#, c-format
 msgid "Mountpoint not set."
 msgstr "Punct de montare nestabilit."
 
-#: ../src/itdb_itunesdb.c:5578
+#: ../src/itdb_itunesdb.c:6000
 #, c-format
 msgid "No 'F..' directories found in '%s'."
 msgstr "Nici un dosar 'F..' nu a fost găsit în '%s'."
 
-#: ../src/itdb_itunesdb.c:5599
+#: ../src/itdb_itunesdb.c:6021
 #, c-format
 msgid "Path not found: '%s'."
 msgstr "Cale negăsită: '%s'."
 
-#: ../src/itdb_itunesdb.c:5708
+#: ../src/itdb_itunesdb.c:6142
 #, c-format
 msgid "'%s' could not be accessed (%s)."
 msgstr "'%s' nu a putut fi accesat (%s)."
 
-#: ../src/itdb_itunesdb.c:5718
+#: ../src/itdb_itunesdb.c:6152
 #, c-format
-msgid "Destination file '%s' does not appear to be on the iPod mounted at '%s'."
+msgid ""
+"Destination file '%s' does not appear to be on the iPod mounted at '%s'."
 msgstr "Fişierul destinaţie '%s' nu pare să fie pe iPodul montat la '%s'."
 
-#: ../src/itdb_itunesdb.c:5922
+#: ../src/itdb_itunesdb.c:6360
 #, c-format
 msgid "Error opening '%s' for reading (%s)."
 msgstr "Eroare la deschiderea '%s' pentru citire (%s)."
 
-#: ../src/itdb_itunesdb.c:5933
+#: ../src/itdb_itunesdb.c:6372
 #, c-format
 msgid "Error opening '%s' for writing (%s)."
 msgstr "Eroare la deschiderea '%s' pentru scriere (%s)."
 
-#: ../src/itdb_itunesdb.c:5950
+#: ../src/itdb_itunesdb.c:6388
 #, c-format
 msgid "Error while reading from '%s' (%s)."
 msgstr "Eroarea la citirea din '%s' (%s)"
 
-#: ../src/itdb_itunesdb.c:5966
+#: ../src/itdb_itunesdb.c:6403
 #, c-format
 msgid "Error while writing to '%s' (%s)."
 msgstr "Eroare la scrierea în '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5979 ../src/itdb_itunesdb.c:5989
+#: ../src/itdb_itunesdb.c:6416 ../src/itdb_itunesdb.c:6426
 #, c-format
 msgid "Error when closing '%s' (%s)."
 msgstr "Eroare la închiderea '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6354
+#: ../src/itdb_itunesdb.c:6856
 msgid "iPod"
 msgstr "iPod"
 
-#: ../src/itdb_itunesdb.c:6747
+#: ../src/itdb_itunesdb.c:7178
 #, c-format
 msgid "Problem creating iPod directory or file: '%s'."
 msgstr "Problemă la crearea dosarului iPod sau a fişierului: '%s'."
 
-#: ../src/itdb_photoalbum.c:109
+#: ../src/itdb_photoalbum.c:111
 #, c-format
 msgid "Photos directory not found: '%s' (or similar)."
 msgstr "Dosarul imagini nu a fost găsit: '%s' (sau similar)."
 
-#: ../src/itdb_photoalbum.c:256 ../src/itdb_photoalbum.c:463
+#: ../src/itdb_photoalbum.c:266 ../src/itdb_photoalbum.c:460
 msgid "Photo Library"
 msgstr "Biblioteca foto"
 
-#: ../src/itdb_photoalbum.c:370
+#: ../src/itdb_photoalbum.c:386
+#, c-format
 msgid "You need to specify the iPod model used before photos can be added."
 msgstr ""
 "Trebuie să specificaţi modelul de iPod folosit înainte de a puteaadăuga "
 "imagini."
 
-#: ../src/itdb_photoalbum.c:391
+#: ../src/itdb_photoalbum.c:407
 #, c-format
 msgid ""
 "Your iPod does not seem to support photos. Maybe you need to specify the "
@@ -535,20 +665,22 @@
 "Modelul dvs de iPod se pare că nu suportă imagini. Poate trebuie "
 "săspecificaţi modelul corect de iPod? În prezent este setat ca 'x%s' (%s/%s)."
 
-#: ../src/itdb_photoalbum.c:403
+#: ../src/itdb_photoalbum.c:419
 #, c-format
 msgid "Could not access file '%s'. Photo not added."
 msgstr "Nu am putut accesa fişierul '%s'. Imaginea nu a fost adăugată."
 
-#: ../src/itdb_photoalbum.c:451
+#: ../src/itdb_photoalbum.c:448
+#, c-format
 msgid ""
 "Unexpected error in itdb_photodb_add_photo_internal() while adding photo, "
 "please report."
 msgstr ""
-"Eroare neaşte_ptată în itdbphotodb_addphoto_internal() la adăugarea imaginii, "
-"vă rugăm raportaţi-o."
+"Eroare neaşte_ptată în itdbphotodb_addphoto_internal() la adăugarea "
+"imaginii, vă rugăm raportaţi-o."
 
-#: ../src/itdb_photoalbum.c:471
+#: ../src/itdb_photoalbum.c:468
+#, c-format
 msgid ""
 "Library compiled without gdk-pixbuf support. Picture support is disabled."
 msgstr ""
@@ -556,14 +688,24 @@
 "imagini este dezactivat."
 
 #. New action!
-#: ../src/itdb_playlist.c:79
+#: ../src/itdb_playlist.c:78
 #, c-format
 msgid "Unknown action (%d) in smart playlist will be ignored.\n"
 msgstr ""
 "Acţiune necunoscută (%d) în lista de redare inteligentă va fi ignorată.\n"
 
-#: ../tests/test-photos.c:39
+#: ../src/itdb_thumb.c:326
 #, c-format
+msgid "Illegal filename: '%s'.\n"
+msgstr "Nume de fiÅŸier ilegal: '%s'.\n"
+
+#: ../src/itdb_thumb.c:331
+#, c-format
+msgid "Mountpoint not set.\n"
+msgstr "Punctul de montare nu a fost stabilit\n"
+
+#: ../tests/test-photos.c:41
+#, c-format
 msgid ""
 "Usage to add photos:\n"
 "  %s add <mountpoint> <albumname> [<filename(s)>]\n"
@@ -577,11 +719,11 @@
 "  %s add <mountpoint> <albumname> [<filename(s)>]\n"
 "  <albumname> trebuie setat ca 'NULL' pentru a adăuga imagini la albumulfoto "
 "principal\n"
-"  Numai pentru (Photo Library). Dacă nu specificaţi nici un nume de fişier un "
-"album nou\n"
+"  Numai pentru (Photo Library). Dacă nu specificaţi nici un nume de fişier "
+"un album nou\n"
 "  va fi creat.\n"
 
-#: ../tests/test-photos.c:40
+#: ../tests/test-photos.c:42
 #, c-format
 msgid ""
 "Usage to dump all photos to <output_dir>:\n"
@@ -590,7 +732,7 @@
 "Mod de utilizare pentru a afiÅŸa toate imaginile la <output_dir>:\n"
 "  %s dump <mountpoint> <output_dir>\n"
 
-#: ../tests/test-photos.c:41
+#: ../tests/test-photos.c:43
 #, c-format
 msgid ""
 "Usage to list all photos IDs to stdout:\n"
@@ -599,7 +741,7 @@
 "Mod de utilizare pentru a lista toate IDurile imaginilor la stdout:\n"
 "  %s list <mountpoint>\n"
 
-#: ../tests/test-photos.c:42
+#: ../tests/test-photos.c:44
 #, c-format
 msgid ""
 "Usage to remove photo IDs from Photo Library:\n"
@@ -615,45 +757,49 @@
 "  de pe iPod la un loc. Dacă nu specificaţi ID, tot albumul va fi şters.\n"
 "  ATENÅ¢IE: IDurile se pot schimba la scrierea fiÅŸierului PhotoDB.\n"
 
-#: ../tests/test-photos.c:126
+#: ../tests/test-photos.c:119
+#, c-format
 msgid "Wrong number of command line arguments.\n"
 msgstr "Număr incorect de argumente în linia de comandă.\n"
 
-#: ../tests/test-photos.c:135
+#: ../tests/test-photos.c:128
 #, c-format
 msgid "Error creating '%s' (mkdir)\n"
 msgstr "Eroare la crearea '%s' (mkdir)\n"
 
-#: ../tests/test-photos.c:141
+#: ../tests/test-photos.c:134
 #, c-format
 msgid "Error: '%s' is not a directory\n"
 msgstr "Eroare: '%s' nu este un dosar\n"
 
-#: ../tests/test-photos.c:150 ../tests/test-photos.c:184
-#: ../tests/test-photos.c:313
+#: ../tests/test-photos.c:143 ../tests/test-photos.c:177
+#: ../tests/test-photos.c:306
 #, c-format
 msgid "Error reading iPod photo database (%s).\n"
 msgstr "Eroare la citirea bazei de date foto a iPod (%s).\n"
 
-#: ../tests/test-photos.c:156 ../tests/test-photos.c:190
-#: ../tests/test-photos.c:320
+#: ../tests/test-photos.c:149 ../tests/test-photos.c:183
+#: ../tests/test-photos.c:313
+#, c-format
 msgid "Error reading iPod photo database.\n"
 msgstr "Eroare la citirea bazei de date foto a iPod.\n"
 
-#: ../tests/test-photos.c:174 ../tests/test-photos.c:233
-#: ../tests/test-photos.c:303 ../tests/test-photos.c:386
+#: ../tests/test-photos.c:167 ../tests/test-photos.c:226
+#: ../tests/test-photos.c:296 ../tests/test-photos.c:379
+#, c-format
 msgid "Insufficient number of command line arguments.\n"
 msgstr "Număr de argumente în linia de comandă insuficient.\n"
 
-#: ../tests/test-photos.c:201
+#: ../tests/test-photos.c:194
 msgid "<Unnamed>"
 msgstr "<Nedenumit>"
 
-#: ../tests/test-photos.c:216
+#: ../tests/test-photos.c:209
+#, c-format
 msgid "<No members>\n"
 msgstr "<Fără membri>\n"
 
-#: ../tests/test-photos.c:243
+#: ../tests/test-photos.c:236
 #, c-format
 msgid ""
 "Error reading iPod photo database (%s).\n"
@@ -662,33 +808,99 @@
 "Eroare la citirea bazei de date foto a iPod (%s).\n"
 "Se încearcă să se creeze una nouă.\n"
 
-#: ../tests/test-photos.c:249
+#: ../tests/test-photos.c:242
+#, c-format
 msgid ""
 "Error reading iPod photo database, will attempt to create a new database\n"
 msgstr ""
 "Eroare la citirea bazei de date foto a iPod, se încearcă să se creeze una "
 "nouă\n"
 
-#: ../tests/test-photos.c:274
+#: ../tests/test-photos.c:267
 #, c-format
 msgid "Error adding photo (%s) to photo database: %s\n"
 msgstr "Eroare la adăugarea imaginii (%s) la baza de date de imagini: %s\n"
 
-#: ../tests/test-photos.c:331
+#: ../tests/test-photos.c:324
 #, c-format
 msgid "Specified album '%s' not found. Aborting.\n"
 msgstr "Albumul specificat '%s' nu a fost găsit. Abandonând.\n"
 
-#: ../tests/test-photos.c:343
+#: ../tests/test-photos.c:336
+#, c-format
 msgid "Cannot remove Photo Library playlist. Aborting.\n"
 msgstr "Nu am putut înlătura lista de redare Bibliotecă foto. Abandonând.\n"
 
-#: ../tests/test-photos.c:364
+#: ../tests/test-photos.c:357
 #, c-format
 msgid "Warning: could not find photo with ID <%d>. Skipping...\n"
 msgstr "Avertizare: nu am putut găsi imaginea cu ID <%d>. Omiţând...\n"
 
-#: ../tests/test-photos.c:410
+#: ../tests/test-photos.c:403
 #, c-format
 msgid "Unknown command '%s'\n"
 msgstr "Comandă necunoscută '%s' \n"
+
+#: ../tests/test-init-ipod.c:66
+#, c-format
+msgid "Error initialising iPod: %s\n"
+msgstr ""
+
+#: ../tests/test-init-ipod.c:73
+#, c-format
+msgid "Error initialising iPod, unknown error\n"
+msgstr ""
+
+#: ../tools/ipod-time-sync.c:37
+#, c-format
+msgid "usage: %s <device> [timezone]\n"
+msgstr ""
+
+#: ../tools/read-sysinfoextended-sgutils.c:39
+#, c-format
+msgid "usage: %s <device> <mountpoint>\n"
+msgstr ""
+
+#: ../tools/read-sysinfoextended-sgutils.c:45
+#, c-format
+msgid "Couldn't read xml sysinfo from %s\n"
+msgstr ""
+
+#: ../tools/read-sysinfoextended-sgutils.c:56
+#, c-format
+msgid "Couldn't resolve Device directory path on %s"
+msgstr ""
+
+#: ../tools/read-sysinfoextended-sgutils.c:64
+#, c-format
+msgid "Couldn't resolve SysInfoExtended path on %s"
+msgstr ""
+
+#: ../tools/read-sysinfoextended-sgutils.c:74
+#, c-format
+msgid "Couldn't write SysInfoExtended to %s"
+msgstr ""
+
+#~ msgid "First Generation"
+#~ msgstr "Prima generaţie"
+
+#~ msgid "Second Generation"
+#~ msgstr "A doua generaţie"
+
+#~ msgid "Third Generation"
+#~ msgstr "A treia generaţie"
+
+#~ msgid "Fourth Generation"
+#~ msgstr "A patra generaţie"
+
+#~ msgid "Fifth Generation"
+#~ msgstr "A cincea generaţie"
+
+#~ msgid "Sixth Generation"
+#~ msgstr "A şasea generaţie"
+
+#~ msgid "Opening of '%s' for writing failed (%s)."
+#~ msgstr "Deschiderea '%s' pentru scriere eşuată (%s)."
+
+#~ msgid "Writing to '%s' failed (%s)."
+#~ msgstr "Scriere în '%s' eşuată (%s)."

Modified: libgpod/branches/upstream/current/po/sv.po
===================================================================
--- libgpod/branches/upstream/current/po/sv.po	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/po/sv.po	2009-06-19 20:28:03 UTC (rev 384)
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: sv\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-12-07 20:48-0500\n"
+"POT-Creation-Date: 2009-04-03 16:08-0400\n"
 "PO-Revision-Date: 2008-12-09 20:05+0100\n"
 "Last-Translator: Stefan Asserhäll <stefan.asserhall at comhem.se>\n"
 "Language-Team: Svenska <sv at li.org>\n"
@@ -16,33 +16,28 @@
 "Plural-Forms:  nplurals=2; plural=(n != 1);\n"
 "X-Generator: KBabel 1.11.4\n"
 
-#: ../src/db-artwork-parser.c:156
+#: ../src/db-artwork-parser.c:140
 #, c-format
 msgid "Unexpected mhod string type: %d\n"
 msgstr "Oväntad mhod strängtyp; %d\n"
 
-#: ../src/db-artwork-parser.c:476
+#: ../src/db-artwork-parser.c:460
 #, c-format
 msgid "Unexpected mhsd index: %d\n"
 msgstr "Oväntat mhsd index: %d\n"
 
-#: ../src/db-artwork-parser.c:522
+#: ../src/db-artwork-parser.c:540
 #, c-format
 msgid "Could not find corresponding track (dbid: %s) for artwork entry.\n"
 msgstr "Kunde inte hitta motsvarande spår (dbid: %s) för grafikpost.\n"
 
-#: ../src/db-artwork-parser.c:530
+#: ../src/db-artwork-parser.c:548
 #, c-format
 msgid "iTunesDB and ArtworkDB artwork sizes inconsistent (%d+%d != %d)\n"
 msgstr ""
 "Grafikstorlekar i iTunes databas och grafikdatabas inte konseventa (%d + %d !"
 "= %d)\n"
 
-#: ../src/db-artwork-parser.c:566
-#, c-format
-msgid "Could not find artwork entry (mhii id: %u) for track (dbid: %s).\n"
-msgstr "Kunde inte hitta motsvarande grafikpost (mhii id: %u) för spår (dbid: %s).\n"
-
 #: ../src/db-image-parser.c:91
 #, c-format
 msgid "Unexpected image type in mhni: %d, offset: %d\n"
@@ -73,284 +68,284 @@
 "Kunde inte hämta miniatyrbild (verkar finnas på iPod, men någon "
 "bildinformation är inte tillgänglig): filnamne: '%s'\n"
 
-#: ../src/itdb_device.c:256
+#: ../src/itdb_device.c:263
 msgid "Invalid"
 msgstr "Ogiltig"
 
-#: ../src/itdb_device.c:257 ../src/itdb_device.c:298
+#: ../src/itdb_device.c:264 ../src/itdb_device.c:305
 msgid "Unknown"
 msgstr "Okänd"
 
-#: ../src/itdb_device.c:258
+#: ../src/itdb_device.c:265
 msgid "Color"
 msgstr "Färg"
 
-#: ../src/itdb_device.c:259
+#: ../src/itdb_device.c:266
 msgid "Color U2"
 msgstr "Färg U2"
 
-#: ../src/itdb_device.c:260
+#: ../src/itdb_device.c:267
 msgid "Grayscale"
 msgstr "Gråskala"
 
-#: ../src/itdb_device.c:261
+#: ../src/itdb_device.c:268
 msgid "Grayscale U2"
 msgstr "Gråskala U2"
 
-#: ../src/itdb_device.c:262
+#: ../src/itdb_device.c:269
 msgid "Mini (Silver)"
 msgstr "Mini (silver)"
 
-#: ../src/itdb_device.c:263
+#: ../src/itdb_device.c:270
 msgid "Mini (Blue)"
 msgstr "Mini (blå)"
 
-#: ../src/itdb_device.c:264
+#: ../src/itdb_device.c:271
 msgid "Mini (Pink)"
 msgstr "Mini (rosa)"
 
-#: ../src/itdb_device.c:265
+#: ../src/itdb_device.c:272
 msgid "Mini (Green)"
 msgstr "Mini (grön)"
 
-#: ../src/itdb_device.c:266
+#: ../src/itdb_device.c:273
 msgid "Mini (Gold)"
 msgstr "Mini (guld)"
 
-#: ../src/itdb_device.c:267
+#: ../src/itdb_device.c:274
 msgid "Shuffle"
 msgstr "Shuffle"
 
-#: ../src/itdb_device.c:268
+#: ../src/itdb_device.c:275
 msgid "Nano (White)"
 msgstr "Nano (vit)"
 
-#: ../src/itdb_device.c:269
+#: ../src/itdb_device.c:276
 msgid "Nano (Black)"
 msgstr "Nano (svart)"
 
-#: ../src/itdb_device.c:270
+#: ../src/itdb_device.c:277
 msgid "Video (White)"
 msgstr "Video (vit)"
 
-#: ../src/itdb_device.c:271
+#: ../src/itdb_device.c:278
 msgid "Video (Black)"
 msgstr "Video (svart)"
 
-#: ../src/itdb_device.c:272
+#: ../src/itdb_device.c:279
 msgid "Mobile (1)"
 msgstr "Mobil (1)"
 
-#: ../src/itdb_device.c:273
+#: ../src/itdb_device.c:280
 msgid "Video U2"
 msgstr "Video U2"
 
-#: ../src/itdb_device.c:274
+#: ../src/itdb_device.c:281
 msgid "Nano (Silver)"
 msgstr "Nano (silver)"
 
-#: ../src/itdb_device.c:275
+#: ../src/itdb_device.c:282
 msgid "Nano (Blue)"
 msgstr "Nano (blå)"
 
-#: ../src/itdb_device.c:276
+#: ../src/itdb_device.c:283
 msgid "Nano (Green)"
 msgstr "Nano (grön)"
 
-#: ../src/itdb_device.c:277
+#: ../src/itdb_device.c:284
 msgid "Nano (Pink)"
 msgstr "Nano (rosa)"
 
-#: ../src/itdb_device.c:278
+#: ../src/itdb_device.c:285
 msgid "Nano (Red)"
 msgstr "Nano (röd)"
 
-#: ../src/itdb_device.c:279
+#: ../src/itdb_device.c:286
 msgid "Nano (Yellow)"
 msgstr "Nano (gul)"
 
-#: ../src/itdb_device.c:280
+#: ../src/itdb_device.c:287
 msgid "Nano (Purple)"
 msgstr "Nano (violett)"
 
-#: ../src/itdb_device.c:281
+#: ../src/itdb_device.c:288
 msgid "Nano (Orange)"
 msgstr "Nano (orange)"
 
-#: ../src/itdb_device.c:282
+#: ../src/itdb_device.c:289
 msgid "iPhone (1)"
 msgstr "iPhone (1)"
 
-#: ../src/itdb_device.c:283
+#: ../src/itdb_device.c:290
 msgid "Shuffle (Silver)"
 msgstr "Shuffle (silver)"
 
-#: ../src/itdb_device.c:284
+#: ../src/itdb_device.c:291
 msgid "Shuffle (Pink)"
 msgstr "Shuffle (rosa)"
 
-#: ../src/itdb_device.c:285
+#: ../src/itdb_device.c:292
 msgid "Shuffle (Blue)"
 msgstr "Shuffle (blå)"
 
-#: ../src/itdb_device.c:286
+#: ../src/itdb_device.c:293
 msgid "Shuffle (Green)"
 msgstr "Shuffle (grön)"
 
-#: ../src/itdb_device.c:287
+#: ../src/itdb_device.c:294
 msgid "Shuffle (Orange)"
 msgstr "Shuffle (orange)"
 
-#: ../src/itdb_device.c:288
+#: ../src/itdb_device.c:295
 msgid "Shuffle (Purple)"
 msgstr "Shuffle (violett)"
 
-#: ../src/itdb_device.c:289
+#: ../src/itdb_device.c:296
 msgid "Shuffle (Red)"
 msgstr "Shuffle (röd)"
 
-#: ../src/itdb_device.c:290
+#: ../src/itdb_device.c:297
 msgid "Classic (Silver)"
 msgstr "Klassisk (silver)"
 
-#: ../src/itdb_device.c:291
+#: ../src/itdb_device.c:298
 msgid "Classic (Black)"
 msgstr "Klassisk (svart)"
 
-#: ../src/itdb_device.c:292
+#: ../src/itdb_device.c:299
 msgid "Touch (Black)"
 msgstr "Touch (svart)"
 
-#: ../src/itdb_device.c:299
+#: ../src/itdb_device.c:306
 msgid "Regular (1st Gen.)"
 msgstr "Vanlig (1:a gen.)"
 
-#: ../src/itdb_device.c:300
+#: ../src/itdb_device.c:307
 msgid "Regular (2nd Gen.)"
 msgstr "Vanlig (2:a gen.)"
 
-#: ../src/itdb_device.c:301
+#: ../src/itdb_device.c:308
 msgid "Regular (3rd Gen.)"
 msgstr "Vanlig (3:e gen.)"
 
-#: ../src/itdb_device.c:302
+#: ../src/itdb_device.c:309
 msgid "Regular (4th Gen.)"
 msgstr "Vanlig (4:e gen.)"
 
-#: ../src/itdb_device.c:303
+#: ../src/itdb_device.c:310
 msgid "Photo"
 msgstr "Foto"
 
-#: ../src/itdb_device.c:304
+#: ../src/itdb_device.c:311
 msgid "Mobile Phones"
 msgstr "Mobiltelefoner"
 
-#: ../src/itdb_device.c:305
+#: ../src/itdb_device.c:312
 msgid "Mini (1st Gen.)"
 msgstr "Mini (1:a gen.)"
 
-#: ../src/itdb_device.c:306
+#: ../src/itdb_device.c:313
 msgid "Mini (2nd Gen.)"
 msgstr "Mini (2:a gen.)"
 
-#: ../src/itdb_device.c:307
+#: ../src/itdb_device.c:314
 msgid "Shuffle (1st Gen.)"
 msgstr "Shuffle (1:a gen.)"
 
-#: ../src/itdb_device.c:308
+#: ../src/itdb_device.c:315
 msgid "Shuffle (2nd Gen.)"
 msgstr "Shuffle (2:a gen.)"
 
-#: ../src/itdb_device.c:309
+#: ../src/itdb_device.c:316
 msgid "Shuffle (3rd Gen.)"
 msgstr "Shuffle (3:e gen.)"
 
-#: ../src/itdb_device.c:310
+#: ../src/itdb_device.c:317
 msgid "Nano (1st Gen.)"
 msgstr "Nano (1:a gen.)"
 
-#: ../src/itdb_device.c:311
+#: ../src/itdb_device.c:318
 msgid "Nano (2nd Gen.)"
 msgstr "Nano (2:a gen.)"
 
-#: ../src/itdb_device.c:312
+#: ../src/itdb_device.c:319
 msgid "Nano Video (3rd Gen.)"
 msgstr "Nano video (3:e gen.)"
 
-#: ../src/itdb_device.c:313
+#: ../src/itdb_device.c:320
 msgid "Nano Video (4th Gen.)"
 msgstr "Nano video (4:e gen.)"
 
-#: ../src/itdb_device.c:314
+#: ../src/itdb_device.c:321
 msgid "Video (1st Gen.)"
 msgstr "Video (1:a gen.)"
 
-#: ../src/itdb_device.c:315
+#: ../src/itdb_device.c:322
 msgid "Video (2nd Gen.)"
 msgstr "Video (2:a gen.)"
 
-#: ../src/itdb_device.c:316 ../src/itdb_device.c:317
+#: ../src/itdb_device.c:323 ../src/itdb_device.c:324
 msgid "Classic"
 msgstr "Klassisk"
 
-#: ../src/itdb_device.c:318
+#: ../src/itdb_device.c:325
 msgid "Touch"
 msgstr "Touch"
 
-#: ../src/itdb_device.c:319
+#: ../src/itdb_device.c:326
 msgid "iPhone"
 msgstr "iPhone"
 
-#: ../src/itdb_device.c:320 ../src/itdb_device.c:321
+#: ../src/itdb_device.c:327 ../src/itdb_device.c:328
 msgid "Unused"
 msgstr "Oanvänd"
 
-#: ../src/itdb_device.c:874
+#: ../src/itdb_device.c:928
 #, c-format
 msgid "Could not open '%s' for writing."
 msgstr "Kunde inte öppna '%s' för skrivning."
 
-#: ../src/itdb_device.c:883
+#: ../src/itdb_device.c:937
 #, c-format
 msgid "Device directory does not exist."
 msgstr "Enhetskatalog finns inte."
 
-#: ../src/itdb_itunesdb.c:462
+#: ../src/itdb_itunesdb.c:507
 #, c-format
 msgid "Illegal seek to offset %ld (length %ld) in file '%s'."
 msgstr "Ogiltig sökning till position %ld (längd %ld) i filen '%s'."
 
-#: ../src/itdb_itunesdb.c:915
+#: ../src/itdb_itunesdb.c:910
 #, c-format
 msgid "Not a Play Counts file: '%s' (missing mhdp header)."
 msgstr "Inte en uppspelningsdatafil: '%s' (saknar mhdp-huvud)."
 
-#: ../src/itdb_itunesdb.c:930
+#: ../src/itdb_itunesdb.c:925
 #, c-format
 msgid "Play Counts file ('%s'): header length smaller than expected (%d<96)."
 msgstr "Uppspelningsdatafil ('%s'): Huvudlängd mindre än väntat (%d < 96)"
 
-#: ../src/itdb_itunesdb.c:944
+#: ../src/itdb_itunesdb.c:939
 #, c-format
 msgid "Play Counts file ('%s'): entry length smaller than expected (%d<12)."
 msgstr "Uppspelningsdatafil ('%s'): Postlängd mindre än väntat (%d < 12)"
 
-#: ../src/itdb_itunesdb.c:1019
+#: ../src/itdb_itunesdb.c:1014
 #, c-format
 msgid "iTunesStats file ('%s'): entry length smaller than expected (%d<18)."
 msgstr "iTunes statistikfil ('%s'): Postlängd mindre än väntat (%d < 18)"
 
-#: ../src/itdb_itunesdb.c:1338
+#: ../src/itdb_itunesdb.c:1333
 #, c-format
 msgid "iTunesDB corrupt: no MHOD at offset %ld in file '%s'."
 msgstr "iTunes databas skadad: Ingen MHOD på position %ld i filen '%s'."
 
-#: ../src/itdb_itunesdb.c:1524
+#: ../src/itdb_itunesdb.c:1519
 #, c-format
 msgid "Unknown smart rule action at %ld: %x. Trying to continue.\n"
 msgstr "Okänd smart regelåtgärd vid %ld: %x. Försöker fortsätta.\n"
 
-#: ../src/itdb_itunesdb.c:1555
+#: ../src/itdb_itunesdb.c:1550
 #, c-format
 msgid ""
 "Length of smart playlist rule field (%d) not as expected. Trying to continue "
@@ -359,12 +354,12 @@
 "Regelfältets längd (%d) i den smarta spellistan är inte den förväntade. "
 "Försöker fortsätta ändå.\n"
 
-#: ../src/itdb_itunesdb.c:1598
+#: ../src/itdb_itunesdb.c:1593
 #, c-format
 msgid "iTunesDB corrupt: no SLst at offset %ld in file '%s'."
 msgstr "iTunes databas skadad: Ingen SLst på position %ld i filen '%s'."
 
-#: ../src/itdb_itunesdb.c:1611
+#: ../src/itdb_itunesdb.c:1606
 #, c-format
 msgid ""
 "Encountered unknown MHOD type (%d) while parsing the iTunesDB. Ignoring.\n"
@@ -374,31 +369,34 @@
 "den.\n"
 "\n"
 
-#: ../src/itdb_itunesdb.c:1691
+#: ../src/itdb_itunesdb.c:1689
 #, c-format
 msgid "iTunesDB corrupt: hunk length 0 for hunk at %ld in file '%s'."
-msgstr "iTunes databas skadad: Datalängd 0 för data på position %ld i filen '%s'."
+msgstr ""
+"iTunes databas skadad: Datalängd 0 för data på position %ld i filen '%s'."
 
-#: ../src/itdb_itunesdb.c:1704
+#: ../src/itdb_itunesdb.c:1702
 #, c-format
-msgid "iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
+msgid ""
+"iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
 msgstr ""
 "iTunes databas skadad: NÃ¥gon sektion '%s' hittades inte i sektion '%s' med "
 "början på %ld."
 
-#: ../src/itdb_itunesdb.c:1718
+#: ../src/itdb_itunesdb.c:1716
 #, c-format
 msgid ""
 "header length of '%s' smaller than expected (%d < %d) at offset %ld in file "
 "'%s'."
-msgstr "Huvudlängd för '%s' mindre än väntat (%d < %d) på position %ld i filen '%s'."
+msgstr ""
+"Huvudlängd för '%s' mindre än väntat (%d < %d) på position %ld i filen '%s'."
 
-#: ../src/itdb_itunesdb.c:1803
+#: ../src/itdb_itunesdb.c:1801
 #, c-format
 msgid "Not a iTunesDB: '%s' (missing mhdb header)."
 msgstr "Inte en iTunes databas: '%s' (saknar mhdb-huvud)."
 
-#: ../src/itdb_itunesdb.c:1820
+#: ../src/itdb_itunesdb.c:1818
 #, c-format
 msgid ""
 "iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). "
@@ -407,39 +405,34 @@
 "iTunes databas ('%s'): Huvudlängd för mhsd-data mindre än väntat (%d < 32). "
 "Avbryter."
 
-#: ../src/itdb_itunesdb.c:1841
+#: ../src/itdb_itunesdb.c:1839
 #, c-format
 msgid "iTunesDB '%s' corrupt: mhsd expected at %ld."
 msgstr "iTunes databas '%s' skadad: Förväntade mhsd på position %ld."
 
-#: ../src/itdb_itunesdb.c:1958
+#: ../src/itdb_itunesdb.c:1944
 #, c-format
 msgid "Number of MHODs in mhip at %ld inconsistent in file '%s'."
 msgstr "Antal MHOD i mhip på position %ld inte konsekvent i filen '%s'."
 
-#: ../src/itdb_itunesdb.c:1976
+#: ../src/itdb_itunesdb.c:2121
 #, c-format
-msgid "Itdb_Track ID '%d' not found.\n"
-msgstr "ITunes databas spår-id '%d' hittades inte.\n"
-
-#: ../src/itdb_itunesdb.c:2146
-#, c-format
 msgid "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
 msgstr "Antal MHOD i mhyp på position %ld inte konsekvent i filen '%s'."
 
-#: ../src/itdb_itunesdb.c:2156
+#: ../src/itdb_itunesdb.c:2131
 msgid "Master-PL"
 msgstr "Huvudspellista"
 
-#: ../src/itdb_itunesdb.c:2160
+#: ../src/itdb_itunesdb.c:2135
 msgid "Podcasts"
 msgstr "Podradiosändningar"
 
-#: ../src/itdb_itunesdb.c:2162
+#: ../src/itdb_itunesdb.c:2137
 msgid "Playlist"
 msgstr "Spellista"
 
-#: ../src/itdb_itunesdb.c:2184
+#: ../src/itdb_itunesdb.c:2159
 #, c-format
 msgid ""
 "iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %"
@@ -448,37 +441,42 @@
 "iTunes databas skadad: Antal mhip sektioner inte konsekvent i mhyp med "
 "början på %ld i filen '%s'."
 
-#: ../src/itdb_itunesdb.c:2527
+#: ../src/itdb_itunesdb.c:2180
+#, c-format
+msgid "Itdb_Track ID '%d' not found.\n"
+msgstr "ITunes databas spår-id '%d' hittades inte.\n"
+
+#: ../src/itdb_itunesdb.c:2524
 msgid "OTG Playlist"
 msgstr "OTG-spellista"
 
-#: ../src/itdb_itunesdb.c:2545
+#: ../src/itdb_itunesdb.c:2542
 #, c-format
 msgid "Not a OTG playlist file: '%s' (missing mhpo header)."
 msgstr "Inte en OTG-spellistefil: '%s' (saknar mhpo-huvud)."
 
-#: ../src/itdb_itunesdb.c:2559
+#: ../src/itdb_itunesdb.c:2556
 #, c-format
 msgid "OTG playlist file ('%s'): header length smaller than expected (%d<20)."
 msgstr "OTG-spellistefil ('%s'): Huvudlängd mindre än väntat (%d < 20)"
 
-#: ../src/itdb_itunesdb.c:2571
+#: ../src/itdb_itunesdb.c:2568
 #, c-format
 msgid "OTG playlist file ('%s'): entry length smaller than expected (%d<4)."
 msgstr "OTG-spellistefil ('%s'): Postlängd mindre än väntat (%d < 4)."
 
-#: ../src/itdb_itunesdb.c:2606
+#: ../src/itdb_itunesdb.c:2603
 #, c-format
 msgid "OTG playlist file '%s': reference to non-existent track (%d)."
 msgstr "OTG-spellistefil '%s': Referens till spår som inte finns (%d)."
 
-#: ../src/itdb_itunesdb.c:2651
+#: ../src/itdb_itunesdb.c:2648
 #, c-format
 msgid "OTG Playlist %d"
 msgstr "OTG-spellista %d"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2719
+#: ../src/itdb_itunesdb.c:2716
 msgid ""
 "iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to "
 "continue.\n"
@@ -487,7 +485,7 @@
 "fortsätta.\n"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2782
+#: ../src/itdb_itunesdb.c:2779
 msgid ""
 "iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. "
 "Trying to continue.\n"
@@ -495,7 +493,7 @@
 "iTunes databas möjligen skadad: Antal spellistor (mhyp-data) inte "
 "konsekvent. Försöker fortsätta.\n"
 
-#: ../src/itdb_itunesdb.c:2829
+#: ../src/itdb_itunesdb.c:2826
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section "
@@ -504,7 +502,7 @@
 "iTunes databas '%s' skadad: Kunde inte hitta spårlista (någon mhsd av typ 1 "
 "hittades inte)"
 
-#: ../src/itdb_itunesdb.c:2858
+#: ../src/itdb_itunesdb.c:2855
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 "
@@ -513,96 +511,98 @@
 "iTunes databas '%s' skadad: Kunde inte hitta spellistor (någon mhsd av typ 2 "
 "eller typ 3 hittades)"
 
-#: ../src/itdb_itunesdb.c:2880
+#: ../src/itdb_itunesdb.c:2877
 #, c-format
 msgid "iTunes directory not found: '%s' (or similar)."
 msgstr "iTunes katalog hittades inte: '%s' (eller liknande)."
 
-#: ../src/itdb_itunesdb.c:2897
+#: ../src/itdb_itunesdb.c:2894
 #, c-format
 msgid "Music directory not found: '%s' (or similar)."
 msgstr "Musikkatalog hittades inte: '%s' (eller liknande)."
 
-#: ../src/itdb_itunesdb.c:2915
+#: ../src/itdb_itunesdb.c:2912
 #, c-format
 msgid "Control directory not found: '%s' (or similar)."
 msgstr "Styrkatalog hittades inte: '%s' (eller liknande)."
 
-#: ../src/itdb_itunesdb.c:3036
+#: ../src/itdb_itunesdb.c:3033
 #, c-format
 msgid "File not found: '%s'."
 msgstr "Filen hittades inte: '%s'."
 
-#: ../src/itdb_itunesdb.c:5410
+#: ../src/itdb_itunesdb.c:5533
 #, c-format
 msgid "Path not found: '%s' (or similar)."
 msgstr "Sökväg hittades inte: '%s' (eller liknande)."
 
-#: ../src/itdb_itunesdb.c:5616
+#: ../src/itdb_itunesdb.c:5742
 #, c-format
 msgid "Error renaming '%s' to '%s' (%s)."
 msgstr "Fel vid byte av namn på '%s' till '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5633 ../src/itdb_itunesdb.c:5650
+#: ../src/itdb_itunesdb.c:5759 ../src/itdb_itunesdb.c:5776
+#: ../src/itdb_itunesdb.c:5793
 #, c-format
 msgid "Error removing '%s' (%s)."
 msgstr "Fel vid borttagning av '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:5812 ../src/itdb_itunesdb.c:5985
+#: ../src/itdb_itunesdb.c:5960 ../src/itdb_itunesdb.c:6133
 #, c-format
 msgid "Mountpoint not set."
 msgstr "Monteringsplats inte inställd."
 
-#: ../src/itdb_itunesdb.c:5852
+#: ../src/itdb_itunesdb.c:6000
 #, c-format
 msgid "No 'F..' directories found in '%s'."
 msgstr "NÃ¥gra 'F..'-kataloger hittades inte i '%s'."
 
-#: ../src/itdb_itunesdb.c:5873
+#: ../src/itdb_itunesdb.c:6021
 #, c-format
 msgid "Path not found: '%s'."
 msgstr "Sökväg hittades inte: '%s'."
 
-#: ../src/itdb_itunesdb.c:5994
+#: ../src/itdb_itunesdb.c:6142
 #, c-format
 msgid "'%s' could not be accessed (%s)."
 msgstr "Kunde inte komma åt '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6004
+#: ../src/itdb_itunesdb.c:6152
 #, c-format
-msgid "Destination file '%s' does not appear to be on the iPod mounted at '%s'."
+msgid ""
+"Destination file '%s' does not appear to be on the iPod mounted at '%s'."
 msgstr "Målfilen '%s' verkar inte finnas på iPod monterad som '%s'."
 
-#: ../src/itdb_itunesdb.c:6212
+#: ../src/itdb_itunesdb.c:6360
 #, c-format
 msgid "Error opening '%s' for reading (%s)."
 msgstr "Fel när '%s' skulle öppnas för läsning (%s)."
 
-#: ../src/itdb_itunesdb.c:6224
+#: ../src/itdb_itunesdb.c:6372
 #, c-format
 msgid "Error opening '%s' for writing (%s)."
 msgstr "Fel när '%s' skulle öppnas för skrivning (%s)."
 
-#: ../src/itdb_itunesdb.c:6240
+#: ../src/itdb_itunesdb.c:6388
 #, c-format
 msgid "Error while reading from '%s' (%s)."
 msgstr "Fel vid läsning från '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6255
+#: ../src/itdb_itunesdb.c:6403
 #, c-format
 msgid "Error while writing to '%s' (%s)."
 msgstr "Fel vid skrivning till '%s' (%s)."
 
-#: ../src/itdb_itunesdb.c:6268 ../src/itdb_itunesdb.c:6278
+#: ../src/itdb_itunesdb.c:6416 ../src/itdb_itunesdb.c:6426
 #, c-format
 msgid "Error when closing '%s' (%s)."
 msgstr "Fel när '%s' skulle stängas (%s)."
 
-#: ../src/itdb_itunesdb.c:6702
+#: ../src/itdb_itunesdb.c:6856
 msgid "iPod"
 msgstr "iPod"
 
-#: ../src/itdb_itunesdb.c:7024
+#: ../src/itdb_itunesdb.c:7178
 #, c-format
 msgid "Problem creating iPod directory or file: '%s'."
 msgstr "Problem att skapa iPod-katalog eller fil: '%s'."
@@ -619,7 +619,8 @@
 #: ../src/itdb_photoalbum.c:386
 #, c-format
 msgid "You need to specify the iPod model used before photos can be added."
-msgstr "Du måste ange vilken iPod-modell som används innan foton kan läggas till."
+msgstr ""
+"Du måste ange vilken iPod-modell som används innan foton kan läggas till."
 
 #: ../src/itdb_photoalbum.c:407
 #, c-format
@@ -646,7 +647,8 @@
 
 #: ../src/itdb_photoalbum.c:468
 #, c-format
-msgid "Library compiled without gdk-pixbuf support. Picture support is disabled."
+msgid ""
+"Library compiled without gdk-pixbuf support. Picture support is disabled."
 msgstr ""
 "Biblioteket kompilerat utan stöd för gdk-pixbuf. Stöd för bilder är "
 "inaktiverat."
@@ -771,7 +773,8 @@
 
 #: ../tests/test-photos.c:242
 #, c-format
-msgid "Error reading iPod photo database, will attempt to create a new database\n"
+msgid ""
+"Error reading iPod photo database, will attempt to create a new database\n"
 msgstr "Fel vid läsning av iPod fotodatabas, försöker skapa en ny databas\n"
 
 #: ../tests/test-photos.c:267
@@ -809,6 +812,11 @@
 msgid "Error initialising iPod, unknown error\n"
 msgstr "Fel vid initiering av iPod, okänt fel\n"
 
+#: ../tools/ipod-time-sync.c:37
+#, fuzzy, c-format
+msgid "usage: %s <device> [timezone]\n"
+msgstr "användning: %s <enhet> <monteringsplats>\n"
+
 #: ../tools/read-sysinfoextended-sgutils.c:39
 #, c-format
 msgid "usage: %s <device> <mountpoint>\n"
@@ -834,3 +842,7 @@
 msgid "Couldn't write SysInfoExtended to %s"
 msgstr "Kunde inte skriva utökad systeminformation på %s"
 
+#~ msgid "Could not find artwork entry (mhii id: %u) for track (dbid: %s).\n"
+#~ msgstr ""
+#~ "Kunde inte hitta motsvarande grafikpost (mhii id: %u) för spår (dbid: %"
+#~ "s).\n"

Modified: libgpod/branches/upstream/current/po/zh_CN.po
===================================================================
--- libgpod/branches/upstream/current/po/zh_CN.po	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/po/zh_CN.po	2009-06-19 20:28:03 UTC (rev 384)
@@ -7,8 +7,8 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: libgpod 0.7.0\n"
-"Report-Msgid-Bugs-To: gtkpod-devel at lists.sourceforge.net\n"
-"POT-Creation-Date: 2008-12-07 20:48-0500\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-04-03 16:08-0400\n"
 "PO-Revision-Date: 2009-1-5 20:15+0900\n"
 "Last-Translator: Tan Zhxin <tanzhxin at gmail.com>\n"
 "Language-Team: n/a\n"
@@ -16,31 +16,26 @@
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../src/db-artwork-parser.c:156
+#: ../src/db-artwork-parser.c:140
 #, c-format
 msgid "Unexpected mhod string type: %d\n"
 msgstr "未预期的mhod字符串:%d\n"
 
-#: ../src/db-artwork-parser.c:476
+#: ../src/db-artwork-parser.c:460
 #, c-format
 msgid "Unexpected mhsd index: %d\n"
 msgstr "未预期的mhsd索引:%d\n"
 
-#: ../src/db-artwork-parser.c:522
+#: ../src/db-artwork-parser.c:540
 #, c-format
 msgid "Could not find corresponding track (dbid: %s) for artwork entry.\n"
 msgstr "无法找到对应专辑封面的音轨(dbid: %s)。\n"
 
-#: ../src/db-artwork-parser.c:530
+#: ../src/db-artwork-parser.c:548
 #, c-format
 msgid "iTunesDB and ArtworkDB artwork sizes inconsistent (%d+%d != %d)\n"
 msgstr "iTunesDB和ArtworkDB中专辑封面的文件大小不一致 (%d+%d != %d)\n"
 
-#: ../src/db-artwork-parser.c:566
-#, c-format
-msgid "Could not find artwork entry (mhii id: %u) for track (dbid: %s).\n"
-msgstr "无法找到对应音轨(dbid:%2$s)的专辑封面(mhii id:%1$u)\n"
-
 #: ../src/db-image-parser.c:91
 #, c-format
 msgid "Unexpected image type in mhni: %d, offset: %d\n"
@@ -67,300 +62,298 @@
 msgid ""
 "Unable to retrieve thumbnail (appears to be on iPod, but no image info "
 "available): filename: '%s'\n"
-msgstr ""
-"无法调出缩略图(iPod中存在,但是无法获得图像信息):文件'%s'\n"
+msgstr "无法调出缩略图(iPod中存在,但是无法获得图像信息):文件'%s'\n"
 
-#: ../src/itdb_device.c:256
+#: ../src/itdb_device.c:263
 msgid "Invalid"
 msgstr "无效"
 
-#: ../src/itdb_device.c:257 ../src/itdb_device.c:298
+#: ../src/itdb_device.c:264 ../src/itdb_device.c:305
 msgid "Unknown"
 msgstr "未知"
 
-#: ../src/itdb_device.c:258
+#: ../src/itdb_device.c:265
 msgid "Color"
 msgstr "Color"
 
-#: ../src/itdb_device.c:259
+#: ../src/itdb_device.c:266
 msgid "Color U2"
 msgstr "Color U2"
 
-#: ../src/itdb_device.c:260
+#: ../src/itdb_device.c:267
 msgid "Grayscale"
 msgstr "Grayscale"
 
-#: ../src/itdb_device.c:261
+#: ../src/itdb_device.c:268
 msgid "Grayscale U2"
 msgstr "Grayscale U2"
 
-#: ../src/itdb_device.c:262
+#: ../src/itdb_device.c:269
 msgid "Mini (Silver)"
 msgstr "Mini(银)"
 
-#: ../src/itdb_device.c:263
+#: ../src/itdb_device.c:270
 msgid "Mini (Blue)"
 msgstr "Mini(蓝)"
 
-#: ../src/itdb_device.c:264
+#: ../src/itdb_device.c:271
 msgid "Mini (Pink)"
 msgstr "Mini(粉)"
 
-#: ../src/itdb_device.c:265
+#: ../src/itdb_device.c:272
 msgid "Mini (Green)"
 msgstr "Mini(绿)"
 
-#: ../src/itdb_device.c:266
+#: ../src/itdb_device.c:273
 msgid "Mini (Gold)"
 msgstr "Mini(金)"
 
-#: ../src/itdb_device.c:267
+#: ../src/itdb_device.c:274
 msgid "Shuffle"
 msgstr "Shuffle"
 
-#: ../src/itdb_device.c:268
+#: ../src/itdb_device.c:275
 msgid "Nano (White)"
 msgstr "Nano(白)"
 
-#: ../src/itdb_device.c:269
+#: ../src/itdb_device.c:276
 msgid "Nano (Black)"
 msgstr "Nano(黑)"
 
-#: ../src/itdb_device.c:270
+#: ../src/itdb_device.c:277
 msgid "Video (White)"
 msgstr "Video(白)"
 
-#: ../src/itdb_device.c:271
+#: ../src/itdb_device.c:278
 msgid "Video (Black)"
 msgstr "Video(黑)"
 
-#: ../src/itdb_device.c:272
+#: ../src/itdb_device.c:279
 msgid "Mobile (1)"
 msgstr "Mobile(1代)"
 
-#: ../src/itdb_device.c:273
+#: ../src/itdb_device.c:280
 msgid "Video U2"
 msgstr "Video U2"
 
-#: ../src/itdb_device.c:274
+#: ../src/itdb_device.c:281
 msgid "Nano (Silver)"
 msgstr "Nano(银)"
 
-#: ../src/itdb_device.c:275
+#: ../src/itdb_device.c:282
 msgid "Nano (Blue)"
 msgstr "Nano(蓝)"
 
-#: ../src/itdb_device.c:276
+#: ../src/itdb_device.c:283
 msgid "Nano (Green)"
 msgstr "Nano(绿)"
 
-#: ../src/itdb_device.c:277
+#: ../src/itdb_device.c:284
 msgid "Nano (Pink)"
 msgstr "Nano(粉)"
 
-#: ../src/itdb_device.c:278
+#: ../src/itdb_device.c:285
 msgid "Nano (Red)"
 msgstr "Nano(红)"
 
-#: ../src/itdb_device.c:279
+#: ../src/itdb_device.c:286
 msgid "Nano (Yellow)"
 msgstr "Nano(黄)"
 
-#: ../src/itdb_device.c:280
+#: ../src/itdb_device.c:287
 msgid "Nano (Purple)"
 msgstr "Nano(ç´«)"
 
-#: ../src/itdb_device.c:281
+#: ../src/itdb_device.c:288
 msgid "Nano (Orange)"
 msgstr "Nano(æ©™)"
 
-#: ../src/itdb_device.c:282
+#: ../src/itdb_device.c:289
 msgid "iPhone (1)"
 msgstr "iPhone(1代)"
 
-#: ../src/itdb_device.c:283
+#: ../src/itdb_device.c:290
 msgid "Shuffle (Silver)"
 msgstr "Shuffle(银)"
 
-#: ../src/itdb_device.c:284
+#: ../src/itdb_device.c:291
 msgid "Shuffle (Pink)"
 msgstr "Shuffle(粉)"
 
-#: ../src/itdb_device.c:285
+#: ../src/itdb_device.c:292
 msgid "Shuffle (Blue)"
 msgstr "Shuffle(蓝)"
 
-#: ../src/itdb_device.c:286
+#: ../src/itdb_device.c:293
 msgid "Shuffle (Green)"
 msgstr "Shuffle(绿)"
 
-#: ../src/itdb_device.c:287
+#: ../src/itdb_device.c:294
 msgid "Shuffle (Orange)"
 msgstr "Shuffle(æ©™)"
 
-#: ../src/itdb_device.c:288
+#: ../src/itdb_device.c:295
 msgid "Shuffle (Purple)"
 msgstr "Shuffle(ç´«)"
 
-#: ../src/itdb_device.c:289
+#: ../src/itdb_device.c:296
 msgid "Shuffle (Red)"
 msgstr "Shuffle(红)"
 
-#: ../src/itdb_device.c:290
+#: ../src/itdb_device.c:297
 msgid "Classic (Silver)"
 msgstr "Classic(银)"
 
-#: ../src/itdb_device.c:291
+#: ../src/itdb_device.c:298
 msgid "Classic (Black)"
 msgstr "Classic(黑)"
 
-#: ../src/itdb_device.c:292
+#: ../src/itdb_device.c:299
 msgid "Touch (Black)"
 msgstr "Touch(黑)"
 
-#: ../src/itdb_device.c:299
+#: ../src/itdb_device.c:306
 msgid "Regular (1st Gen.)"
 msgstr "标准(1代)"
 
-#: ../src/itdb_device.c:300
+#: ../src/itdb_device.c:307
 msgid "Regular (2nd Gen.)"
 msgstr "标准(2代)"
 
-#: ../src/itdb_device.c:301
+#: ../src/itdb_device.c:308
 msgid "Regular (3rd Gen.)"
 msgstr "标准(3代)"
 
-#: ../src/itdb_device.c:302
+#: ../src/itdb_device.c:309
 msgid "Regular (4th Gen.)"
 msgstr "标准(4代)"
 
-#: ../src/itdb_device.c:303
+#: ../src/itdb_device.c:310
 msgid "Photo"
 msgstr "Photo"
 
-#: ../src/itdb_device.c:304
+#: ../src/itdb_device.c:311
 msgid "Mobile Phones"
 msgstr "Mobile Phones"
 
-#: ../src/itdb_device.c:305
+#: ../src/itdb_device.c:312
 msgid "Mini (1st Gen.)"
 msgstr "Mini(1代)"
 
-#: ../src/itdb_device.c:306
+#: ../src/itdb_device.c:313
 msgid "Mini (2nd Gen.)"
 msgstr "Mini(2代)"
 
-#: ../src/itdb_device.c:307
+#: ../src/itdb_device.c:314
 msgid "Shuffle (1st Gen.)"
 msgstr "Shuffle(1代)"
 
-#: ../src/itdb_device.c:308
+#: ../src/itdb_device.c:315
 msgid "Shuffle (2nd Gen.)"
 msgstr "Shuffle(2代)"
 
-#: ../src/itdb_device.c:309
+#: ../src/itdb_device.c:316
 msgid "Shuffle (3rd Gen.)"
 msgstr "Shuffle(3代)"
 
-#: ../src/itdb_device.c:310
+#: ../src/itdb_device.c:317
 msgid "Nano (1st Gen.)"
 msgstr "Nano(1代)"
 
-#: ../src/itdb_device.c:311
+#: ../src/itdb_device.c:318
 msgid "Nano (2nd Gen.)"
 msgstr "Nano(2代)"
 
-#: ../src/itdb_device.c:312
+#: ../src/itdb_device.c:319
 msgid "Nano Video (3rd Gen.)"
 msgstr "Nano Video(3代)"
 
-#: ../src/itdb_device.c:313
+#: ../src/itdb_device.c:320
 msgid "Nano Video (4th Gen.)"
 msgstr "Nano Video(4代)"
 
-#: ../src/itdb_device.c:314
+#: ../src/itdb_device.c:321
 msgid "Video (1st Gen.)"
 msgstr "Video(1代)"
 
-#: ../src/itdb_device.c:315
+#: ../src/itdb_device.c:322
 msgid "Video (2nd Gen.)"
 msgstr "Video(2代)"
 
-#: ../src/itdb_device.c:316 ../src/itdb_device.c:317
+#: ../src/itdb_device.c:323 ../src/itdb_device.c:324
 msgid "Classic"
 msgstr "Classic"
 
-#: ../src/itdb_device.c:318
+#: ../src/itdb_device.c:325
 msgid "Touch"
 msgstr "Touch"
 
-#: ../src/itdb_device.c:319
+#: ../src/itdb_device.c:326
 msgid "iPhone"
 msgstr "iPhone"
 
-#: ../src/itdb_device.c:320 ../src/itdb_device.c:321
+#: ../src/itdb_device.c:327 ../src/itdb_device.c:328
 msgid "Unused"
 msgstr "未使用"
 
-#: ../src/itdb_device.c:874
+#: ../src/itdb_device.c:928
 #, c-format
 msgid "Could not open '%s' for writing."
 msgstr "无法打开'%s'写入。"
 
-#: ../src/itdb_device.c:883
+#: ../src/itdb_device.c:937
 #, c-format
 msgid "Device directory does not exist."
 msgstr "设备目录不存在。"
 
-#: ../src/itdb_itunesdb.c:462
+#: ../src/itdb_itunesdb.c:507
 #, c-format
 msgid "Illegal seek to offset %ld (length %ld) in file '%s'."
 msgstr "超出文件'%3$s'(长度%2$ld)搜索位置%1$ld"
 
-#: ../src/itdb_itunesdb.c:915
+#: ../src/itdb_itunesdb.c:910
 #, c-format
 msgid "Not a Play Counts file: '%s' (missing mhdp header)."
 msgstr "不是一个播放次数记录文件:'%s'(缺少mhdp头)"
 
-#: ../src/itdb_itunesdb.c:930
+#: ../src/itdb_itunesdb.c:925
 #, c-format
 msgid "Play Counts file ('%s'): header length smaller than expected (%d<96)."
 msgstr "播放次数记录文件('%s'): 文件头长度小于预期(%d<96)。"
 
-#: ../src/itdb_itunesdb.c:944
+#: ../src/itdb_itunesdb.c:939
 #, c-format
 msgid "Play Counts file ('%s'): entry length smaller than expected (%d<12)."
 msgstr "播放次数记录文件('%s'): 项目长度小于预期(%d<12)。"
 
-#: ../src/itdb_itunesdb.c:1019
+#: ../src/itdb_itunesdb.c:1014
 #, c-format
 msgid "iTunesStats file ('%s'): entry length smaller than expected (%d<18)."
 msgstr "iTunesStats文件('%s'):项目长度小于预期(%d<18)。"
 
-#: ../src/itdb_itunesdb.c:1338
+#: ../src/itdb_itunesdb.c:1333
 #, c-format
 msgid "iTunesDB corrupt: no MHOD at offset %ld in file '%s'."
 msgstr "iTunesDB损坏:文件'%2$s'中 %1$ld 位置没有MHOD。"
 
-#: ../src/itdb_itunesdb.c:1524
+#: ../src/itdb_itunesdb.c:1519
 #, c-format
 msgid "Unknown smart rule action at %ld: %x. Trying to continue.\n"
 msgstr "%ld位置有未知的smart规则动作:%x,尝试继续。\n"
 
-#: ../src/itdb_itunesdb.c:1555
+#: ../src/itdb_itunesdb.c:1550
 #, c-format
 msgid ""
 "Length of smart playlist rule field (%d) not as expected. Trying to continue "
 "anyhow.\n"
-msgstr ""
-"智能播放列表规则区(%d)的长度超出范围,尝试继续。\n"
+msgstr "智能播放列表规则区(%d)的长度超出范围,尝试继续。\n"
 
-#: ../src/itdb_itunesdb.c:1598
+#: ../src/itdb_itunesdb.c:1593
 #, c-format
 msgid "iTunesDB corrupt: no SLst at offset %ld in file '%s'."
 msgstr "iTunesDB损坏:文件'%2$s'中 %1$ld 位置没有SLst。"
 
-#: ../src/itdb_itunesdb.c:1611
+#: ../src/itdb_itunesdb.c:1606
 #, c-format
 msgid ""
 "Encountered unknown MHOD type (%d) while parsing the iTunesDB. Ignoring.\n"
@@ -369,235 +362,226 @@
 "检查iTunesDB时发现未知MHOD类型(%d),忽略。\n"
 "\n"
 
-#: ../src/itdb_itunesdb.c:1691
+#: ../src/itdb_itunesdb.c:1689
 #, c-format
 msgid "iTunesDB corrupt: hunk length 0 for hunk at %ld in file '%s'."
 msgstr "iTunesDB损坏:文件'%2$s'中%1$ld位置大量0。"
 
-#: ../src/itdb_itunesdb.c:1704
+#: ../src/itdb_itunesdb.c:1702
 #, c-format
 msgid ""
 "iTunesDB corrupt: no section '%s' found in section '%s' starting at %ld."
-msgstr ""
-"iTunesDB损坏:'%2$s'部分%3$ld位置找不到'%1$s'"
+msgstr "iTunesDB损坏:'%2$s'部分%3$ld位置找不到'%1$s'"
 
-#: ../src/itdb_itunesdb.c:1718
+#: ../src/itdb_itunesdb.c:1716
 #, c-format
 msgid ""
 "header length of '%s' smaller than expected (%d < %d) at offset %ld in file "
 "'%s'."
-msgstr ""
-"文件'%5$s'中%4$ld位置的'%1$s'起始部分长度小于预期(%2$d < %3$d)"
+msgstr "文件'%5$s'中%4$ld位置的'%1$s'起始部分长度小于预期(%2$d < %3$d)"
 
-
-#: ../src/itdb_itunesdb.c:1803
+#: ../src/itdb_itunesdb.c:1801
 #, c-format
 msgid "Not a iTunesDB: '%s' (missing mhdb header)."
 msgstr "不是iTunesDB:'%s'(缺少mhdb头)。"
 
-#: ../src/itdb_itunesdb.c:1820
+#: ../src/itdb_itunesdb.c:1818
 #, c-format
 msgid ""
 "iTunesDB ('%s'): header length of mhsd hunk smaller than expected (%d<32). "
 "Aborting."
-msgstr ""
-"iTunesDB('%s'):mhsd的起始部分长度小于预期(%d<32)。"
-"放弃。"
+msgstr "iTunesDB('%s'):mhsd的起始部分长度小于预期(%d<32)。放弃。"
 
-#: ../src/itdb_itunesdb.c:1841
+#: ../src/itdb_itunesdb.c:1839
 #, c-format
 msgid "iTunesDB '%s' corrupt: mhsd expected at %ld."
 msgstr "iTunesDB'%s'损坏:mhsd的预期位置为%ld。"
 
-#: ../src/itdb_itunesdb.c:1958
+#: ../src/itdb_itunesdb.c:1944
 #, c-format
 msgid "Number of MHODs in mhip at %ld inconsistent in file '%s'."
 msgstr "Number of MHODs in mhip at %ld inconsistent in file '%s'."
 
-#: ../src/itdb_itunesdb.c:1976
+#: ../src/itdb_itunesdb.c:2121
 #, c-format
-msgid "Itdb_Track ID '%d' not found.\n"
-msgstr "找不到Itdb_Track %d'。\n"
-
-#: ../src/itdb_itunesdb.c:2146
-#, c-format
 msgid "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
 msgstr "Number of MHODs in mhyp at %ld inconsistent in file '%s'."
 
-#: ../src/itdb_itunesdb.c:2156
+#: ../src/itdb_itunesdb.c:2131
 msgid "Master-PL"
 msgstr "主播放列表"
 
-#: ../src/itdb_itunesdb.c:2160
+#: ../src/itdb_itunesdb.c:2135
 msgid "Podcasts"
 msgstr "Podcasts"
 
-#: ../src/itdb_itunesdb.c:2162
+#: ../src/itdb_itunesdb.c:2137
 msgid "Playlist"
 msgstr "播放列表"
 
-#: ../src/itdb_itunesdb.c:2184
+#: ../src/itdb_itunesdb.c:2159
 #, c-format
 msgid ""
 "iTunesDB corrupt: number of mhip sections inconsistent in mhyp starting at %"
 "ld in file '%s'."
 msgstr ""
-"iTunesDB损坏:number of mhip sections inconsistent in mhyp starting at %"
-"ld in file '%s'."
+"iTunesDB损坏:number of mhip sections inconsistent in mhyp starting at %ld "
+"in file '%s'."
 
-#: ../src/itdb_itunesdb.c:2527
+#: ../src/itdb_itunesdb.c:2180
+#, c-format
+msgid "Itdb_Track ID '%d' not found.\n"
+msgstr "找不到Itdb_Track %d'。\n"
+
+#: ../src/itdb_itunesdb.c:2524
 msgid "OTG Playlist"
 msgstr "OTG播放列表"
 
-#: ../src/itdb_itunesdb.c:2545
+#: ../src/itdb_itunesdb.c:2542
 #, c-format
 msgid "Not a OTG playlist file: '%s' (missing mhpo header)."
 msgstr "不是OTG播放列表:'%s'(缺少mhpo头)"
 
-#: ../src/itdb_itunesdb.c:2559
+#: ../src/itdb_itunesdb.c:2556
 #, c-format
 msgid "OTG playlist file ('%s'): header length smaller than expected (%d<20)."
 msgstr "OTG播放列表('%s'):起始长度小于预期(%d<20)。"
 
-#: ../src/itdb_itunesdb.c:2571
+#: ../src/itdb_itunesdb.c:2568
 #, c-format
 msgid "OTG playlist file ('%s'): entry length smaller than expected (%d<4)."
 msgstr "OTG播放列表('%s'):项目长度小于预期(%d<4)。"
 
-#: ../src/itdb_itunesdb.c:2606
+#: ../src/itdb_itunesdb.c:2603
 #, c-format
 msgid "OTG playlist file '%s': reference to non-existent track (%d)."
 msgstr "OTG播放列表('%s'):指向不存在的音轨(%d)。"
 
-#: ../src/itdb_itunesdb.c:2651
+#: ../src/itdb_itunesdb.c:2648
 #, c-format
 msgid "OTG Playlist %d"
 msgstr "OTG播放列表%d"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2719
+#: ../src/itdb_itunesdb.c:2716
 msgid ""
 "iTunesDB corrupt: number of tracks (mhit hunks) inconsistent. Trying to "
 "continue.\n"
-msgstr ""
-"iTunesDB损坏:音轨数(mhit块)不一致,尝试继续。\n"
+msgstr "iTunesDB损坏:音轨数(mhit块)不一致,尝试继续。\n"
 
 #. this should not be -- issue warning
-#: ../src/itdb_itunesdb.c:2782
+#: ../src/itdb_itunesdb.c:2779
 msgid ""
 "iTunesDB possibly corrupt: number of playlists (mhyp hunks) inconsistent. "
 "Trying to continue.\n"
-msgstr ""
-"iTunesDB可能损坏:播放列表数(mhyp块)不一致。\n"
+msgstr "iTunesDB可能损坏:播放列表数(mhyp块)不一致。\n"
 
-#: ../src/itdb_itunesdb.c:2829
+#: ../src/itdb_itunesdb.c:2826
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find tracklist (no mhsd type 1 section "
 "found)"
-msgstr ""
-"iTunesDB'%s'损坏:找不到音轨列表(找不到mhsd type 1字段)"
+msgstr "iTunesDB'%s'损坏:找不到音轨列表(找不到mhsd type 1字段)"
 
-#: ../src/itdb_itunesdb.c:2858
+#: ../src/itdb_itunesdb.c:2855
 #, c-format
 msgid ""
 "iTunesDB '%s' corrupt: Could not find playlists (no mhsd type 2 or type 3 "
 "sections found)"
-msgstr ""
-"iTunesDB'%s'损坏:找不到播放列表(找不到mhsd type 2或type 3字段)"
+msgstr "iTunesDB'%s'损坏:找不到播放列表(找不到mhsd type 2或type 3字段)"
 
-#: ../src/itdb_itunesdb.c:2880
+#: ../src/itdb_itunesdb.c:2877
 #, c-format
 msgid "iTunes directory not found: '%s' (or similar)."
 msgstr "找不到iTunes目录:'%s'(或类似)"
 
-#: ../src/itdb_itunesdb.c:2897
+#: ../src/itdb_itunesdb.c:2894
 #, c-format
 msgid "Music directory not found: '%s' (or similar)."
 msgstr "找不到音乐目录:'%s'(或类似)"
 
-#: ../src/itdb_itunesdb.c:2915
+#: ../src/itdb_itunesdb.c:2912
 #, c-format
 msgid "Control directory not found: '%s' (or similar)."
 msgstr "找不到控制目录:'%s'(或类似)"
 
-#: ../src/itdb_itunesdb.c:3036
+#: ../src/itdb_itunesdb.c:3033
 #, c-format
 msgid "File not found: '%s'."
 msgstr "找不到文件:'%s'"
 
-#: ../src/itdb_itunesdb.c:5410
+#: ../src/itdb_itunesdb.c:5533
 #, c-format
 msgid "Path not found: '%s' (or similar)."
 msgstr "找不到路径:'%s'(或类似)"
 
-#: ../src/itdb_itunesdb.c:5616
+#: ../src/itdb_itunesdb.c:5742
 #, c-format
 msgid "Error renaming '%s' to '%s' (%s)."
 msgstr "重命名'%s'到'%s'(%s)出现错误。"
 
-#: ../src/itdb_itunesdb.c:5633 ../src/itdb_itunesdb.c:5650
+#: ../src/itdb_itunesdb.c:5759 ../src/itdb_itunesdb.c:5776
+#: ../src/itdb_itunesdb.c:5793
 #, c-format
 msgid "Error removing '%s' (%s)."
 msgstr "移除'%s'(%s)出现错误。"
 
-#: ../src/itdb_itunesdb.c:5812 ../src/itdb_itunesdb.c:5985
+#: ../src/itdb_itunesdb.c:5960 ../src/itdb_itunesdb.c:6133
 #, c-format
 msgid "Mountpoint not set."
 msgstr "没有设置挂载点。"
 
-#: ../src/itdb_itunesdb.c:5852
+#: ../src/itdb_itunesdb.c:6000
 #, c-format
 msgid "No 'F..' directories found in '%s'."
 msgstr "'%s'中找不到目录。"
 
-#: ../src/itdb_itunesdb.c:5873
+#: ../src/itdb_itunesdb.c:6021
 #, c-format
 msgid "Path not found: '%s'."
 msgstr "找不到路径:'%s'"
 
-#: ../src/itdb_itunesdb.c:5994
+#: ../src/itdb_itunesdb.c:6142
 #, c-format
 msgid "'%s' could not be accessed (%s)."
 msgstr "无法存取'%s'(%s)"
 
-#: ../src/itdb_itunesdb.c:6004
+#: ../src/itdb_itunesdb.c:6152
 #, c-format
 msgid ""
 "Destination file '%s' does not appear to be on the iPod mounted at '%s'."
-msgstr ""
-"目标文件'%s'似乎不存在于'%s'上的iPod中"
+msgstr "目标文件'%s'似乎不存在于'%s'上的iPod中"
 
-#: ../src/itdb_itunesdb.c:6212
+#: ../src/itdb_itunesdb.c:6360
 #, c-format
 msgid "Error opening '%s' for reading (%s)."
 msgstr "打开'%s'读取时出错(%s)。"
 
-#: ../src/itdb_itunesdb.c:6224
+#: ../src/itdb_itunesdb.c:6372
 #, c-format
 msgid "Error opening '%s' for writing (%s)."
 msgstr "打开'%s'写入时出错(%s)。"
 
-#: ../src/itdb_itunesdb.c:6240
+#: ../src/itdb_itunesdb.c:6388
 #, c-format
 msgid "Error while reading from '%s' (%s)."
 msgstr "读取'%s'时出错(%s)。"
 
-#: ../src/itdb_itunesdb.c:6255
+#: ../src/itdb_itunesdb.c:6403
 #, c-format
 msgid "Error while writing to '%s' (%s)."
 msgstr "写入'%s'时出错(%s)。"
 
-#: ../src/itdb_itunesdb.c:6268 ../src/itdb_itunesdb.c:6278
+#: ../src/itdb_itunesdb.c:6416 ../src/itdb_itunesdb.c:6426
 #, c-format
 msgid "Error when closing '%s' (%s)."
 msgstr "关闭'%s'时出错(%s)。"
 
-#: ../src/itdb_itunesdb.c:6702
+#: ../src/itdb_itunesdb.c:6856
 msgid "iPod"
 msgstr "iPod"
 
-#: ../src/itdb_itunesdb.c:7024
+#: ../src/itdb_itunesdb.c:7178
 #, c-format
 msgid "Problem creating iPod directory or file: '%s'."
 msgstr "创建iPod目录或文件时出现问题:'%s'。"
@@ -622,7 +606,8 @@
 "Your iPod does not seem to support photos. Maybe you need to specify the "
 "correct iPod model number? It is currently set to 'x%s' (%s/%s)."
 msgstr ""
-"你的iPod似乎不支持照片功能,也许你需要一个正确的iPod型号,当前的设置为'x%s' (%s/%s)."
+"你的iPod似乎不支持照片功能,也许你需要一个正确的iPod型号,当前的设置为'x%"
+"s' (%s/%s)."
 
 #: ../src/itdb_photoalbum.c:419
 #, c-format
@@ -634,15 +619,13 @@
 msgid ""
 "Unexpected error in itdb_photodb_add_photo_internal() while adding photo, "
 "please report."
-msgstr ""
-"添加照片时itdb_photodb_add_photo_internal() 发现未预期错误,请报告。"
+msgstr "添加照片时itdb_photodb_add_photo_internal() 发现未预期错误,请报告。"
 
 #: ../src/itdb_photoalbum.c:468
 #, c-format
 msgid ""
 "Library compiled without gdk-pixbuf support. Picture support is disabled."
-msgstr ""
-"libgpod编译时没有加入gdk-pixbuf支持,相片功能已关闭"
+msgstr "libgpod编译时没有加入gdk-pixbuf支持,相片功能已关闭"
 
 #. New action!
 #: ../src/itdb_playlist.c:78
@@ -676,7 +659,6 @@
 "  照片簿名可以为空,此时照片添加到主照片簿中。\n"
 "  如果你没有指定文件名则创建一个空白的照片簿。\n"
 
-
 #: ../tests/test-photos.c:42
 #, c-format
 msgid ""
@@ -707,7 +689,8 @@
 msgstr ""
 "从照片库移除照片的用法:\n"
 "   %s remove <挂载点> <照片簿名> [<照片名(s)>] \n"
-"   <照片簿名>可以为空用来同时从iPod移除照片,如果不指定任何照片名,那么就删除照片簿。\n"
+"   <照片簿名>可以为空用来同时从iPod移除照片,如果不指定任何照片名,那么就删除"
+"照片簿。\n"
 "   警告:当写入PhotoDB是照片名可能发生了变化。\n"
 
 #: ../tests/test-photos.c:119
@@ -765,8 +748,7 @@
 #, c-format
 msgid ""
 "Error reading iPod photo database, will attempt to create a new database\n"
-msgstr ""
-"读取iPod照片数据库时出错,尝试创建新的数据库\n"
+msgstr "读取iPod照片数据库时出错,尝试创建新的数据库\n"
 
 #: ../tests/test-photos.c:267
 #, c-format
@@ -803,6 +785,11 @@
 msgid "Error initialising iPod, unknown error\n"
 msgstr "初始化iPod出错,未知错误\n"
 
+#: ../tools/ipod-time-sync.c:37
+#, fuzzy, c-format
+msgid "usage: %s <device> [timezone]\n"
+msgstr "用法:%s <设备> <挂载点>\n"
+
 #: ../tools/read-sysinfoextended-sgutils.c:39
 #, c-format
 msgid "usage: %s <device> <mountpoint>\n"
@@ -827,3 +814,6 @@
 #, c-format
 msgid "Couldn't write SysInfoExtended to %s"
 msgstr "无法向%s写入SysInfoExtended"
+
+#~ msgid "Could not find artwork entry (mhii id: %u) for track (dbid: %s).\n"
+#~ msgstr "无法找到对应音轨(dbid:%2$s)的专辑封面(mhii id:%1$u)\n"

Modified: libgpod/branches/upstream/current/src/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/src/Makefile.in	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/src/Makefile.in	2009-06-19 20:28:03 UTC (rev 384)
@@ -143,6 +143,7 @@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
 HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HALFDIDIR = @HALFDIDIR@
 HAL_CFLAGS = @HAL_CFLAGS@
 HAL_LIBS = @HAL_LIBS@
 HTML_DIR = @HTML_DIR@

Modified: libgpod/branches/upstream/current/src/db-artwork-parser.c
===================================================================
--- libgpod/branches/upstream/current/src/db-artwork-parser.c	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/src/db-artwork-parser.c	2009-06-19 20:28:03 UTC (rev 384)
@@ -43,23 +43,7 @@
 
 typedef int (*ParseListItem)(DBParseContext *ctx, GError *error);
 
-static Itdb_Track *
-get_song_by_dbid (Itdb_iTunesDB *db, guint64 id)
-{
-	GList *it;
 
-	for (it = db->tracks; it != NULL; it = it->next) {
-		Itdb_Track *song;
-
-		song = (Itdb_Track*)it->data;
-		if (song->dbid == id) {
-			return song;
-		}
-	}
-	return NULL;
-}
-
-
 static int
 parse_mhif (DBParseContext *ctx, GError *error)
 {
@@ -483,6 +467,30 @@
 }
 
 
+/* Compares the two guint64 values being pointed to and returns TRUE if
+ * they are equal. It can be passed to g_hash_table_new() as the
+ *  key_equal_func parameter, when using pointers to guint64 as keys
+ * in a GHashTable.
+ */
+static gboolean
+guint64_equal (gconstpointer v1, gconstpointer v2)
+{
+    guint64 i1 = *(const guint64*)v1;
+    guint64 i2 = *(const guint64*)v2;
+    return i1 == i2;
+}
+
+/* Converts a pointer to a guint64 to a hash value. It can be passed to
+ * g_hash_table_new() as the hash_func parameter, when using pointers
+ * to guint64 values as keys in a GHashTable.
+ */
+static guint
+guint64_hash(gconstpointer v)
+{
+    guint64 i = *(const guint64*)v;
+    return i ^ (i >> 32);
+}
+
 /* Apple introduced a new way to associate artwork. The former way
  * used the dbid to link each artwork (mhii) back to the track. The
  * new way uses the mhii id to link from each track to the mhii. Above
@@ -491,6 +499,7 @@
 mhfd_associate_itunesdb_artwork (DBParseContext *ctx)
 {
     GHashTable *mhii_id_hash;
+    GHashTable *song_dbid_hash;
     Itdb_iTunesDB *itdb;
     GList *gl;
 
@@ -498,6 +507,15 @@
     itdb = db_get_itunesdb (ctx->db);
     g_return_val_if_fail (itdb, -1);
 
+    /* make a hash linking the dbid with the songs for faster
+       lookup */
+    song_dbid_hash = g_hash_table_new (guint64_hash, guint64_equal);
+
+    for (gl = itdb->tracks; gl != NULL; gl = gl->next) {
+	Itdb_Track *song = (Itdb_Track*)gl->data;
+	g_hash_table_insert (song_dbid_hash, &song->dbid, song);
+    }
+
     /* make a hash linking the mhii with the artwork for faster
        lookup */
     mhii_id_hash = g_hash_table_new_full (g_direct_hash,
@@ -515,7 +533,7 @@
 
 	/* add Artwork to track indicated by the dbid for backward
 	   compatibility */
-	track = get_song_by_dbid (itdb, artwork->dbid);
+	track = g_hash_table_lookup (song_dbid_hash, &artwork->dbid);
 	if (track == NULL)
 	{
 	    gchar *strval = g_strdup_printf("%" G_GINT64_FORMAT, artwork->dbid);
@@ -576,6 +594,7 @@
 	}
     }
     g_hash_table_destroy (mhii_id_hash);
+    g_hash_table_destroy (song_dbid_hash);
     /* The actual ItdbArtwork data was freed through the GHashTable
        value_destroy_func */
     g_list_free (*ctx->artwork);

Modified: libgpod/branches/upstream/current/src/db-itunes-parser.h
===================================================================
--- libgpod/branches/upstream/current/src/db-itunes-parser.h	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/src/db-itunes-parser.h	2009-06-19 20:28:03 UTC (rev 384)
@@ -20,7 +20,7 @@
  * 
  *  This product is not supported/written/published by Apple!
  *
- * $Id: db-itunes-parser.h 2040 2008-07-06 14:04:33Z teuf $
+ * $Id: db-itunes-parser.h 2233 2009-01-21 21:49:08Z teuf $
  */
 
 
@@ -76,16 +76,29 @@
 typedef struct _MhodHeaderSmartPlaylistRule MhodHeaderSmartPlaylistRule;
 
 struct _MhbdHeader {
-	unsigned char header_id[4];
-	gint32 header_len;
-	gint32 total_len;
-	gint32 unknown1;
-	gint32 version;
-	gint32 num_children;
-	gint64 db_id;
-	gint32 unknown2;
-	unsigned char padding[];
-};
+	gchar   header_id[4];
+	guint32 header_len;
+	guint32 total_len;
+	guint32 unknown1;
+	guint32 version;
+	guint32 num_children;
+	guint64 db_id;
+	guint16 unknown2;
+	guint32 unknown3;
+	guint64 unknown4;
+	guint16 unknown5;
+	guint16 hashing_scheme;
+	guchar  unknown6[20];
+	gchar   language_id[2];
+	guint64 db_persistent_id;
+	guint32 unknown7;
+	guint32 unknown8;
+	guchar  hash58[20];
+	gint32  timezone_offset;
+	guint16 unknown9;
+	guchar  hash72[46];
+	guchar  padding[];
+} __attribute__((__packed__));
 
 enum MhsdIndexType {
 	MHSD_TRACK_LIST = 1,

Modified: libgpod/branches/upstream/current/src/itdb.h
===================================================================
--- libgpod/branches/upstream/current/src/itdb.h	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/src/itdb.h	2009-06-19 20:28:03 UTC (rev 384)
@@ -29,7 +29,7 @@
 |
 |  This product is not supported/written/published by Apple!
 |
-|  $Id: itdb.h 2193 2009-01-03 02:58:02Z tmzullinger $
+|  $Id: itdb.h 2272 2009-03-14 18:02:16Z teuf $
 */
 
 #ifndef __ITUNESDB_H__
@@ -1748,8 +1748,10 @@
 const Itdb_IpodInfo *itdb_device_get_ipod_info (const Itdb_Device *device);
 const Itdb_IpodInfo *itdb_info_get_ipod_info_table (void);
 gboolean itdb_device_supports_artwork (const Itdb_Device *device);
+gboolean itdb_device_supports_chapter_image (const Itdb_Device *device);
 gboolean itdb_device_supports_video (const Itdb_Device *device);
 gboolean itdb_device_supports_photo (const Itdb_Device *device);
+gboolean itdb_device_supports_podcast (const Itdb_Device *device);
 const gchar *itdb_info_get_ipod_model_name_string (Itdb_IpodModel model);
 const gchar *itdb_info_get_ipod_generation_string (Itdb_IpodGeneration generation);
 

Modified: libgpod/branches/upstream/current/src/itdb_device.c
===================================================================
--- libgpod/branches/upstream/current/src/itdb_device.c	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/src/itdb_device.c	2009-06-19 20:28:03 UTC (rev 384)
@@ -27,11 +27,14 @@
 |
 |  This product is not supported/written/published by Apple!
 |
-|  $Id: itdb_device.c 2219 2009-01-17 12:07:49Z teuf $
+|  $Id: itdb_device.c 2300 2009-04-03 22:26:55Z tmzullinger $
 */
+#include <config.h>
 
+#include "db-itunes-parser.h"
 #include "itdb_device.h"
 #include "itdb_private.h"
+#include "itdb_sha1.h"
 #include <ctype.h>
 #include <fcntl.h>
 #include <stdio.h>
@@ -432,6 +435,7 @@
     /* officially 55x55 -- verify! */
     {1061,  56,  56, THUMB_FORMAT_RGB565_LE},
     {1055, 128, 128, THUMB_FORMAT_RGB565_LE},
+    {1068, 128, 128, THUMB_FORMAT_RGB565_LE},
     {1060, 320, 320, THUMB_FORMAT_RGB565_LE},
     {  -1,  -1,  -1, -1}
 };
@@ -448,7 +452,7 @@
 static const Itdb_ArtworkFormat ipod_classic_1_chapter_image_info[] = {
     /*  These are the same as for the iPod video... -- labeled by the iPod as
         "chapter images" */
-    {1028, 100, 100, THUMB_FORMAT_RGB565_LE},
+    {1055, 128, 128, THUMB_FORMAT_RGB565_LE},
     {1029, 200, 200, THUMB_FORMAT_RGB565_LE},
     {  -1,  -1,  -1, -1}
 };
@@ -692,7 +696,7 @@
  *
  * Since: 0.4.0
  */
-Itdb_Device *itdb_device_new ()
+Itdb_Device *itdb_device_new (void)
 {
     Itdb_Device *dev;
 
@@ -731,6 +735,12 @@
  * Sets the mountpoint of @device to @mp and update the cached device 
  * information (in particular, re-read the SysInfo file)
  *
+ * <warning><para>Calling this function invalidates all the artwork in the
+ * #Itdb_iTunesDB database using this #Itdb_Device. Trying to access this
+ * artwork will result in memory corruption. It's recommended to use
+ * itdb_set_mountpoint() instead which will clean the invalidated artwork
+ * for you.</para></warning>.
+ *
  * Since: 0.4.0
  */
 void itdb_device_set_mountpoint (Itdb_Device *device, const gchar *mp)
@@ -797,6 +807,12 @@
  * Reads the SysInfo file and stores information in device->sysinfo for
  * later use.
  *
+ * <warning><para>Calling this function invalidates all the artwork in the
+ * #Itdb_iTunesDB database using this #Itdb_Device. Trying to access this
+ * artwork will result in memory corruption. Directly calling this function
+ * shouldn't ever be needed and it will be deprecated
+ * soon.</para></warning>.
+ *
  * Returns: TRUE if file could be read, FALSE otherwise 
  *
  * Since: 0.4.0
@@ -1022,9 +1038,8 @@
 
 
 /* Return supported artwork formats supported by this iPod */
-static const Itdb_ArtworkFormat *
-itdb_device_get_artwork_formats (const Itdb_Device *device, 
-                                 enum ArtworkType type)
+static const ArtworkCapabilities *
+itdb_device_get_artwork_capabilities (const Itdb_Device *device)
 {
     const Itdb_IpodInfo *info;
     const ArtworkCapabilities *caps;
@@ -1041,35 +1056,47 @@
         }
         caps++;
     }
-    switch (type) {
-        case ARTWORK_TYPE_COVER_ART:
-            return caps->cover_art_formats;
-        case ARTWORK_TYPE_PHOTO:
-            return caps->photo_formats;
-        case ARTWORK_TYPE_CHAPTER_IMAGE:
-            return caps->chapter_image_formats;
+
+    if (caps->generation == ITDB_IPOD_GENERATION_UNKNOWN) {
+	return NULL;
     }
-
-    g_return_val_if_reached (NULL);
+ 
+    return caps;
 }
 
 static GList *
-itdb_device_get_photo_formats_fallback (const Itdb_Device *device)
+itdb_device_get_artwork_formats_fallback (const Itdb_Device *device, 
+					  enum ArtworkType type)
 {
-    const Itdb_ArtworkFormat *formats;
+    const ArtworkCapabilities *caps;
+    const Itdb_ArtworkFormat *formats = NULL;
     const Itdb_ArtworkFormat *it;
-    GList *photo_formats = NULL;
+    GList *artwork_formats = NULL;
 
-    formats = itdb_device_get_artwork_formats (device, ARTWORK_TYPE_PHOTO);
+    caps = itdb_device_get_artwork_capabilities (device);
+    if (caps == NULL) {
+	return NULL;
+    }
+    switch (type) {
+	case ARTWORK_TYPE_COVER_ART:
+	    formats = caps->cover_art_formats;
+	    break;
+	case ARTWORK_TYPE_PHOTO:
+	    formats = caps->photo_formats;
+	    break;
+	case ARTWORK_TYPE_CHAPTER_IMAGE:
+	    formats = caps->chapter_image_formats;
+	    break;
+    }
     if (formats == NULL) {
         return NULL;
     }
 
     for (it = formats; it->format_id != -1; it++) {
-        photo_formats = g_list_prepend (photo_formats, (gpointer)it);
+        artwork_formats = g_list_prepend (artwork_formats, (gpointer)it);
     }
 
-    return photo_formats;
+    return artwork_formats;
 }
 
 GList *itdb_device_get_photo_formats (const Itdb_Device *device)
@@ -1077,40 +1104,36 @@
     g_return_val_if_fail (device != NULL, NULL);
 
     if (device->sysinfo_extended == NULL) {
-        return itdb_device_get_photo_formats_fallback (device);
+        return itdb_device_get_artwork_formats_fallback (device,
+							 ARTWORK_TYPE_PHOTO);
     } else {
         return g_list_copy ((GList *)itdb_sysinfo_properties_get_photo_formats (device->sysinfo_extended));
     }
     g_return_val_if_reached (NULL);
 }
 
-static GList *
-itdb_device_get_cover_art_formats_fallback (const Itdb_Device *device)
+GList *itdb_device_get_cover_art_formats (const Itdb_Device *device)
 {
-    const Itdb_ArtworkFormat *formats;
-    const Itdb_ArtworkFormat *it;
-    GList *cover_art_formats = NULL;
+    g_return_val_if_fail (device != NULL, NULL);
 
-    formats = itdb_device_get_artwork_formats (device, ARTWORK_TYPE_COVER_ART);
-    if (formats == NULL) {
-        return NULL;
+    if (device->sysinfo_extended == NULL) {
+        return itdb_device_get_artwork_formats_fallback (device,
+							 ARTWORK_TYPE_COVER_ART);
+    } else {
+        return g_list_copy ((GList *)itdb_sysinfo_properties_get_cover_art_formats (device->sysinfo_extended));
     }
-
-    for (it = formats; it->format_id != -1; it++) {
-        cover_art_formats = g_list_prepend (cover_art_formats, (gpointer)it);
-    }
-
-    return cover_art_formats;
+    g_return_val_if_reached (NULL);
 }
 
-GList *itdb_device_get_cover_art_formats (const Itdb_Device *device)
+GList *itdb_device_get_chapter_image_formats (const Itdb_Device *device)
 {
     g_return_val_if_fail (device != NULL, NULL);
 
     if (device->sysinfo_extended == NULL) {
-        return itdb_device_get_cover_art_formats_fallback (device);
+        return itdb_device_get_artwork_formats_fallback (device,
+							 ARTWORK_TYPE_CHAPTER_IMAGE);
     } else {
-        return g_list_copy ((GList *)itdb_sysinfo_properties_get_cover_art_formats (device->sysinfo_extended));
+        return g_list_copy ((GList *)itdb_sysinfo_properties_get_chapter_image_formats (device->sysinfo_extended));
     }
     g_return_val_if_reached (NULL);
 }
@@ -1322,7 +1345,8 @@
  * itdb_info_get_ipod_info_table:
  *
  * Return a pointer to the start of valid iPod model descriptions,
- * which is an array of #Itdb_IpodInfo entries.
+ * which is an array of #Itdb_IpodInfo entries. This can be useful if you
+ * want to build a list of all iPod models known to the current libgpod.
  *
  * Returns: a pointer to the array of #Itdb_IpodInfo entries.
  *
@@ -1481,6 +1505,27 @@
     return (formats != NULL);
 }
 
+/**
+ * itdb_device_supports_chapter_image:
+ * @device: an #Itdb_Device
+ *
+ * Indicates whether @device can display chapter images or not.
+ *
+ * Return value: true if @device can display chapter images.
+ *
+ * Since: 0.7.2
+ */
+gboolean itdb_device_supports_chapter_image (const Itdb_Device *device)
+{
+    GList *formats;
+    if (device == NULL) {
+        return FALSE;
+    }
+    formats = itdb_device_get_chapter_image_formats (device);
+    g_list_free (formats);
+    return (formats != NULL);
+}
+
 static char *
 get_preferences_path (const Itdb_Device *device)
 {
@@ -1588,9 +1633,39 @@
 
 static gint get_local_timezone (void)
 {
-#ifdef __CYGWIN__
+#ifdef HAVE_STRUCT_TM_TM_GMTOFF
+    /*
+     * http://www.gnu.org/software/libc/manual/html_node/Time-Zone-Functions.html
+     *
+     * Variable: long int timezone
+     *
+     * This contains the difference between UTC and the latest local
+     * standard time, in seconds west of UTC. For example, in the
+     * U.S. Eastern time zone, the value is 5*60*60. Unlike the
+     * tm_gmtoff member of the broken-down time structure, this value is
+     * not adjusted for daylight saving, and its sign is reversed. In
+     * GNU programs it is better to use tm_gmtoff, since it contains the
+     * correct offset even when it is not the latest one.
+     */
+    time_t t = time(NULL);
+    glong seconds_east_utc;
+#   ifdef HAVE_LOCALTIME_R
+    {
+        struct tm tmb;
+        localtime_r(&t, &tmb);
+        seconds_east_utc = tmb.tm_gmtoff;
+    }
+#   else /* !HAVE_LOCALTIME_R */
+    {
+        struct tm* tp;
+        tp = localtime(&t);
+        seconds_east_utc = tp->tm_gmtoff;
+    }
+#   endif /* !HAVE_LOCALTIME_R */
+    return seconds_east_utc * -1; /* mimic the old behaviour when global variable 'timezone' from the 'time.h' header was returned */
+#elif __CYGWIN__   /* !HAVE_STRUCT_TM_TM_GMTOFF */
     return (gint) _timezone; /* global variable defined by time.h, see man tzset */
-#else
+#else /* !HAVE_STRUCT_TM_TM_GMTOFF && !__CYGWIN__ */
     return timezone; /* global variable defined by time.h, see man tzset */
 #endif
 }
@@ -1662,7 +1737,8 @@
  *
  * Returns the Firewire ID for @device, this is useful to calculate the 
  * iTunesDB checksum which is expected by newer iPod models
- * (iPod classic/fat nanos)
+ * (iPod classic/fat nanos) and is needed on iPod plugged through USB contrary
+ * to what the name implies.
  *
  * Returns: the guint64 firewire id, or 0 if we don't know it
  *
@@ -1670,29 +1746,36 @@
  */
 guint64 itdb_device_get_firewire_id (const Itdb_Device *device)
 {
-    gchar *fwid;
+    const gchar *fwid = NULL;
 
-    g_assert (device->sysinfo != NULL);
+    if (device->sysinfo_extended != NULL) {
+	fwid = itdb_sysinfo_properties_get_firewire_id (device->sysinfo_extended);
+    }
+    if (fwid == NULL) {
+	    fwid = (const gchar *)g_hash_table_lookup (device->sysinfo,
+			                               "FirewireGuid");
+    }
 
-    fwid = g_hash_table_lookup (device->sysinfo, "FirewireGuid");
     if (fwid == NULL) {
 	return 0;
     }
+
     return g_ascii_strtoull (fwid, NULL, 16);
 }
 
-G_GNUC_INTERNAL gboolean itdb_device_requires_checksum (Itdb_Device *device) 
+static ItdbChecksumType itdb_device_get_checksum_type (const Itdb_Device *device)
 {
     const Itdb_IpodInfo *info;
 
     if (device == NULL) {
-        return FALSE;
+        return ITDB_CHECKSUM_NONE;
     }
 
     info = itdb_device_get_ipod_info (device);
     if (info == NULL) {
-        return FALSE;
+        return ITDB_CHECKSUM_NONE;
     }
+
     switch (info->ipod_generation) {
     case ITDB_IPOD_GENERATION_CLASSIC_1: 
     case ITDB_IPOD_GENERATION_CLASSIC_2:
@@ -1700,7 +1783,7 @@
     case ITDB_IPOD_GENERATION_NANO_4:
     case ITDB_IPOD_GENERATION_TOUCH_1:
     case ITDB_IPOD_GENERATION_IPHONE_1:
-      return TRUE;
+      return ITDB_CHECKSUM_HASH58;
 
     case ITDB_IPOD_GENERATION_UNKNOWN:
     case ITDB_IPOD_GENERATION_FIRST:
@@ -1718,12 +1801,81 @@
     case ITDB_IPOD_GENERATION_NANO_2:
     case ITDB_IPOD_GENERATION_VIDEO_1:
     case ITDB_IPOD_GENERATION_VIDEO_2:
-            return FALSE;
+            return ITDB_CHECKSUM_NONE;
     }
 
-    return FALSE;
+    return ITDB_CHECKSUM_NONE;
 }
 
+static gboolean itdb_device_write_hash58 (Itdb_Device *device, 
+					  unsigned char *itdb_data, 
+					  gsize itdb_len,
+					  GError **error)
+{
+    guint64 fwid;
+    guchar backup18[8];
+    guchar backup32[20];
+    unsigned char *checksum;
+    gsize len;
+    MhbdHeader *header;
+   
+    g_assert (itdb_device_get_checksum_type (device) == ITDB_CHECKSUM_HASH58);
+
+    fwid = itdb_device_get_firewire_id (device);
+    if (fwid == 0) {
+	g_set_error (error, 0, -1, "Couldn't find the iPod firewire ID");
+	return FALSE;
+    }
+
+    if (itdb_len < 0x6c) {
+	g_set_error (error, 0, -1, "iTunesDB file too small to write checksum");
+	return FALSE;
+    }
+
+    header = (MhbdHeader *)itdb_data;
+    g_assert (strncmp (header->header_id, "mhbd", strlen ("mhbd")) == 0);
+    memcpy (backup18, &header->db_id, sizeof (backup18));
+    memcpy (backup32, &header->unknown6, sizeof (backup32));
+
+    /* Those fields must be zero'ed out for the sha1 calculation */
+    memset(&header->db_id, 0, sizeof (header->db_id));
+    memset(&header->unknown6, 0, sizeof (header->unknown6));
+    memset(&header->hash58, 0, sizeof (header->hash58));
+
+    header->hashing_scheme = GUINT16_FROM_LE (ITDB_CHECKSUM_HASH58);
+
+    checksum = itdb_compute_hash (fwid, itdb_data, itdb_len, &len);
+    if (checksum == NULL) {
+	g_set_error (error, 0, -1, "Failed to compute checksum");
+	return FALSE;
+    }
+    g_assert (len <= sizeof (header->hash58));
+    memcpy (&header->hash58, checksum, len);
+    g_free (checksum);
+
+    memcpy (&header->db_id, backup18, sizeof (backup18));
+    memcpy (&header->unknown6, backup32, sizeof (backup32));
+
+    return TRUE;
+}
+
+G_GNUC_INTERNAL gboolean itdb_device_write_checksum (Itdb_Device *device, 
+						     unsigned char *itdb_data, 
+						     gsize itdb_len,
+						     GError **error)
+{
+    switch (itdb_device_get_checksum_type (device)) {
+	case ITDB_CHECKSUM_NONE:
+	    return TRUE;
+	case ITDB_CHECKSUM_HASH58:
+	    return itdb_device_write_hash58 (device, itdb_data, itdb_len, error);
+	case ITDB_CHECKSUM_HASH72:
+	    g_set_error (error, 0, -1, "Unsupported checksum type");
+	    return FALSE;
+    }	
+    g_assert_not_reached ();
+}
+
 #ifdef WIN32
 #include <windows.h>
 #else
@@ -1867,3 +2019,52 @@
     }
     return quark;
 }
+
+/**
+ * itdb_device_supports_podcast:
+ * @device: an #Itdb_Device
+ *
+ * Indicates whether @device can play podcasts or not.
+ *
+ * Returns: true if @device can play podcasts.
+ *
+ * Since: 0.7.2
+ */
+gboolean
+itdb_device_supports_podcast (const Itdb_Device *device)
+{
+    if (device->sysinfo_extended != NULL) {
+    	return itdb_sysinfo_properties_supports_podcast (device->sysinfo_extended);
+    } else {
+	const Itdb_IpodInfo *info;
+
+	info = itdb_device_get_ipod_info (device);
+	switch (info->ipod_generation) {
+	    case ITDB_IPOD_GENERATION_UNKNOWN:
+	    case ITDB_IPOD_GENERATION_FIRST:
+	    case ITDB_IPOD_GENERATION_SECOND:
+	    case ITDB_IPOD_GENERATION_THIRD:
+	    case ITDB_IPOD_GENERATION_MOBILE:
+		return FALSE;
+	    case ITDB_IPOD_GENERATION_FOURTH:
+	    case ITDB_IPOD_GENERATION_PHOTO:
+	    case ITDB_IPOD_GENERATION_MINI_1:
+	    case ITDB_IPOD_GENERATION_MINI_2:
+	    case ITDB_IPOD_GENERATION_NANO_1:
+	    case ITDB_IPOD_GENERATION_NANO_2:
+	    case ITDB_IPOD_GENERATION_NANO_3:
+	    case ITDB_IPOD_GENERATION_NANO_4:
+	    case ITDB_IPOD_GENERATION_SHUFFLE_1:
+	    case ITDB_IPOD_GENERATION_SHUFFLE_2:
+	    case ITDB_IPOD_GENERATION_SHUFFLE_3:
+	    case ITDB_IPOD_GENERATION_VIDEO_1:
+	    case ITDB_IPOD_GENERATION_VIDEO_2:
+	    case ITDB_IPOD_GENERATION_CLASSIC_1:
+	    case ITDB_IPOD_GENERATION_CLASSIC_2:
+	    case ITDB_IPOD_GENERATION_TOUCH_1:
+	    case ITDB_IPOD_GENERATION_IPHONE_1:
+		return TRUE;
+	}
+	g_return_val_if_reached (FALSE);
+    }
+}

Modified: libgpod/branches/upstream/current/src/itdb_device.h
===================================================================
--- libgpod/branches/upstream/current/src/itdb_device.h	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/src/itdb_device.h	2009-06-19 20:28:03 UTC (rev 384)
@@ -29,7 +29,7 @@
 |
 |  This product is not supported/written/published by Apple!
 |
-|  $Id: itdb_device.h 2159 2008-12-08 01:16:58Z tmzullinger $
+|  $Id: itdb_device.h 2272 2009-03-14 18:02:16Z teuf $
 */
 
 #ifndef __ITDB_DEVICE_H__
@@ -74,6 +74,13 @@
     THUMB_FORMAT_EXPERIMENTAL_BE,
 };
 
+typedef enum _ItdbChecksumType ItdbChecksumType;
+enum _ItdbChecksumType {
+    ITDB_CHECKSUM_NONE		= 0,
+    ITDB_CHECKSUM_HASH58	= 1,
+    ITDB_CHECKSUM_HASH72	= 2
+};
+
 /**
  * Itdb_Device:
  * @mountpoint:         The mountpoint of the iPod
@@ -154,11 +161,17 @@
 
 G_GNUC_INTERNAL GList *itdb_device_get_photo_formats (const Itdb_Device *device);
 G_GNUC_INTERNAL GList *itdb_device_get_cover_art_formats (const Itdb_Device *device);
+G_GNUC_INTERNAL GList *itdb_device_get_chapter_image_formats (const Itdb_Device *device);
 G_GNUC_INTERNAL gint itdb_device_musicdirs_number (Itdb_Device *device);
 G_GNUC_INTERNAL void itdb_device_autodetect_endianess (Itdb_Device *device);
 G_GNUC_INTERNAL guint64 itdb_device_get_firewire_id (const Itdb_Device *device);
 G_GNUC_INTERNAL gboolean itdb_device_supports_sparse_artwork (const Itdb_Device *device);
 G_GNUC_INTERNAL gboolean itdb_device_get_storage_info (Itdb_Device *device, guint64 *capacity, guint64 *free);
+G_GNUC_INTERNAL gboolean itdb_device_write_checksum (Itdb_Device *device,
+						     unsigned char *itdb_data,
+						     gsize itdb_len,
+						     GError **error);
+
 G_END_DECLS
 
 #endif

Modified: libgpod/branches/upstream/current/src/itdb_itunesdb.c
===================================================================
--- libgpod/branches/upstream/current/src/itdb_itunesdb.c	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/src/itdb_itunesdb.c	2009-06-19 20:28:03 UTC (rev 384)
@@ -30,7 +30,7 @@
 |
 |  This product is not supported/written/published by Apple!
 |
-|  $Id: itdb_itunesdb.c 2205 2009-01-11 10:52:25Z jcsjcs $
+|  $Id: itdb_itunesdb.c 2306 2009-04-05 15:41:56Z teuf $
 */
 
 /* Some notes on how to use the functions in this file:
@@ -219,7 +219,10 @@
   MHOD_ID_SPLRULES = 51, /* rules for smart playlist     */
   MHOD_ID_LIBPLAYLISTINDEX = 52,  /* Library Playlist Index */
   MHOD_ID_LIBPLAYLISTJUMPTABLE=53,
-  MHOD_ID_PLAYLIST = 100
+  MHOD_ID_PLAYLIST = 100,
+  MHOD_ID_ALBUM_ALBUM = 200, /* MHODs for the MHIAs */
+  MHOD_ID_ALBUM_ARTIST = 201,
+  MHOD_ID_ALBUM_SORT_ARTIST = 202
 };
 
 
@@ -283,6 +286,13 @@
 
 typedef struct _MHODData MHODData;
 
+struct _PosEntry {
+    guint32 trackid;
+    gint32 track_pos;
+};
+
+typedef struct _PosEntry PosEntry;
+
 /* Declarations */
 static gboolean itdb_create_directories (Itdb_Device *device, GError **error);
 
@@ -296,6 +306,41 @@
 }
 
 
+static guint16 raw_get16lint (FContents *cts, glong seek);
+static guint32 raw_get24lint (FContents *cts, glong seek);
+static guint32 raw_get32lint (FContents *cts, glong seek);
+static guint64 raw_get64lint (FContents *cts, glong seek);
+static float raw_get32lfloat (FContents *cts, glong seek);
+static guint16 raw_get16bint (FContents *cts, glong seek);
+static guint32 raw_get24bint (FContents *cts, glong seek);
+static guint32 raw_get32bint (FContents *cts, glong seek);
+static guint64 raw_get64bint (FContents *cts, glong seek);
+static float raw_get32bfloat (FContents *cts, glong seek);
+
+static const ByteReader LITTLE_ENDIAN_READER =
+{
+    raw_get16lint, raw_get24lint, raw_get32lint, raw_get64lint, raw_get32lfloat
+};
+static const ByteReader BIG_ENDIAN_READER =
+{
+    raw_get16bint, raw_get24bint, raw_get32bint, raw_get64bint, raw_get32bfloat
+};
+
+static void fcontents_set_reversed(FContents *cts, gboolean reversed)
+{
+    cts->reversed = reversed;
+    if (!reversed)
+    {
+	memcpy(&cts->le_reader, &LITTLE_ENDIAN_READER, sizeof (ByteReader));
+	memcpy(&cts->be_reader, &BIG_ENDIAN_READER, sizeof (ByteReader));
+    }
+    else
+    {
+	memcpy(&cts->le_reader, &BIG_ENDIAN_READER, sizeof (ByteReader));
+	memcpy(&cts->be_reader, &LITTLE_ENDIAN_READER, sizeof (ByteReader));
+    }
+}
+
 /* Read the contents of @filename and return a FContents
    struct. Returns NULL in case of error and @error is set
    accordingly */
@@ -306,7 +351,7 @@
     g_return_val_if_fail (fname, NULL);
 
     cts = g_new0 (FContents, 1);
-    cts->reversed = FALSE;
+    fcontents_set_reversed (cts, FALSE);
 
     if (g_file_get_contents (fname, &cts->contents, &cts->length, error))
     {
@@ -534,7 +579,7 @@
 
 /* Returns the 1-byte number stored at position @seek. On error the
  * GError in @cts is set. */
-static guint8 get8int (FContents *cts, glong seek)
+static inline guint8 get8int (FContents *cts, glong seek)
 {
     guint8 n=0;
 
@@ -558,7 +603,6 @@
 
     if (check_seek (cts, seek, 2))
     {
-	g_return_val_if_fail (cts->contents, 0);
 	memcpy (&n, &cts->contents[seek], 2);
 	n = GUINT16_FROM_LE (n);
     }
@@ -573,7 +617,6 @@
 
     if (check_seek (cts, seek, 3))
     {
-	g_return_val_if_fail (cts->contents, 0);
 	n = ((guint32)get8int (cts, seek+0)) +
 	    (((guint32)get8int (cts, seek+1)) >> 8) +
 	    (((guint32)get8int (cts, seek+2)) >> 16);
@@ -589,7 +632,6 @@
 
     if (check_seek (cts, seek, 4))
     {
-	g_return_val_if_fail (cts->contents, 0);
 	memcpy (&n, &cts->contents[seek], 4);
 	n = GUINT32_FROM_LE (n);
     }
@@ -621,7 +663,6 @@
 
     if (check_seek (cts, seek, 8))
     {
-	g_return_val_if_fail (cts->contents, 0);
 	memcpy (&n, &cts->contents[seek], 8);
 	n = GUINT64_FROM_LE (n);
     }
@@ -641,7 +682,6 @@
 
     if (check_seek (cts, seek, 2))
     {
-	g_return_val_if_fail (cts->contents, 0);
 	memcpy (&n, &cts->contents[seek], 2);
 	n = GUINT16_FROM_BE (n);
     }
@@ -656,7 +696,6 @@
 
     if (check_seek (cts, seek, 3))
     {
-	g_return_val_if_fail (cts->contents, 0);
 	n = ((guint32)get8int (cts, seek+2)) +
 	    (((guint32)get8int (cts, seek+1)) >> 8) +
 	    (((guint32)get8int (cts, seek+0)) >> 16);
@@ -672,7 +711,6 @@
 
     if (check_seek (cts, seek, 4))
     {
-	g_return_val_if_fail (cts->contents, 0);
 	memcpy (&n, &cts->contents[seek], 4);
 	n = GUINT32_FROM_BE (n);
     }
@@ -703,7 +741,6 @@
 
     if (check_seek (cts, seek, 8))
     {
-	g_return_val_if_fail (cts->contents, 0);
 	memcpy (&n, &cts->contents[seek], 8);
 	n = GUINT64_FROM_BE (n);
     }
@@ -712,107 +749,65 @@
 
 
 /* ------------------------------------------------------------
-   Reversed Endian Sensitive (little endian)
+   Little Endian
    ------------------------------------------------------------ */
 
-/* The following functions take into consideration the state of
- * cts->reversed and call either raw_getnnlint or raw_getnnbint */
-static guint16 get16lint (FContents *cts, glong seek)
+static inline guint16 get16lint (FContents *cts, glong seek)
 {
-    g_return_val_if_fail (cts, 0);
-    if (!cts->reversed)
-	return raw_get16lint (cts, seek);
-    else
-	return raw_get16bint (cts, seek);
+    return cts->le_reader.get16int (cts, seek);
 }
 
-static guint32 get24lint (FContents *cts, glong seek)
+static inline guint32 get24lint (FContents *cts, glong seek)
 {
-    g_return_val_if_fail (cts, 0);
-    if (!cts->reversed)
-	return raw_get24lint (cts, seek);
-    else
-	return raw_get24bint (cts, seek);
+    return cts->le_reader.get24int (cts, seek);
 }
 #if 0
-static guint32 get24bint (FContents *cts, glong seek)
+static inline guint32 get24bint (FContents *cts, glong seek)
 {
-    g_return_val_if_fail (cts, 0);
-    if (!cts->reversed)
-	return raw_get24bint (cts, seek);
-    else
-	return raw_get24lint (cts, seek);
+    return cts->be_reader.get24int (cts, seek);
 }
 #endif
-static guint32 get32lint (FContents *cts, glong seek)
+static inline guint32 get32lint (FContents *cts, glong seek)
 {
-    g_return_val_if_fail (cts, 0);
-    if (!cts->reversed)
-	return raw_get32lint (cts, seek);
-    else
-	return raw_get32bint (cts, seek);
+    return cts->le_reader.get32int (cts, seek);
 }
 
-static float get32lfloat (FContents *cts, glong seek)
+static inline float get32lfloat (FContents *cts, glong seek)
 {
-    g_return_val_if_fail (cts, 0);
-    if (!cts->reversed)
-	return raw_get32lfloat (cts, seek);
-    else
-	return raw_get32bfloat (cts, seek);
+    return cts->le_reader.get32float (cts, seek);
 }
 
-static guint64 get64lint (FContents *cts, glong seek)
+static inline guint64 get64lint (FContents *cts, glong seek)
 {
-    g_return_val_if_fail (cts, 0);
-    if (!cts->reversed)
-	return raw_get64lint (cts, seek);
-    else
-	return raw_get64bint (cts, seek);
+    return cts->le_reader.get64int (cts, seek);
 }
 
 
 
 /* ------------------------------------------------------------
-   Reversed Endian Sensitive (big endian)
+   Big Endian
    ------------------------------------------------------------ */
 
-static guint16 get16bint (FContents *cts, glong seek)
+static inline guint16 get16bint (FContents *cts, glong seek)
 {
-    g_return_val_if_fail (cts, 0);
-    if (!cts->reversed)
-	return raw_get16bint (cts, seek);
-    else
-	return raw_get16lint (cts, seek);
+    return cts->be_reader.get16int (cts, seek);
 }
 
-static guint32 get32bint (FContents *cts, glong seek)
+static inline guint32 get32bint (FContents *cts, glong seek)
 {
-    g_return_val_if_fail (cts, 0);
-    if (!cts->reversed)
-	return raw_get32bint (cts, seek);
-    else
-	return raw_get32lint (cts, seek);
+    return cts->be_reader.get32int (cts, seek);
 }
 
 #if 0
-static float get32bfloat (FContents *cts, glong seek)
+static inline float get32bfloat (FContents *cts, glong seek)
 {
-    g_return_val_if_fail (cts, 0);
-    if (!cts->reversed)
-	return raw_get32bfloat (cts, seek);
-    else
-	return raw_get32lfloat (cts, seek);
+    return cts->be_reader.get32float (cts, seek);
 }
 #endif
 
-static guint64 get64bint (FContents *cts, glong seek)
+static inline guint64 get64bint (FContents *cts, glong seek)
 {
-    g_return_val_if_fail (cts, 0);
-    if (!cts->reversed)
-	return raw_get64bint (cts, seek);
-    else
-	return raw_get64lint (cts, seek);
+    return cts->be_reader.get64int (cts, seek);
 }
 
 
@@ -860,7 +855,7 @@
 /* get next playcount, that is the first entry of GList
  * playcounts. This entry is removed from the list. You must free the
  * return value after use */
-static struct playcount *playcount_get_next (FImport *fimp)
+static struct playcount *playcount_take_next (FImport *fimp)
 {
     struct playcount *playcount;
     g_return_val_if_fail (fimp, NULL);
@@ -879,13 +874,14 @@
 
     g_return_if_fail (fimp);
 
-    while ((playcount=playcount_get_next (fimp))) g_free (playcount);
+    while ((playcount=playcount_take_next (fimp))) g_free (playcount);
 }
 
 
 /* called by init_playcounts */
 static gboolean playcounts_read (FImport *fimp, FContents *cts)
 {
+    GList* playcounts = NULL;
     guint32 header_length, entry_length, entry_num, i=0;
 
     g_return_val_if_fail (fimp, FALSE);
@@ -898,7 +894,7 @@
 	    g_propagate_error (&fimp->error, cts->error);
 	    return FALSE;
 	}
-	cts->reversed = TRUE;
+	fcontents_set_reversed (cts, TRUE);
 	if (!check_header_seek (cts, "mhdp", 0))
 	{
 	    if (cts->error)
@@ -957,7 +953,7 @@
 	check_seek (cts, seek, entry_length);
 	CHECK_ERROR (fimp, FALSE);	
 
-	fimp->playcounts = g_list_append (fimp->playcounts, playcount);
+	playcounts = g_list_prepend (playcounts, playcount);
 	playcount->playcount = get32lint (cts, seek);	
 	mac_time = get32lint (cts, seek+4);
 	playcount->time_played = device_time_mac_to_time_t (fimp->itdb->device, mac_time);
@@ -988,6 +984,7 @@
 
 	}
     }
+    fimp->playcounts = g_list_reverse(playcounts);
     return TRUE;
 }
 
@@ -995,6 +992,7 @@
 /* called by init_playcounts */
 static gboolean itunesstats_read (FImport *fimp, FContents *cts)
 {
+    GList* playcounts;
     guint32 entry_num, i=0;
     glong seek;
 
@@ -1021,7 +1019,7 @@
 	    return FALSE;
 	}
 
-	fimp->playcounts = g_list_append (fimp->playcounts, playcount);
+	playcounts = g_list_prepend (playcounts, playcount);
 	/* NOTE:
 	 *
 	 * The iPod (firmware 1.3, 2.0, ...?) doesn't seem to use the
@@ -1046,6 +1044,7 @@
 
 	seek += entry_length;
     }
+    fimp->playcounts = g_list_reverse(playcounts);
     return TRUE;
 }
 
@@ -1137,6 +1136,7 @@
     {
 	if (fimp->fcontents)  fcontents_free (fimp->fcontents);
 	g_list_free (fimp->pos_glist);
+	g_list_free (fimp->tracks);
 	playcounts_free (fimp);
 	g_free (fimp);
     }
@@ -1660,6 +1660,9 @@
     case MHOD_ID_SORT_ALBUMARTIST:
     case MHOD_ID_SORT_COMPOSER:
     case MHOD_ID_SORT_TVSHOW:
+    case MHOD_ID_ALBUM_ALBUM:
+    case MHOD_ID_ALBUM_ARTIST:
+    case MHOD_ID_ALBUM_SORT_ARTIST:
 	mhoddata = get_mhod (fimp, seek, ml);
 	if ((*ml != -1) && mhoddata.valid)
 	    return mhoddata.data.string;
@@ -1791,7 +1794,7 @@
 
     if (!check_header_seek (cts, "mhbd", 0))
     {
-	cts->reversed = TRUE;
+	fcontents_set_reversed (cts, TRUE);
 	if (cts->error) return 0;
 	if (!check_header_seek (cts, "mhbd", 0))
 	{
@@ -1855,31 +1858,30 @@
 }
 
 
+/* sort in reverse order */
+static gint pos_comp (gconstpointer a, gconstpointer b)
+{
+    const PosEntry *pa = (const PosEntry*)a;
+    const PosEntry *pb = (const PosEntry*)b;
 
-static gint pos_comp (gpointer a, gpointer b);
-static gint pos_comp (gpointer a, gpointer b)
-{
-    return (GPOINTER_TO_UINT(a) - GPOINTER_TO_UINT(b));
+    return pb->track_pos - pa->track_pos;
 }
 
 
 /* Read and process the mhip at @seek. Return a pointer to the next
    possible mhip. */
 /* Return value: -1 if no mhip is present at @seek */
-static glong get_mhip (FImport *fimp, Itdb_Playlist *plitem,
-		       glong mhip_seek)
+static glong get_mhip (FImport *fimp, glong mhip_seek)
 {
     gboolean first_entry = TRUE;
     FContents *cts;
     guint32 mhip_hlen, mhip_len, mhod_num, mhod_seek;
-    Itdb_Track *tr;
-    gint32 i, pos=-1;
+    gint32 i;
     gint32 mhod_type;
     guint32 trackid;
 
 
     g_return_val_if_fail (fimp, -1);
-    g_return_val_if_fail (plitem, -1);
 
     cts = fimp->fcontents;
 
@@ -1928,23 +1930,12 @@
 	    MHODData mhod;
 	    mhod = get_mhod (fimp, mhod_seek, &mhod_len);
 	    CHECK_ERROR (fimp, -1);
-	    pos = -1;
 	    if (mhod.valid && first_entry)
 	    {
-		/* The posids don't have to be in numeric order, but our
-		   database depends on the playlist members being sorted
-		   according to the order they appear in the
-		   playlist. Therefore we need to find out at which
-		   position to insert the track */
-		fimp->pos_glist = g_list_insert_sorted (
-		    fimp->pos_glist,
-		    GUINT_TO_POINTER(mhod.data.track_pos),
-		    (GCompareFunc)pos_comp);
-		pos = g_list_index (
-		    fimp->pos_glist,
-		    GUINT_TO_POINTER(mhod.data.track_pos));
-		/* for speedup: pos==-1 is appending at the end */
-		if (pos == fimp->pos_len)   pos = -1;
+		PosEntry *entry = g_new(PosEntry, 1);
+		entry->trackid = trackid;
+		entry->track_pos = mhod.data.track_pos;
+		fimp->pos_glist = g_list_prepend (fimp->pos_glist, entry);
 		/* don't call this section more than once (it never
 		   should happen except in the case of corrupted
 		   iTunesDBs...) */
@@ -1963,20 +1954,6 @@
 	mhod_seek += mhod_len;
     }
 
-    tr = itdb_track_id_tree_by_id (fimp->idtree, trackid);
-    if (tr)
-    {
-	itdb_playlist_add_track (plitem, tr, pos);
-	++fimp->pos_len;
-    }
-    else
-    {
-	if (plitem->podcastflag == ITDB_PL_FLAG_NORM)
-	{
-	g_warning (_("Itdb_Track ID '%d' not found.\n"), trackid);
-	}
-    }
-
     /* Up to iTunesd V4.7 or so the mhip_len was set incorrectly
        (mhip_len == mhip_hlen). In that case we need to find the seek
        to the next mhip by going through all mhods.
@@ -2001,6 +1978,7 @@
   guint32 header_len;
   Itdb_Playlist *plitem = NULL;
   FContents *cts;
+  GList *gl;
 
 #if ITUNESDB_DEBUG
   fprintf(stderr, "mhyp seek: %x\n", (int)mhyp_seek);
@@ -2008,7 +1986,6 @@
   g_return_val_if_fail (fimp, -1);
   g_return_val_if_fail (fimp->idtree, -1);
   g_return_val_if_fail (fimp->pos_glist == NULL, -1);
-  g_return_val_if_fail (fimp->pos_len == 0, -1);
 
   cts = fimp->fcontents;
 
@@ -2132,6 +2109,9 @@
 	  case MHOD_ID_SORT_ALBUMARTIST:
 	  case MHOD_ID_SORT_COMPOSER:
 	  case MHOD_ID_SORT_TVSHOW:
+	  case MHOD_ID_ALBUM_ALBUM:
+	  case MHOD_ID_ALBUM_ARTIST:
+	  case MHOD_ID_ALBUM_SORT_ARTIST:
 	  case MHOD_ID_LIBPLAYLISTJUMPTABLE:
 	      /* these are not expected here */
 	      break;
@@ -2175,7 +2155,7 @@
   i=0; /* tracks read */
   for (i=0; i < mhipnum; ++i)
   {
-      mhip_seek = get_mhip (fimp, plitem, mhip_seek);
+      mhip_seek = get_mhip (fimp, mhip_seek);
       if (mhip_seek == -1)
       {
 	  g_set_error (&fimp->error,
@@ -2187,10 +2167,29 @@
       }
   }	  
 
+  /* sort in reverse order */
+  fimp->pos_glist = g_list_sort (fimp->pos_glist, pos_comp);
+  for (gl = fimp->pos_glist; gl; gl = g_list_next (gl))
+  {
+      PosEntry* entry = (PosEntry*)gl->data;
+      Itdb_Track *tr = itdb_track_id_tree_by_id (fimp->idtree, entry->trackid);
+      if (tr)
+      {
+	  /* preprend because we sorted in reverse order */
+	  itdb_playlist_add_track (plitem, tr, 0);
+      }
+      else
+      {
+	  if (plitem->podcastflag == ITDB_PL_FLAG_NORM)
+	  {
+	      g_warning (_("Itdb_Track ID '%d' not found.\n"), entry->trackid);
+	  }
+      }
+      g_free(entry);
+  }
 
   g_list_free (fimp->pos_glist);
   fimp->pos_glist = NULL;
-  fimp->pos_len = 0;
   return nextseek;
 }
 
@@ -2449,6 +2448,9 @@
 	  case MHOD_ID_LIBPLAYLISTJUMPTABLE:
 	  case MHOD_ID_PLAYLIST:
 	  case MHOD_ID_CHAPTERDATA:
+	  case MHOD_ID_ALBUM_ALBUM:
+	  case MHOD_ID_ALBUM_ARTIST:
+	  case MHOD_ID_ALBUM_SORT_ARTIST:
 	      g_free (entry_utf8);
 	      break;
 	  }
@@ -2476,7 +2478,7 @@
       seek += zip;
   }
 
-  playcount = playcount_get_next (fimp);
+  playcount = playcount_take_next (fimp);
   if (playcount)
   {
       if (playcount->rating != NO_PLAYCOUNT)
@@ -2506,7 +2508,7 @@
 
       g_free (playcount);
   }
-  itdb_track_add (fimp->itdb, track, -1);
+  fimp->tracks = g_list_prepend(fimp->tracks, track);
   return seek;
 }
 
@@ -2533,7 +2535,7 @@
 	    g_propagate_error (&fimp->error, cts->error);
 	    return FALSE;
 	}
-	cts->reversed = TRUE;
+	fcontents_set_reversed (cts, TRUE);
 	if (!check_header_seek (cts, "mhpo", 0))
 	{
 	    /* cts->error can't be set as already checked above */
@@ -2673,6 +2675,7 @@
 static gboolean parse_tracks (FImport *fimp, glong mhsd_seek)
 {
     FContents *cts;
+    GList* gl;
     glong mhlt_seek, seek;
     guint32 nr_tracks, i;
 
@@ -2720,6 +2723,10 @@
 	    break;
 	}
     }
+    for (gl=fimp->tracks; gl; gl=g_list_next(gl)) {
+	Itdb_Track *track = (Itdb_Track *)gl->data;
+	itdb_track_add (fimp->itdb, track, 0);
+    }
     return TRUE;
 }
 
@@ -3488,8 +3495,9 @@
   put16lint (cts, 2);   /* always seems to be 2 */
   put16_n0  (cts, 7);  /* unknown */
   /* 0x30 */
-  put16lint (cts, 1);   /* ? but iPod Classic/fat Nanos won't display any song
-			 * if it's not 1 */
+  put16lint (cts, 0);   /* set hashing scheme to 0 for now, will be set
+			 * to the appropriate value in
+			 * itdb_device_write_checksum */
   put16_n0  (cts, 10);  /* unknown */
   /* 0x46 */
   put16lint (cts, 0);   /* langauge */
@@ -3499,7 +3507,10 @@
   put32lint (cts, 0);   /* unknown: seen: 0x4d for nano 3G */
   put32_n0 (cts, 5);    /* 20 bytes hash */
   put32lint (cts, 0);   /* timezone offset in seconds */
-  put32_n0 (cts, 19);   /* dummy space */
+  put16lint (cts, 2);   /* without it, iTunes thinks iPhone databases
+			   are corrupted */
+  put16lint (cts, 0);
+  put32_n0 (cts, 18);   /* dummy space */
 }
 
 /* Fill in the length of a standard header */
@@ -3639,7 +3650,9 @@
   put32lint (cts, track->unk252);
   put16lint (cts, track->gapless_track_flag);
   put16lint (cts, track->gapless_album_flag);
-  put32_n0 (cts, 23);
+  put32_n0 (cts, 22);
+  put16lint (cts, 0);
+  put16lint (cts, track->album_id);
   put32lint (cts, track->mhii_link); /* Needed on fat nanos/ipod classic to get art
 				      * in the right sidepane (mhii_link) */
   put32_n0 (cts, 8); /* padding */
@@ -3981,6 +3994,9 @@
   case MHOD_ID_SORT_ALBUMARTIST:
   case MHOD_ID_SORT_COMPOSER:
   case MHOD_ID_SORT_TVSHOW:
+  case MHOD_ID_ALBUM_ALBUM:
+  case MHOD_ID_ALBUM_ARTIST:
+  case MHOD_ID_ALBUM_SORT_ARTIST:
       g_return_if_fail (mhod->data.string);
       /* normal iTunesDBs seem to take utf16 strings), endian-inversed
 	 iTunesDBs seem to take utf8 strings */
@@ -4335,7 +4351,90 @@
   }
 }
 
+static void mk_mhia (gpointer key, gpointer value, gpointer user_data)
+{
+  FExport *fexp;
+  WContents *cts;
+  Itdb_Track *track;
+  MHODData mhod;
+  guint mhod_num;
+  gulong mhia_seek;
 
+  track = (Itdb_Track *)key;
+  g_return_if_fail (track != NULL);
+
+  fexp = (FExport *)user_data;
+  g_return_if_fail (fexp);
+  g_return_if_fail (fexp->wcontents);
+  cts = fexp->wcontents;
+  mhia_seek = cts->pos;
+
+  put_header (cts, "mhia");        		/* header                   */
+  put32lint (cts, 92);             		/* size of header           */
+  put32lint (cts, -1);             		/* total size -> later */
+  put32lint (cts, 2);		   		/* number of children mhods */
+  put16lint (cts, 0);		  		/* unknown */
+  put16lint (cts, GPOINTER_TO_UINT (value));   	/* album id */
+  put32lint (cts, 0);		   		/* unknown */
+  put32lint (cts, 0);		   		/* unknown */
+  put32lint (cts, 2);		   		/* unknown */
+  put32_n0 (cts, 15); 				/* padding */
+
+  mhod.valid = TRUE;
+  mhod_num = 0;
+  if (track->album && *track->album) {
+      mhod.type = MHOD_ID_ALBUM_ALBUM;
+      mhod.data.string = track->album;
+      mk_mhod (fexp, &mhod);
+      ++mhod_num;
+  }
+
+  if (track->albumartist && *track->albumartist) {
+      mhod.type = MHOD_ID_ALBUM_ARTIST;
+      mhod.data.string = track->albumartist;
+      mk_mhod (fexp, &mhod);
+      ++mhod_num;
+  } else if (track->artist && *track->artist) {
+      mhod.type = MHOD_ID_ALBUM_ARTIST;
+      mhod.data.string = track->artist;
+      mk_mhod (fexp, &mhod);
+      ++mhod_num;
+  }
+
+  if (track->sort_albumartist && *track->sort_albumartist) {
+      mhod.type = MHOD_ID_ALBUM_SORT_ARTIST;
+      mhod.data.string = track->sort_albumartist;
+      mk_mhod (fexp, &mhod);
+      ++mhod_num;
+  } else if (track->sort_artist && *track->sort_artist) {
+      mhod.type = MHOD_ID_ALBUM_SORT_ARTIST;
+      mhod.data.string = track->sort_artist;
+      mk_mhod (fexp, &mhod);
+      ++mhod_num;
+  }
+  fix_mhit (cts, mhia_seek, mhod_num);
+}
+
+static void mk_mhla (FExport *fexp)
+{
+  WContents *cts;
+
+  g_return_if_fail (fexp);
+  g_return_if_fail (fexp->wcontents);
+  g_return_if_fail (fexp->albums);
+
+  cts = fexp->wcontents;
+
+  put_header (cts, "mhla");        /* header                   */
+  put32lint (cts, 92);             /* size of header           */
+  /* albums on iPod (including main!) */
+  put32lint (cts, g_hash_table_size (fexp->albums));
+  put32_n0 (cts, 20);               /* dummy space              */
+  g_hash_table_foreach (fexp->albums, mk_mhia, fexp);
+  g_hash_table_destroy (fexp->albums);
+  fexp->albums = NULL;
+}
+
 /* Write out the mhlp header. Size will be written later */
 static void mk_mhlp (FExport *fexp)
 {
@@ -4983,7 +5082,23 @@
     return TRUE;
 }
 
+static gboolean write_mhsd_albums (FExport *fexp)
+{
+    gulong mhsd_seek;
+    WContents *cts;
 
+    g_return_val_if_fail (fexp, FALSE);
+    g_return_val_if_fail (fexp->itdb, FALSE);
+    g_return_val_if_fail (fexp->wcontents, FALSE);
+
+    cts = fexp->wcontents;
+    mhsd_seek = cts->pos;      	/* get position of mhsd header */
+    mk_mhsd (fexp, 4); 		/* write header */
+    mk_mhla (fexp);
+    fix_header (cts, mhsd_seek);
+    return TRUE;
+}
+
 /* create a WContents structure */
 static WContents *wcontents_new (const gchar *filename)
 {
@@ -5025,14 +5140,46 @@
 }
 
 
+static guint itdb_track_hash (gconstpointer v)
+{
+  Itdb_Track *track = (Itdb_Track *)v;
+  if (track->album != NULL) {
+    return g_str_hash (track->album);
+  } else if (track->artist != NULL) {
+    return g_str_hash (track->artist);;
+  }
+  g_assert_not_reached ();
+}
+
+static gboolean itdb_track_equal (gconstpointer v1, gconstpointer v2)
+{
+  Itdb_Track *track1 = (Itdb_Track *)v1;
+  Itdb_Track *track2 = (Itdb_Track *)v2;
+
+  g_assert (track1->album != NULL);
+  g_assert (track2->album != NULL);
+
+  if ((track1->albumartist != NULL) && (track2->albumartist != NULL)) {
+      return (g_str_equal (track1->album, track2->album)
+	      && g_str_equal (track1->albumartist, track2->albumartist));
+  } else if ((track1->artist != NULL) && (track2->artist != NULL)) {
+      return (g_str_equal (track1->album, track2->album)
+	      && g_str_equal (track1->artist, track2->artist));
+  } else {
+      return (g_str_equal (track1->album, track2->album));
+  }
+}
+
 /* - reassign the iPod IDs
    - make sure the itdb->tracks are in the same order as the mpl
+   - assign album IDs to write the MHLA
 */
 static void prepare_itdb_for_write (FExport *fexp)
 {
     GList *gl;
     Itdb_iTunesDB *itdb;
     Itdb_Playlist *mpl;
+    guint album_id = 1;
 
     g_return_if_fail (fexp);
     itdb = fexp->itdb;
@@ -5061,57 +5208,35 @@
 
     fexp->next_id = FIRST_IPOD_ID;
 
+    g_assert (fexp->albums == NULL);
+    fexp->albums = g_hash_table_new (itdb_track_hash, itdb_track_equal);
+
     /* assign unique IDs and create sort keys */
     for (gl=itdb->tracks; gl; gl=gl->next)
     {
 	Itdb_Track *track = gl->data;
+	guint id;
+
 	g_return_if_fail (track);
 	track->id = fexp->next_id++;
-    }
-}
 
-
-static gboolean write_db_checksum (FExport *fexp, GError **error)
-{
-    guint64 fwid;
-    guchar backup18[8];
-    guchar backup32[20];
-    unsigned char *itdb_data;
-    unsigned char *checksum;
-    gsize len;
-    
-    fwid = itdb_device_get_firewire_id (fexp->itdb->device);
-    if ((fwid == 0) && (itdb_device_requires_checksum (fexp->itdb->device))) {
-	g_set_error (error, 0, -1, "Couldn't find the iPod firewire ID");
-	return FALSE;
+	if (track->album == NULL) {	
+	    /* unknow album name and artist, this entry isn't interesting to
+	     * build the list of all albums on the ipod
+	     */
+	    continue;
+	}
+	/* album ids are used when writing the mhla header */
+	id = GPOINTER_TO_UINT (g_hash_table_lookup (fexp->albums, track));
+	if (id != 0) {
+	    track->album_id = id;
+	} else {	
+	    g_hash_table_insert (fexp->albums, track,
+				 GUINT_TO_POINTER (album_id));
+	    track->album_id = album_id;
+	    album_id++;
+	}
     }
-
-    if (fexp->wcontents->pos < 0x6c) {
-	g_set_error (error, 0, -1, "iTunesDB file too small to write checksum");
-	return FALSE;
-    }
-    itdb_data = (unsigned char *)fexp->wcontents->contents;
-
-    memcpy (backup18, itdb_data+0x18, sizeof (backup18));
-    memcpy (backup32, itdb_data+0x32, sizeof (backup32));
-
-    /* Those fields must be zero'ed out for the sha1 calculation */
-    memset(itdb_data+0x18, 0, 8);
-    memset(itdb_data+0x32, 0, 20);
-    memset(itdb_data+0x58, 0, 20);
-
-    checksum = itdb_compute_hash (fwid, itdb_data, fexp->wcontents->pos, &len);
-    if (checksum == NULL) {
-	g_set_error (error, 0, -1, "Failed to compute checksum");
-	return FALSE;
-    }
-    memcpy (itdb_data+0x58, checksum, len);    
-    g_free (checksum);
-
-    memcpy (itdb_data+0x18, backup18, sizeof (backup18));
-    memcpy (itdb_data+0x32, backup32, sizeof (backup32));
-
-    return TRUE;
 }
 
 /**
@@ -5166,7 +5291,7 @@
     }
 #endif
 
-    mk_mhbd (fexp, 3);   /* three mhsds */
+    mk_mhbd (fexp, 4);   /* four mhsds */
     /* write tracklist */
     if (write_mhsd_tracks (fexp))
     {   /* write special podcast version mhsd */
@@ -5174,12 +5299,17 @@
 	{   /* write standard playlist mhsd */
 	    if (write_mhsd_playlists (fexp, 2))
 	    {
-		fix_header (cts, mhbd_seek);
+		if (write_mhsd_albums (fexp)) {
+		    fix_header (cts, mhbd_seek);
 
-		/* Set checksum (ipods require it starting from iPod Classic 
-		 * and fat Nanos)
-		 */
-		write_db_checksum (fexp, &fexp->error);
+		    /* Set checksum (ipods require it starting from
+		     * iPod Classic and fat Nanos)
+		     */
+		    itdb_device_write_checksum (itdb->device,
+						(unsigned char *)fexp->wcontents->contents,
+						fexp->wcontents->pos,
+						&fexp->error);
+		}
 	    }
 	}
     }
@@ -5194,6 +5324,9 @@
 	result = FALSE;
     }
     wcontents_free (cts);
+    if (fexp->albums != NULL) {
+	g_hash_table_destroy (fexp->albums);
+    }
     g_free (fexp);
     if (result == TRUE)
     {
@@ -5721,6 +5854,10 @@
  * available /iPod_Control/Music/F.. dirs. It doesn't attempt to parse
  * an iPod database that may be present on the iPod at @mp.
  *
+ * <note><para>Calling this function removes the artwork in the
+ * #Itdb_iTunesDB database using this #Itdb_Device which was read from the
+ * iPod.</para></note>.
+ *
  * Since: 0.1.3
  */
 void itdb_set_mountpoint (Itdb_iTunesDB *itdb, const gchar *mp)
@@ -6662,7 +6799,7 @@
 /**
  * itdb_init_ipod:
  * @mountpoint:   the iPod mountpoint
- * @model_number: the iPod model number
+ * @model_number: the iPod model number, can be NULL
  * @ipod_name:    the name to give to the iPod. Will be displayed in
  *                gtkpod or itunes
  * @error:        return location for a #GError or NULL
@@ -6671,6 +6808,12 @@
  * create a blank database, complete with master playlist and device
  * information as well as the directory structure required for the
  * type of iPod.
+ * @model_number is used to tell libgpod about the exact iPod
+ * model, which is needed for proper artwork writing. @model_number can be
+ * found from the table returned by itdb_device_get_ipod_info_table (for
+ * example). On recent distros with iPods released
+ * in the last few years (starting with the iPod Color), it should be fine
+ * to pass in a NULL @model_number while still getting artwork writing.
  * 
  * Returns: TRUE when successful, FALSE if a failure has occurred.
  *

Modified: libgpod/branches/upstream/current/src/itdb_private.h
===================================================================
--- libgpod/branches/upstream/current/src/itdb_private.h	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/src/itdb_private.h	2009-06-19 20:28:03 UTC (rev 384)
@@ -23,7 +23,7 @@
 |
 |  This product is not supported/written/published by Apple!
 |
-|  $Id: itdb_private.h 1971 2008-05-11 07:17:29Z jcsjcs $
+|  $Id: itdb_private.h 2306 2009-04-05 15:41:56Z teuf $
 */
 
 #ifndef __ITDB_PRIVATE_H__
@@ -51,19 +51,31 @@
 };
 
 
-/* keeps the contents of one disk file (read) */
+struct FContents_;
+
 typedef struct
 {
+    guint16 (* get16int) (struct FContents_ *cts, glong seek);
+    guint32 (* get24int) (struct FContents_ *cts, glong seek);
+    guint32 (* get32int) (struct FContents_ *cts, glong seek);
+    guint64 (* get64int) (struct FContents_ *cts, glong seek);
+    float (* get32float) (struct FContents_ *cts, glong seek);
+} ByteReader;
+
+/* keeps the contents of one disk file (read) */
+typedef struct FContents_
+{
     gchar *filename;
     gchar *contents;
     /* indicate that endian order is reversed as in the case of the
        iTunesDBs for mobile phones */
     gboolean reversed;
+    ByteReader le_reader;
+    ByteReader be_reader;
     gsize length;
     GError *error;
 } FContents;
 
-
 /* struct used to hold all necessary information when importing a
    Itdb_iTunesDB */
 typedef struct
@@ -71,7 +83,7 @@
     Itdb_iTunesDB *itdb;
     FContents *fcontents;
     GList *pos_glist;    /* temporary list to store position indicators */
-    gint32 pos_len;      /* current length of above list */
+    GList *tracks;       /* temporary list to store tracks */
     GList *playcounts;   /* contents of Play Counts file */
     GTree *idtree;       /* temporary tree with track id tree */
     GError *error;       /* where to report errors to */
@@ -120,6 +132,7 @@
     Itdb_iTunesDB *itdb;
     WContents *wcontents;
     guint32 next_id;     /* next free ID to use       */
+    GHashTable *albums;  /* used to build the MHLA    */
     GError *error;       /* where to report errors to */
 } FExport;
 
@@ -155,7 +168,6 @@
 G_GNUC_INTERNAL guint64 device_time_time_t_to_mac (Itdb_Device *device,
 						 time_t timet);
 G_GNUC_INTERNAL gint itdb_musicdirs_number_by_mountpoint (const gchar *mountpoint);
-G_GNUC_INTERNAL gboolean itdb_device_requires_checksum (Itdb_Device *device);
 G_GNUC_INTERNAL gboolean itdb_file_set_contents (const char *filename, 
                                                  const char *data, gssize len, 
                                                  GError **error);

Modified: libgpod/branches/upstream/current/src/itdb_sysinfo_extended_parser.c
===================================================================
--- libgpod/branches/upstream/current/src/itdb_sysinfo_extended_parser.c	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/src/itdb_sysinfo_extended_parser.c	2009-06-19 20:28:03 UTC (rev 384)
@@ -639,3 +639,11 @@
 
     return props->supports_sparse_artwork;
 }
+
+gboolean
+itdb_sysinfo_properties_supports_podcast (const SysInfoIpodProperties *props)
+{
+    g_return_val_if_fail (props != NULL, FALSE);
+
+    return props->podcasts_supported;
+}

Modified: libgpod/branches/upstream/current/src/itdb_sysinfo_extended_parser.h
===================================================================
--- libgpod/branches/upstream/current/src/itdb_sysinfo_extended_parser.h	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/src/itdb_sysinfo_extended_parser.h	2009-06-19 20:28:03 UTC (rev 384)
@@ -58,6 +58,8 @@
 itdb_sysinfo_properties_get_chapter_image_formats (const SysInfoIpodProperties *);
 G_GNUC_INTERNAL gboolean
 itdb_sysinfo_properties_supports_sparse_artwork (const SysInfoIpodProperties *);
+G_GNUC_INTERNAL gboolean
+itdb_sysinfo_properties_supports_podcast (const SysInfoIpodProperties *);
 
 G_END_DECLS
 

Modified: libgpod/branches/upstream/current/src/itdb_thumb.c
===================================================================
--- libgpod/branches/upstream/current/src/itdb_thumb.c	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/src/itdb_thumb.c	2009-06-19 20:28:03 UTC (rev 384)
@@ -440,7 +440,7 @@
     case ITDB_THUMB_TYPE_IPOD:
         {
 	    Itdb_Thumb_Ipod *thumb_ipod = (Itdb_Thumb_Ipod *)thumb;
-	    const GList *thumb;
+	    const GList *it;
 	    Itdb_Thumb_Ipod_Item *chosen;
 	    gint w=width;
 	    gint h=height;
@@ -456,10 +456,10 @@
 		return NULL;
 	    }
 	    chosen = NULL;
-	    for (thumb = itdb_thumb_ipod_get_thumbs (thumb_ipod);
-		 thumb != NULL;
-		 thumb = thumb->next) {
-		Itdb_Thumb_Ipod_Item *item = (Itdb_Thumb_Ipod_Item*)thumb->data;
+	    for (it = itdb_thumb_ipod_get_thumbs (thumb_ipod);
+		 it != NULL;
+		 it = it->next) {
+		Itdb_Thumb_Ipod_Item *item = (Itdb_Thumb_Ipod_Item*)it->data;
 		if (chosen == NULL)
 		{   /* make sure we select *something* */
 		    chosen = item;

Modified: libgpod/branches/upstream/current/tests/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/tests/Makefile.in	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/tests/Makefile.in	2009-06-19 20:28:03 UTC (rev 384)
@@ -194,6 +194,7 @@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
 HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HALFDIDIR = @HALFDIDIR@
 HAL_CFLAGS = @HAL_CFLAGS@
 HAL_LIBS = @HAL_LIBS@
 HTML_DIR = @HTML_DIR@

Modified: libgpod/branches/upstream/current/tools/Makefile.am
===================================================================
--- libgpod/branches/upstream/current/tools/Makefile.am	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/tools/Makefile.am	2009-06-19 20:28:03 UTC (rev 384)
@@ -1,10 +1,11 @@
 if HAVE_SGUTILS
 
 bin_PROGRAMS=ipod-read-sysinfo-extended
+noinst_PROGRAMS=ipod-time-sync
 
 ipod_read_sysinfo_extended_SOURCES =	\
 	read-sysinfoextended-sgutils.c	\
-	ipod-scsi-inquiry.c
+	ipod-scsi.c
 ipod_read_sysinfo_extended_CFLAGS=$(LIBGPOD_CFLAGS) $(SGUTILS_CFLAGS) -I$(top_srcdir)/src
 ipod_read_sysinfo_extended_LDADD=$(LIBGPOD_LIBS) $(SGUTILS_LIBS) $(top_builddir)/src/libgpod.la
 
@@ -14,14 +15,20 @@
 
 libgpod_callout_SOURCES =		\
 	hal-callout.c 		\
-	ipod-scsi-inquiry.c
+	ipod-scsi.c
 libgpod_callout_CFLAGS=$(LIBGPOD_CFLAGS) $(SGUTILS_CFLAGS) -I$(top_srcdir)/src
 libgpod_callout_LDADD=$(LIBGPOD_LIBS) $(SGUTILS_LIBS) $(top_builddir)/src/libgpod.la
 
-fdidir = $(datadir)/hal/fdi/policy/20thirdparty
+ipod_time_sync_SOURCES =	\
+	ipod-time-sync.c	\
+	ipod-scsi.c
+ipod_time_sync_CFLAGS=$(SGUTILS_CFLAGS) $(LIBGPOD_CFLAGS) 
+ipod_time_sync_LDADD=$(SGUTILS_LIBS) $(LIBGPOD_LIBS) 
+
+fdidir = $(HALFDIDIR)/policy/20thirdparty
 fdi_DATA = 20-libgpod-sysinfo-extended.fdi
 
-EXTRA_DIST = $(fdi_DATA) 
+EXTRA_DIST = $(fdi_DATA)
 
 endif
 

Modified: libgpod/branches/upstream/current/tools/Makefile.in
===================================================================
--- libgpod/branches/upstream/current/tools/Makefile.in	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/tools/Makefile.in	2009-06-19 20:28:03 UTC (rev 384)
@@ -34,6 +34,7 @@
 build_triplet = @build@
 host_triplet = @host@
 @HAVE_SGUTILS_TRUE at bin_PROGRAMS = ipod-read-sysinfo-extended$(EXEEXT)
+ at HAVE_SGUTILS_TRUE@noinst_PROGRAMS = ipod-time-sync$(EXEEXT)
 @HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at hal_PROGRAMS =  \
 @HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	libgpod-callout$(EXEEXT)
 subdir = tools
@@ -51,11 +52,11 @@
 	"$(DESTDIR)$(fdidir)"
 binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
 halPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
-PROGRAMS = $(bin_PROGRAMS) $(hal_PROGRAMS)
+PROGRAMS = $(bin_PROGRAMS) $(hal_PROGRAMS) $(noinst_PROGRAMS)
 am__ipod_read_sysinfo_extended_SOURCES_DIST =  \
-	read-sysinfoextended-sgutils.c ipod-scsi-inquiry.c
+	read-sysinfoextended-sgutils.c ipod-scsi.c
 @HAVE_SGUTILS_TRUE at am_ipod_read_sysinfo_extended_OBJECTS = ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.$(OBJEXT) \
- at HAVE_SGUTILS_TRUE@	ipod_read_sysinfo_extended-ipod-scsi-inquiry.$(OBJEXT)
+ at HAVE_SGUTILS_TRUE@	ipod_read_sysinfo_extended-ipod-scsi.$(OBJEXT)
 ipod_read_sysinfo_extended_OBJECTS =  \
 	$(am_ipod_read_sysinfo_extended_OBJECTS)
 am__DEPENDENCIES_1 =
@@ -66,9 +67,19 @@
 	$(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
 	$(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
 	$(LDFLAGS) -o $@
-am__libgpod_callout_SOURCES_DIST = hal-callout.c ipod-scsi-inquiry.c
+am__ipod_time_sync_SOURCES_DIST = ipod-time-sync.c ipod-scsi.c
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at am_ipod_time_sync_OBJECTS = ipod_time_sync-ipod-time-sync.$(OBJEXT) \
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	ipod_time_sync-ipod-scsi.$(OBJEXT)
+ipod_time_sync_OBJECTS = $(am_ipod_time_sync_OBJECTS)
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at ipod_time_sync_DEPENDENCIES =  \
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	$(am__DEPENDENCIES_1) \
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	$(am__DEPENDENCIES_1)
+ipod_time_sync_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
+	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(ipod_time_sync_CFLAGS) \
+	$(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+am__libgpod_callout_SOURCES_DIST = hal-callout.c ipod-scsi.c
 @HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at am_libgpod_callout_OBJECTS = libgpod_callout-hal-callout.$(OBJEXT) \
- at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	libgpod_callout-ipod-scsi-inquiry.$(OBJEXT)
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	libgpod_callout-ipod-scsi.$(OBJEXT)
 libgpod_callout_OBJECTS = $(am_libgpod_callout_OBJECTS)
 @HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at libgpod_callout_DEPENDENCIES =  \
 @HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	$(am__DEPENDENCIES_1) \
@@ -90,8 +101,9 @@
 	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
 	$(LDFLAGS) -o $@
 SOURCES = $(ipod_read_sysinfo_extended_SOURCES) \
-	$(libgpod_callout_SOURCES)
+	$(ipod_time_sync_SOURCES) $(libgpod_callout_SOURCES)
 DIST_SOURCES = $(am__ipod_read_sysinfo_extended_SOURCES_DIST) \
+	$(am__ipod_time_sync_SOURCES_DIST) \
 	$(am__libgpod_callout_SOURCES_DIST)
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 am__vpath_adj = case $$p in \
@@ -147,6 +159,7 @@
 GREP = @GREP@
 GTKDOC_CHECK = @GTKDOC_CHECK@
 HALCALLOUTSDIR = @HALCALLOUTSDIR@
+HALFDIDIR = @HALFDIDIR@
 HAL_CFLAGS = @HAL_CFLAGS@
 HAL_LIBS = @HAL_LIBS@
 HTML_DIR = @HTML_DIR@
@@ -294,20 +307,26 @@
 top_srcdir = @top_srcdir@
 @HAVE_SGUTILS_TRUE at ipod_read_sysinfo_extended_SOURCES = \
 @HAVE_SGUTILS_TRUE@	read-sysinfoextended-sgutils.c	\
- at HAVE_SGUTILS_TRUE@	ipod-scsi-inquiry.c
+ at HAVE_SGUTILS_TRUE@	ipod-scsi.c
 
 @HAVE_SGUTILS_TRUE at ipod_read_sysinfo_extended_CFLAGS = $(LIBGPOD_CFLAGS) $(SGUTILS_CFLAGS) -I$(top_srcdir)/src
 @HAVE_SGUTILS_TRUE at ipod_read_sysinfo_extended_LDADD = $(LIBGPOD_LIBS) $(SGUTILS_LIBS) $(top_builddir)/src/libgpod.la
 @HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at haldir = $(HALCALLOUTSDIR)
 @HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at libgpod_callout_SOURCES = \
 @HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	hal-callout.c 		\
- at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	ipod-scsi-inquiry.c
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	ipod-scsi.c
 
 @HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at libgpod_callout_CFLAGS = $(LIBGPOD_CFLAGS) $(SGUTILS_CFLAGS) -I$(top_srcdir)/src
 @HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at libgpod_callout_LDADD = $(LIBGPOD_LIBS) $(SGUTILS_LIBS) $(top_builddir)/src/libgpod.la
- at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at fdidir = $(datadir)/hal/fdi/policy/20thirdparty
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at ipod_time_sync_SOURCES = \
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	ipod-time-sync.c	\
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE@	ipod-scsi.c
+
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at ipod_time_sync_CFLAGS = $(SGUTILS_CFLAGS) $(LIBGPOD_CFLAGS) 
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at ipod_time_sync_LDADD = $(SGUTILS_LIBS) $(LIBGPOD_LIBS) 
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at fdidir = $(HALFDIDIR)/policy/20thirdparty
 @HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at fdi_DATA = 20-libgpod-sysinfo-extended.fdi
- at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at EXTRA_DIST = $(fdi_DATA) 
+ at HAVE_HAL_TRUE@@HAVE_SGUTILS_TRUE at EXTRA_DIST = $(fdi_DATA)
 all: all-am
 
 .SUFFIXES:
@@ -397,9 +416,19 @@
 	  echo " rm -f $$p $$f"; \
 	  rm -f $$p $$f ; \
 	done
+
+clean-noinstPROGRAMS:
+	@list='$(noinst_PROGRAMS)'; for p in $$list; do \
+	  f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+	  echo " rm -f $$p $$f"; \
+	  rm -f $$p $$f ; \
+	done
 ipod-read-sysinfo-extended$(EXEEXT): $(ipod_read_sysinfo_extended_OBJECTS) $(ipod_read_sysinfo_extended_DEPENDENCIES) 
 	@rm -f ipod-read-sysinfo-extended$(EXEEXT)
 	$(ipod_read_sysinfo_extended_LINK) $(ipod_read_sysinfo_extended_OBJECTS) $(ipod_read_sysinfo_extended_LDADD) $(LIBS)
+ipod-time-sync$(EXEEXT): $(ipod_time_sync_OBJECTS) $(ipod_time_sync_DEPENDENCIES) 
+	@rm -f ipod-time-sync$(EXEEXT)
+	$(ipod_time_sync_LINK) $(ipod_time_sync_OBJECTS) $(ipod_time_sync_LDADD) $(LIBS)
 libgpod-callout$(EXEEXT): $(libgpod_callout_OBJECTS) $(libgpod_callout_DEPENDENCIES) 
 	@rm -f libgpod-callout$(EXEEXT)
 	$(libgpod_callout_LINK) $(libgpod_callout_OBJECTS) $(libgpod_callout_LDADD) $(LIBS)
@@ -410,10 +439,12 @@
 distclean-compile:
 	-rm -f *.tab.c
 
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi-inquiry.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi.Po at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ipod_time_sync-ipod-scsi.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/ipod_time_sync-ipod-time-sync.Po at am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libgpod_callout-hal-callout.Po at am__quote@
- at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libgpod_callout-ipod-scsi-inquiry.Po at am__quote@
+ at AMDEP_TRUE@@am__include@ @am__quote at ./$(DEPDIR)/libgpod_callout-ipod-scsi.Po at am__quote@
 
 .c.o:
 @am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -450,20 +481,48 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) -c -o ipod_read_sysinfo_extended-read-sysinfoextended-sgutils.obj `if test -f 'read-sysinfoextended-sgutils.c'; then $(CYGPATH_W) 'read-sysinfoextended-sgutils.c'; else $(CYGPATH_W) '$(srcdir)/read-sysinfoextended-sgutils.c'; fi`
 
-ipod_read_sysinfo_extended-ipod-scsi-inquiry.o: ipod-scsi-inquiry.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) -MT ipod_read_sysinfo_extended-ipod-scsi-inquiry.o -MD -MP -MF $(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi-inquiry.Tpo -c -o ipod_read_sysinfo_extended-ipod-scsi-inquiry.o `test -f 'ipod-scsi-inquiry.c' || echo '$(srcdir)/'`ipod-scsi-inquiry.c
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi-inquiry.Tpo $(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi-inquiry.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ipod-scsi-inquiry.c' object='ipod_read_sysinfo_extended-ipod-scsi-inquiry.o' libtool=no @AMDEPBACKSLASH@
+ipod_read_sysinfo_extended-ipod-scsi.o: ipod-scsi.c
+ at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) -MT ipod_read_sysinfo_extended-ipod-scsi.o -MD -MP -MF $(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi.Tpo -c -o ipod_read_sysinfo_extended-ipod-scsi.o `test -f 'ipod-scsi.c' || echo '$(srcdir)/'`ipod-scsi.c
+ at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi.Tpo $(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ipod-scsi.c' object='ipod_read_sysinfo_extended-ipod-scsi.o' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) -c -o ipod_read_sysinfo_extended-ipod-scsi-inquiry.o `test -f 'ipod-scsi-inquiry.c' || echo '$(srcdir)/'`ipod-scsi-inquiry.c
+ at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) -c -o ipod_read_sysinfo_extended-ipod-scsi.o `test -f 'ipod-scsi.c' || echo '$(srcdir)/'`ipod-scsi.c
 
-ipod_read_sysinfo_extended-ipod-scsi-inquiry.obj: ipod-scsi-inquiry.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) -MT ipod_read_sysinfo_extended-ipod-scsi-inquiry.obj -MD -MP -MF $(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi-inquiry.Tpo -c -o ipod_read_sysinfo_extended-ipod-scsi-inquiry.obj `if test -f 'ipod-scsi-inquiry.c'; then $(CYGPATH_W) 'ipod-scsi-inquiry.c'; else $(CYGPATH_W) '$(srcdir)/ipod-scsi-inquiry.c'; fi`
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi-inquiry.Tpo $(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi-inquiry.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ipod-scsi-inquiry.c' object='ipod_read_sysinfo_extended-ipod-scsi-inquiry.obj' libtool=no @AMDEPBACKSLASH@
+ipod_read_sysinfo_extended-ipod-scsi.obj: ipod-scsi.c
+ at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) -MT ipod_read_sysinfo_extended-ipod-scsi.obj -MD -MP -MF $(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi.Tpo -c -o ipod_read_sysinfo_extended-ipod-scsi.obj `if test -f 'ipod-scsi.c'; then $(CYGPATH_W) 'ipod-scsi.c'; else $(CYGPATH_W) '$(srcdir)/ipod-scsi.c'; fi`
+ at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi.Tpo $(DEPDIR)/ipod_read_sysinfo_extended-ipod-scsi.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ipod-scsi.c' object='ipod_read_sysinfo_extended-ipod-scsi.obj' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) -c -o ipod_read_sysinfo_extended-ipod-scsi-inquiry.obj `if test -f 'ipod-scsi-inquiry.c'; then $(CYGPATH_W) 'ipod-scsi-inquiry.c'; else $(CYGPATH_W) '$(srcdir)/ipod-scsi-inquiry.c'; fi`
+ at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_read_sysinfo_extended_CFLAGS) $(CFLAGS) -c -o ipod_read_sysinfo_extended-ipod-scsi.obj `if test -f 'ipod-scsi.c'; then $(CYGPATH_W) 'ipod-scsi.c'; else $(CYGPATH_W) '$(srcdir)/ipod-scsi.c'; fi`
 
+ipod_time_sync-ipod-time-sync.o: ipod-time-sync.c
+ at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_time_sync_CFLAGS) $(CFLAGS) -MT ipod_time_sync-ipod-time-sync.o -MD -MP -MF $(DEPDIR)/ipod_time_sync-ipod-time-sync.Tpo -c -o ipod_time_sync-ipod-time-sync.o `test -f 'ipod-time-sync.c' || echo '$(srcdir)/'`ipod-time-sync.c
+ at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/ipod_time_sync-ipod-time-sync.Tpo $(DEPDIR)/ipod_time_sync-ipod-time-sync.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ipod-time-sync.c' object='ipod_time_sync-ipod-time-sync.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_time_sync_CFLAGS) $(CFLAGS) -c -o ipod_time_sync-ipod-time-sync.o `test -f 'ipod-time-sync.c' || echo '$(srcdir)/'`ipod-time-sync.c
+
+ipod_time_sync-ipod-time-sync.obj: ipod-time-sync.c
+ at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_time_sync_CFLAGS) $(CFLAGS) -MT ipod_time_sync-ipod-time-sync.obj -MD -MP -MF $(DEPDIR)/ipod_time_sync-ipod-time-sync.Tpo -c -o ipod_time_sync-ipod-time-sync.obj `if test -f 'ipod-time-sync.c'; then $(CYGPATH_W) 'ipod-time-sync.c'; else $(CYGPATH_W) '$(srcdir)/ipod-time-sync.c'; fi`
+ at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/ipod_time_sync-ipod-time-sync.Tpo $(DEPDIR)/ipod_time_sync-ipod-time-sync.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ipod-time-sync.c' object='ipod_time_sync-ipod-time-sync.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_time_sync_CFLAGS) $(CFLAGS) -c -o ipod_time_sync-ipod-time-sync.obj `if test -f 'ipod-time-sync.c'; then $(CYGPATH_W) 'ipod-time-sync.c'; else $(CYGPATH_W) '$(srcdir)/ipod-time-sync.c'; fi`
+
+ipod_time_sync-ipod-scsi.o: ipod-scsi.c
+ at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_time_sync_CFLAGS) $(CFLAGS) -MT ipod_time_sync-ipod-scsi.o -MD -MP -MF $(DEPDIR)/ipod_time_sync-ipod-scsi.Tpo -c -o ipod_time_sync-ipod-scsi.o `test -f 'ipod-scsi.c' || echo '$(srcdir)/'`ipod-scsi.c
+ at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/ipod_time_sync-ipod-scsi.Tpo $(DEPDIR)/ipod_time_sync-ipod-scsi.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ipod-scsi.c' object='ipod_time_sync-ipod-scsi.o' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_time_sync_CFLAGS) $(CFLAGS) -c -o ipod_time_sync-ipod-scsi.o `test -f 'ipod-scsi.c' || echo '$(srcdir)/'`ipod-scsi.c
+
+ipod_time_sync-ipod-scsi.obj: ipod-scsi.c
+ at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_time_sync_CFLAGS) $(CFLAGS) -MT ipod_time_sync-ipod-scsi.obj -MD -MP -MF $(DEPDIR)/ipod_time_sync-ipod-scsi.Tpo -c -o ipod_time_sync-ipod-scsi.obj `if test -f 'ipod-scsi.c'; then $(CYGPATH_W) 'ipod-scsi.c'; else $(CYGPATH_W) '$(srcdir)/ipod-scsi.c'; fi`
+ at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/ipod_time_sync-ipod-scsi.Tpo $(DEPDIR)/ipod_time_sync-ipod-scsi.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ipod-scsi.c' object='ipod_time_sync-ipod-scsi.obj' libtool=no @AMDEPBACKSLASH@
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+ at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ipod_time_sync_CFLAGS) $(CFLAGS) -c -o ipod_time_sync-ipod-scsi.obj `if test -f 'ipod-scsi.c'; then $(CYGPATH_W) 'ipod-scsi.c'; else $(CYGPATH_W) '$(srcdir)/ipod-scsi.c'; fi`
+
 libgpod_callout-hal-callout.o: hal-callout.c
 @am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -MT libgpod_callout-hal-callout.o -MD -MP -MF $(DEPDIR)/libgpod_callout-hal-callout.Tpo -c -o libgpod_callout-hal-callout.o `test -f 'hal-callout.c' || echo '$(srcdir)/'`hal-callout.c
 @am__fastdepCC_TRUE@	mv -f $(DEPDIR)/libgpod_callout-hal-callout.Tpo $(DEPDIR)/libgpod_callout-hal-callout.Po
@@ -478,19 +537,19 @@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -c -o libgpod_callout-hal-callout.obj `if test -f 'hal-callout.c'; then $(CYGPATH_W) 'hal-callout.c'; else $(CYGPATH_W) '$(srcdir)/hal-callout.c'; fi`
 
-libgpod_callout-ipod-scsi-inquiry.o: ipod-scsi-inquiry.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -MT libgpod_callout-ipod-scsi-inquiry.o -MD -MP -MF $(DEPDIR)/libgpod_callout-ipod-scsi-inquiry.Tpo -c -o libgpod_callout-ipod-scsi-inquiry.o `test -f 'ipod-scsi-inquiry.c' || echo '$(srcdir)/'`ipod-scsi-inquiry.c
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/libgpod_callout-ipod-scsi-inquiry.Tpo $(DEPDIR)/libgpod_callout-ipod-scsi-inquiry.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ipod-scsi-inquiry.c' object='libgpod_callout-ipod-scsi-inquiry.o' libtool=no @AMDEPBACKSLASH@
+libgpod_callout-ipod-scsi.o: ipod-scsi.c
+ at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -MT libgpod_callout-ipod-scsi.o -MD -MP -MF $(DEPDIR)/libgpod_callout-ipod-scsi.Tpo -c -o libgpod_callout-ipod-scsi.o `test -f 'ipod-scsi.c' || echo '$(srcdir)/'`ipod-scsi.c
+ at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/libgpod_callout-ipod-scsi.Tpo $(DEPDIR)/libgpod_callout-ipod-scsi.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ipod-scsi.c' object='libgpod_callout-ipod-scsi.o' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -c -o libgpod_callout-ipod-scsi-inquiry.o `test -f 'ipod-scsi-inquiry.c' || echo '$(srcdir)/'`ipod-scsi-inquiry.c
+ at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -c -o libgpod_callout-ipod-scsi.o `test -f 'ipod-scsi.c' || echo '$(srcdir)/'`ipod-scsi.c
 
-libgpod_callout-ipod-scsi-inquiry.obj: ipod-scsi-inquiry.c
- at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -MT libgpod_callout-ipod-scsi-inquiry.obj -MD -MP -MF $(DEPDIR)/libgpod_callout-ipod-scsi-inquiry.Tpo -c -o libgpod_callout-ipod-scsi-inquiry.obj `if test -f 'ipod-scsi-inquiry.c'; then $(CYGPATH_W) 'ipod-scsi-inquiry.c'; else $(CYGPATH_W) '$(srcdir)/ipod-scsi-inquiry.c'; fi`
- at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/libgpod_callout-ipod-scsi-inquiry.Tpo $(DEPDIR)/libgpod_callout-ipod-scsi-inquiry.Po
- at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ipod-scsi-inquiry.c' object='libgpod_callout-ipod-scsi-inquiry.obj' libtool=no @AMDEPBACKSLASH@
+libgpod_callout-ipod-scsi.obj: ipod-scsi.c
+ at am__fastdepCC_TRUE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -MT libgpod_callout-ipod-scsi.obj -MD -MP -MF $(DEPDIR)/libgpod_callout-ipod-scsi.Tpo -c -o libgpod_callout-ipod-scsi.obj `if test -f 'ipod-scsi.c'; then $(CYGPATH_W) 'ipod-scsi.c'; else $(CYGPATH_W) '$(srcdir)/ipod-scsi.c'; fi`
+ at am__fastdepCC_TRUE@	mv -f $(DEPDIR)/libgpod_callout-ipod-scsi.Tpo $(DEPDIR)/libgpod_callout-ipod-scsi.Po
+ at AMDEP_TRUE@@am__fastdepCC_FALSE@	source='ipod-scsi.c' object='libgpod_callout-ipod-scsi.obj' libtool=no @AMDEPBACKSLASH@
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
- at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -c -o libgpod_callout-ipod-scsi-inquiry.obj `if test -f 'ipod-scsi-inquiry.c'; then $(CYGPATH_W) 'ipod-scsi-inquiry.c'; else $(CYGPATH_W) '$(srcdir)/ipod-scsi-inquiry.c'; fi`
+ at am__fastdepCC_FALSE@	$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libgpod_callout_CFLAGS) $(CFLAGS) -c -o libgpod_callout-ipod-scsi.obj `if test -f 'ipod-scsi.c'; then $(CYGPATH_W) 'ipod-scsi.c'; else $(CYGPATH_W) '$(srcdir)/ipod-scsi.c'; fi`
 
 mostlyclean-libtool:
 	-rm -f *.lo
@@ -622,7 +681,7 @@
 clean: clean-am
 
 clean-am: clean-binPROGRAMS clean-generic clean-halPROGRAMS \
-	clean-libtool mostlyclean-am
+	clean-libtool clean-noinstPROGRAMS mostlyclean-am
 
 distclean: distclean-am
 	-rm -rf ./$(DEPDIR)
@@ -682,20 +741,20 @@
 .MAKE: install-am install-strip
 
 .PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
-	clean-generic clean-halPROGRAMS clean-libtool ctags distclean \
-	distclean-compile distclean-generic distclean-libtool \
-	distclean-tags distdir dvi dvi-am html html-am info info-am \
-	install install-am install-binPROGRAMS install-data \
-	install-data-am install-dvi install-dvi-am install-exec \
-	install-exec-am install-fdiDATA install-halPROGRAMS \
-	install-html install-html-am install-info install-info-am \
-	install-man install-pdf install-pdf-am install-ps \
-	install-ps-am install-strip installcheck installcheck-am \
-	installdirs maintainer-clean maintainer-clean-generic \
-	mostlyclean mostlyclean-compile mostlyclean-generic \
-	mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
-	uninstall-am uninstall-binPROGRAMS uninstall-fdiDATA \
-	uninstall-halPROGRAMS
+	clean-generic clean-halPROGRAMS clean-libtool \
+	clean-noinstPROGRAMS ctags distclean distclean-compile \
+	distclean-generic distclean-libtool distclean-tags distdir dvi \
+	dvi-am html html-am info info-am install install-am \
+	install-binPROGRAMS install-data install-data-am install-dvi \
+	install-dvi-am install-exec install-exec-am install-fdiDATA \
+	install-halPROGRAMS install-html install-html-am install-info \
+	install-info-am install-man install-pdf install-pdf-am \
+	install-ps install-ps-am install-strip installcheck \
+	installcheck-am installdirs maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-compile \
+	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+	tags uninstall uninstall-am uninstall-binPROGRAMS \
+	uninstall-fdiDATA uninstall-halPROGRAMS
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.

Deleted: libgpod/branches/upstream/current/tools/ipod-scsi-inquiry.c
===================================================================
--- libgpod/branches/upstream/current/tools/ipod-scsi-inquiry.c	2009-03-09 23:08:05 UTC (rev 383)
+++ libgpod/branches/upstream/current/tools/ipod-scsi-inquiry.c	2009-06-19 20:28:03 UTC (rev 384)
@@ -1,109 +0,0 @@
-/* Copyright (c) 2007, Christophe Fergeau  <teuf at gnome.org>
- * Part of the libgpod project.
- * 
- * URL: http://www.gtkpod.org/
- * URL: http://gtkpod.sourceforge.net/
- *
- * The code contained in this file is free software; you can redistribute
- * it and/or modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either version
- * 2.1 of the License, or (at your option) any later version.
- *
- * This file is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this code; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- *
- * iTunes and iPod are trademarks of Apple
- *
- * This product is not supported/written/published by Apple!
- *
- */
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#include <fcntl.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <stdint.h>
-#include <string.h>
-#include <unistd.h>
-#include <scsi/sg_cmds.h>
-#include <sys/stat.h>
-
-#include <glib.h>
-
-#include "itdb.h"
-
-
-extern char *read_sysinfo_extended (const char *device);
-/* do_sg_inquiry and read_sysinfo_extended were heavily
- * inspired from libipoddevice
- */
-static unsigned char
-do_sg_inquiry (int fd, int page, char *buf, char **start)
-{
-    const unsigned int IPOD_BUF_LENGTH = 252;
-
-    if (sg_ll_inquiry (fd, 0, 1, page, buf, IPOD_BUF_LENGTH, 1, 0) != 0) {
-	*start = NULL;
-	return 0;
-    } else {
-	*start = buf + 4;
-	return (unsigned char)buf[3];
-    }
-}
-
-G_GNUC_INTERNAL char *
-read_sysinfo_extended (const char *device)
-{
-    int fd;
-    const unsigned int IPOD_XML_PAGE = 0xc0;
-    unsigned char len;
-    char buf[512];
-    char *start;
-    char *offsets;
-    GString *xml_sysinfo;
-    unsigned int i;
-
-    fd = open (device, O_RDWR);
-    if (fd < 0) {
-	return NULL;
-    }
-
-    len = do_sg_inquiry (fd, IPOD_XML_PAGE, buf, &start);
-    if (start == NULL || len == 0) {
-	close(fd);
-	return NULL;
-    }
-
-    offsets = g_new (char, len+1);
-    memcpy(offsets, start, len);
-    offsets[len] = 0;
-
-    xml_sysinfo = g_string_new_len (NULL, 512);
-    if (xml_sysinfo == NULL) {
-	g_free (offsets);
-	close (fd);
-	return NULL;
-    }
-
-    for (i = 0; offsets[i]; i++) {
-	bzero(buf, 512);
-	len = do_sg_inquiry (fd, offsets[i], buf, &start);
-	start[len] = 0;
-	g_string_append (xml_sysinfo, start);
-    }
-    
-    g_free (offsets);
-    close (fd);
-
-    return g_string_free (xml_sysinfo, FALSE);
-}
-
-

Added: libgpod/branches/upstream/current/tools/ipod-scsi.c
===================================================================
--- libgpod/branches/upstream/current/tools/ipod-scsi.c	                        (rev 0)
+++ libgpod/branches/upstream/current/tools/ipod-scsi.c	2009-06-19 20:28:03 UTC (rev 384)
@@ -0,0 +1,167 @@
+/* Copyright (c) 2007, Christophe Fergeau  <teuf at gnome.org>
+ * Part of the libgpod project.
+ * 
+ * URL: http://www.gtkpod.org/
+ * URL: http://gtkpod.sourceforge.net/
+ *
+ * The code contained in this file is free software; you can redistribute
+ * it and/or modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either version
+ * 2.1 of the License, or (at your option) any later version.
+ *
+ * This file is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this code; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ *
+ * iTunes and iPod are trademarks of Apple
+ *
+ * This product is not supported/written/published by Apple!
+ *
+ */
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <fcntl.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdint.h>
+#include <string.h>
+#include <unistd.h>
+#include <scsi/sg_cmds.h>
+#include <sys/stat.h>
+#include <time.h>
+
+#include <glib.h>
+
+extern void sync_time (const char *device, struct tm *tm);
+extern char *read_sysinfo_extended (const char *device);
+/* do_sg_inquiry and read_sysinfo_extended were heavily
+ * inspired from libipoddevice
+ */
+static unsigned char
+do_sg_inquiry (int fd, int page, char *buf, char **start)
+{
+    const unsigned int IPOD_BUF_LENGTH = 252;
+
+    if (sg_ll_inquiry (fd, 0, 1, page, buf, IPOD_BUF_LENGTH, 1, 0) != 0) {
+	*start = NULL;
+	return 0;
+    } else {
+	*start = buf + 4;
+	return (unsigned char)buf[3];
+    }
+}
+
+G_GNUC_INTERNAL char *
+read_sysinfo_extended (const char *device)
+{
+    int fd;
+    const unsigned int IPOD_XML_PAGE = 0xc0;
+    unsigned char len;
+    char buf[512];
+    char *start;
+    char *offsets;
+    GString *xml_sysinfo;
+    unsigned int i;
+
+    fd = open (device, O_RDWR);
+    if (fd < 0) {
+	return NULL;
+    }
+
+    len = do_sg_inquiry (fd, IPOD_XML_PAGE, buf, &start);
+    if (start == NULL || len == 0) {
+	close(fd);
+	return NULL;
+    }
+
+    offsets = g_new (char, len+1);
+    memcpy(offsets, start, len);
+    offsets[len] = 0;
+
+    xml_sysinfo = g_string_new_len (NULL, 512);
+    if (xml_sysinfo == NULL) {
+	g_free (offsets);
+	close (fd);
+	return NULL;
+    }
+
+    for (i = 0; offsets[i]; i++) {
+	bzero(buf, 512);
+	len = do_sg_inquiry (fd, offsets[i], buf, &start);
+	start[len] = 0;
+	g_string_append (xml_sysinfo, start);
+    }
+    
+    g_free (offsets);
+    close (fd);
+
+    return g_string_free (xml_sysinfo, FALSE);
+}
+
+static void do_sg_write_buffer (const char *device, void *buffer, size_t len)
+{
+    int fd;
+    guint i;
+
+    fd = open (device, O_RDWR);
+    if (fd < 0) {
+	g_warning ("Couldn't open device %s", device);
+	return;
+    }
+
+    g_print ("    Data Payload: ");
+    for (i = 0; i < len; i++) {
+	g_print ("%02x ", *((guchar *)buffer+i));
+    }
+    g_print ("\n");
+    if (sg_ll_write_buffer (fd, 1, 0, 0x0c0000, buffer, len, 1, 1) != 0) {
+	g_print ("Error sending data\n");
+    }
+    close(fd);
+}
+
+G_GNUC_INTERNAL void sync_time (const char *device, struct tm *tm)
+{
+    struct iPodTime {
+	guint16 year;
+	guint16 days;
+	guchar timezone;
+	guchar hour;
+	guchar minute;
+	guchar second;
+	guchar dst;
+	guchar padding[3];
+    } __attribute__((__packed__));
+    struct iPodTime ipod_time;
+
+    if (tm == NULL) {
+	time_t current_time;
+	current_time = time (NULL);
+	tm = localtime (&current_time);
+    }
+
+    ipod_time.year = GUINT16_TO_BE (1900+tm->tm_year);
+    ipod_time.days = GUINT16_TO_BE (tm->tm_yday);
+    /* the timezone value is the shift east of UTC in 15 min chunks
+     * so eg. UTC+2 is 2*4 = 8
+     */
+    ipod_time.timezone = tm->tm_gmtoff / 900;
+    ipod_time.hour = tm->tm_hour;
+    ipod_time.minute = tm->tm_min;
+    ipod_time.second = tm->tm_sec;
+    if (tm->tm_isdst) {
+	ipod_time.dst = 1;
+    } else {
+	ipod_time.dst = 0;
+    }
+    memset (ipod_time.padding, 0, sizeof (ipod_time.padding));
+
+    do_sg_write_buffer (device, &ipod_time, sizeof (ipod_time));
+}

Added: libgpod/branches/upstream/current/tools/ipod-time-sync.c
===================================================================
--- libgpod/branches/upstream/current/tools/ipod-time-sync.c	                        (rev 0)
+++ libgpod/branches/upstream/current/tools/ipod-time-sync.c	2009-06-19 20:28:03 UTC (rev 384)
@@ -0,0 +1,44 @@
+/* Copyright (c) 2009, Christophe Fergeau  <teuf at gnome.org>
+ *
+ * The code contained in this file is free software; you can redistribute
+ * it and/or modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either version
+ * 2.1 of the License, or (at your option) any later version.
+ *
+ * This file is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this code; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ *
+ * iTunes and iPod are trademarks of Apple
+ *
+ * This product is not supported/written/published by Apple!
+ *
+ */
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#include <stdlib.h>
+
+#include <glib.h>
+#include <glib/gi18n.h>
+
+extern void sync_time (const char *dev, struct tm *tm);
+
+int
+main (int argc, char **argv)
+{
+    if (argc < 2) {
+        g_print (_("usage: %s <device> [timezone]\n"), g_basename (argv[0]));
+	return 1;
+    }
+
+    sync_time (argv[1], NULL);
+
+    return 0;
+}




More information about the Pkg-gtkpod-devel mailing list