[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Freeze Exception for taglib-sharp 2.0.5.0



On 02/07/2012 19:31, Adam D. Barratt wrote:
> On 02.07.2012 09:47, Chow Loong Jin wrote:
>> I would like to get a freeze exception for taglib-sharp 2.0.5.0
>> before I upload it into unstable.
>>
>> It is a mostly bugfix release, with a relatively small number of commits (25)
>> since 2.0.4.0, which is already in testing. The NEWS file is at [1], and the
>> upstream VCS is at [2].
> 
> As requested in the freeze policy linked from the last d-d-a mail (rule #3,
> specifically), please provide a diff for the package you're proposing to upload.
> We won't ack things based on pointers to VCSen.

Sorry for the delay.

Here's a diff between 2.0.4.0-1 (in unstable) and 2.1.0.0-1. I needed to get
upstream to bump the version as one of the bugfixes had introduced an ABI break.

This also means that it would be necessary to rebuild libtaglib2.0-cil's rdeps:
 - banshee
 - banshee-extension-lyrics
 - basenji
 - mono-upnp
 - tangerine

-- 
Kind regards,
Loong Jin


diff --git a/AUTHORS b/AUTHORS
index 615e9ab..fed369f 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -3,16 +3,21 @@ Maintainer:
 
 Contributors:
   Aaron Bockover
+  Alan McGovern
   Alexander Kojevnikov
   Andrés G. Aragoneses
   Andy Beal
+  Anton Drachev
   Bernd Niedergesaess
   Bertrand Lorentz
   Colin Turner
   Eamon Nerbonne
+  Eberhard Beilharz
   Félix Velasco
   Gregory S. Chudov
+  Guy Taylor
   Helmut Wahrmann
+  Jakub 'FioÅ?ek' FijaÅ?kowski
   Jeffrey Stedfast
   Jeroen Asselman
   John Millikin
@@ -22,7 +27,9 @@ Contributors:
   Patrick Dehne
   Paul Lange
   Ruben Vermeersch
+  Samuel D. Jack
   Stephane Delcroix
+  Stephen Shaw
   Tim Howard
 
 Creator, past maintainer:
diff --git a/ChangeLog b/ChangeLog
index 490a9fb..5448519 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,569 @@
+commit 3be76517089d5f13f57d3b0d9032f206618243de
+Author: Alan McGovern <alan.mcgovern@gmail.com>
+Date:   Mon Jul 2 12:51:57 2012 -0400
+
+    [Audible] Commit the initial support for Audible files
+    
+    Only .aa files are supported. Parsing for .aax is not yet implemented.
+    Patch was contributed by Guy Taylor and fixes bug:
+    
+    https://bugzilla.gnome.org/show_bug.cgi?id=601543
+
+commit dff85c0e44fba553e124980a70d5d2584c67c1a7
+Author: Alexander Kojevnikov <alexander@kojevnikov.com>
+Date:   Sun Jul 1 14:43:22 2012 -0400
+
+    build: Don't need the MONO_USER
+
+commit 9543df0375ea20f78184a7f379a7c8953e5c807c
+Author: Alexander Kojevnikov <alexander@kojevnikov.com>
+Date:   Sun Jul 1 10:16:49 2012 -0400
+
+    build: Prepare for 2.0.5.0 release
+
+commit be743939588613cdff187abaac0b534cd470c2e7
+Author: Eamon Nerbonne <eamon@nerbonne.org>
+Date:   Sun May 22 16:58:39 2011 +0200
+
+    Use O(N) rather than O(N^2) deunsynchronization algorithm.
+    
+    Signed-off-by: Alexander Kojevnikov <alexander@kojevnikov.com>
+
+commit 9469df6a78842a7bfbf443e77eecc91aeb184567
+Author: Eamon Nerbonne <eamon@nerbonne.org>
+Date:   Sun May 22 16:58:35 2011 +0200
+
+    On corrupt Id3v2 frame, skip just that frame, not the entire tag
+    
+    Fixes bgo#650674
+    
+    Signed-off-by: Alexander Kojevnikov <alexander@kojevnikov.com>
+
+commit df93521dd409e5f568178d34131950a93d3a5ba2
+Author: Eamon Nerbonne <eamon@nerbonne.org>
+Date:   Sun May 22 16:58:24 2011 +0200
+
+    Check for short popularimeter tags
+    
+    Signed-off-by: Alexander Kojevnikov <alexander@kojevnikov.com>
+
+commit 7e6d0a89feb3c7c40a54fc17fcdbfd1fec1dc5ba
+Author: Jakub 'FioÅ?ek' FijaÅ?kowski <fiolek@fiolek.org>
+Date:   Sat Jun 30 16:30:57 2012 -0400
+
+    StartTag.ReadTag should not silence exceptions
+    
+    Signed-off-by: Alexander Kojevnikov <alexander@kojevnikov.com>
+
+commit 0f0268457c465702657b64abc18b30dc83d184f3
+Author: Alexander Kojevnikov <alexander@kojevnikov.com>
+Date:   Sat Jun 30 16:19:09 2012 -0400
+
+    An additional MarkAsCorrupt call
+
+commit e4380983772a56b81c5527404325f6fd7efd778d
+Author: Tim Howard <timothy.howard@gmail.com>
+Date:   Sat Jun 30 16:16:35 2012 -0400
+
+    Mark the file as corrupt instead of throwing exception
+    
+    Fixes bgo#643477
+    
+    Signed-off-by: Alexander Kojevnikov <alexander@kojevnikov.com>
+
+commit e53ffcc4c417bac611fae80d1d0a88ecfafcfc6d
+Author: Alan McGovern <alan.mcgovern@gmail.com>
+Date:   Sat Jun 30 12:27:48 2012 -0400
+
+    [Mpeg4] Attempt to handle corrupt tags a little better
+    
+    If an mpeg4 file contains an atom whose length is greater than the
+    amount of bytes left in the file, mark the file as corrupt and bail
+    out of the parsing step.
+    
+    Fixes bug #676934
+
+commit 0158f137085da6eb988f089d3cecedba4a90a239
+Author: samuel_d_jack <sam@seaturtlesoftwarea.com>
+Date:   Wed Nov 9 15:57:11 2011 +0000
+
+    Fix nested UDTA boxes
+    
+    Fixed bug where a Udta box nested inside a track would be picked in
+    preference to one at a higher level in the tree.
+    
+    Signed-off-by: Alexander Kojevnikov <alexander@kojevnikov.com>
+
+commit ec365a66807d09f3712e7910fce17992d412fc0c
+Author: Alexander Kojevnikov <alexander@kojevnikov.com>
+Date:   Sat Jun 30 13:00:03 2012 -0400
+
+    Solution code formatting policy
+
+commit 21ef764e0a9c394d70dc3917c7bbebdce0a2eadd
+Author: Eberhard Beilharz <eb1@sil.org>
+Date:   Sat Jan 7 18:15:36 2012 +0100
+
+    Add partial support for IPTC-IIM
+    
+    Allows reading a subset of possible IPTC-IIM tags from JPEG files.
+    Specifically those tags are read that directly map to XMP tags.
+    If both XMP and IIM tags exist the XMP tags take precedence.
+    
+    This change supports IIM as far as necessary to import images from
+    Mediadex into f-spot.
+    
+    Signed-off-by: Alexander Kojevnikov <alexander@kojevnikov.com>
+
+commit 663c5fb0d90a5ba9222104213b55d8f7a8b99d09
+Author: Alan McGovern <alan.mcgovern@gmail.com>
+Date:   Fri Jun 29 16:27:42 2012 -0400
+
+    [Build] Glob together all the cs files for the taglib makefile build
+    
+    Keeps things nice and simple!
+
+commit d4879482f30517a85844c08ffda5c0249d21ea05
+Author: Alan McGovern <alan.mcgovern@gmail.com>
+Date:   Fri Jun 29 15:51:31 2012 -0400
+
+    [Mpeg4] Fix parsing of some more apple tags
+    
+    We correctly handle 'text' atoms inside an 'stda' atom now.
+
+commit 17a2404275aceb5273c88db525e526dc0a74a038
+Author: Stephen Shaw <sshaw@decriptor.com>
+Date:   Wed Jun 27 12:28:23 2012 -0400
+
+    Didn't fix this test, but it is at the very least documented for the next brave individual that tries to fix it
+
+commit 363f8aeb89739dce4a88e22e42410b9eb0eed074
+Author: Alan McGovern <alan.mcgovern@gmail.com>
+Date:   Wed Jun 27 19:51:00 2012 -0400
+
+    [Mpeg4] Ensure that we parse AppleAdditionalInfoBox elements properly
+    
+    We do not care what the contents of these elements are. They can literally
+    be anything. As such, we should parse them as a black box and assume
+    nothing about their contents. Add a test to ensure we parse the file
+    correctly.
+    
+    Fixes bgo 658920.
+
+commit 0f1a349cec8995294cb711f2fde13198130d2c72
+Author: Alan McGovern <alan.mcgovern@gmail.com>
+Date:   Wed Jun 27 12:13:30 2012 -0400
+
+    Test
+
+commit 64e9fa90636072a1cc1e9a125735366faf23496a
+Author: Alan McGovern <alan.mcgovern@gmail.com>
+Date:   Wed Jun 27 12:09:28 2012 -0400
+
+    [Build] Commit the updated csproj/sln files
+    
+    We're now VS2010 format and do not enable Makefile integration. This
+    fixes the build from MonoDevelop/Visual Studio.
+
+commit 475b7c1888f0d297168deaaddf8d432feee7b1fd
+Author: Alan McGovern <alan.mcgovern@gmail.com>
+Date:   Wed Jun 27 12:04:56 2012 -0400
+
+    [File] Properly implement partial matching for File.Find and File.RFind
+    
+    Remove the need to care about partial matches be always rewinding the stream
+    a little before reading the next chunk of data so that we can ensure we
+    never have data which exists at the end of one read and the start of
+    the next.
+
+commit 9d8bea03800591d46374938bf5b54cbad571bfe8
+Author: Alan McGovern <alan.mcgovern@gmail.com>
+Date:   Wed Jun 27 10:10:52 2012 -0400
+
+    [Tests] Fix some compiler warnings
+
+commit 9fcfb6f7c76e00cd64fd95d6fdf2bb4c2d2f9caf
+Merge: f33b2b1 6962832
+Author: Alexander Kojevnikov <alexander@kojevnikov.com>
+Date:   Thu Mar 22 03:35:22 2012 -0700
+
+    Merge pull request #9 from omgtehlion/master
+    
+    Fixed freeze on some mp3-files, where header was at the end of file
+
+commit f33b2b12fbd8b96fe3563f80672ef2cd16e8ff4e
+Author: Alexander Kojevnikov <alexander@kojevnikov.com>
+Date:   Mon Feb 6 21:56:25 2012 +0800
+
+    Fix monodocdir
+
+commit 665acfa908bbb2f2e22dbd2760daafb09b3241fa
+Author: Chow Loong Jin <hyperair@debian.org>
+Date:   Sun Feb 5 23:42:25 2012 +0800
+
+    Use gacutil for ICSharpCode.SharpZipLib check
+
+commit 4f00a742695ea305a65e5ac21ef5d6c938735378
+Author: Chow Loong Jin <hyperair@debian.org>
+Date:   Mon Feb 6 01:06:24 2012 +0800
+
+    Readd Taglib.Mpeg4.FileParser.UserDataBox property
+    
+    The UserDataBox property was renamed to UserDataBoxes and its return type
+    changed to an array between 2.0.3.7 and 2.0.4.0, resulting in an ABI
+    breakage. This patch readds the property for backward compatibility.
+
+commit 6962832ae288adcff77a1ca9071a42466b8ce30d
+Author: Anton Drachev <anton@drachev.com>
+Date:   Wed Feb 1 23:22:19 2012 +0400
+
+    taglib freezes on certain mp3 files
+
+commit 1d4191f1bc09f600e691181ec0c5ffad3a4a4ec3
+Author: Gabriel Burt <gabriel.burt@gmail.com>
+Date:   Wed Apr 13 12:15:39 2011 -0500
+
+    build: Fix push-release target
+
+commit b289765aa9096432508301711b9bd0c363b138a3
+Author: Gabriel Burt <gabriel.burt@gmail.com>
+Date:   Wed Apr 13 12:10:46 2011 -0500
+
+    build: Remove IntList, copy README/AUTHORS in distwin
+
+commit 0fdcb611b931523f489fbf1e6cd4ce7c0a139526
+Author: Gabriel Burt <gabriel.burt@gmail.com>
+Date:   Wed Apr 13 11:59:50 2011 -0500
+
+    build: Fix .csproj/.sln build
+    
+    Remove obsolete/duplicate taglib-sharp.csproj in favor of
+    src/taglib-sharp.csproj.
+
+commit e4e8d00a77f63a5cf2da22ee11c068e62ced3175
+Author: Gabriel Burt <gabriel.burt@gmail.com>
+Date:   Wed Apr 13 11:27:56 2011 -0500
+
+    Update NEWS etc for 2.0.4.0 release
+
+commit 28a9b08cb4dc99133295f58b0903bd4ea594cda8
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Wed Apr 13 18:19:44 2011 +0200
+
+    Revert "Make sure the entry size is even possible before trying to create it"
+    
+    This reverts commit 8975dafa64d2f31219fe7f1177a3a08933cd82e4.
+
+commit e2ed0e612eedbf8fd3c69b294950727b22398179
+Author: Gabriel Burt <gabriel.burt@gmail.com>
+Date:   Wed Apr 13 11:02:05 2011 -0500
+
+    ICodec: Fix MediaTypes flag enum values (bgo#645844)
+    
+    These values need to be 2^n so they are distinguishable.
+    
+    This is an API break for folks who have been using git master, but is
+    not an API break of any taglib# release.
+
+commit 5fe7555cdb881ee81de3f9d2ee65e29746e1c556
+Author: Jeroen Asselman <jeroen@asselman.com>
+Date:   Tue Mar 1 16:10:37 2011 +0100
+
+    Fix File.ReadBlock for slow connections (bgo#639817)
+    
+    Stream.Read might read fewer bytes then requested (this is documented),
+    so try to continue reading until all requested bytes are read.
+    
+    Signed-off-by: Gabriel Burt <gabriel.burt@gmail.com>
+
+commit ff0117e4094f217e584a87876554bb880583e2aa
+Author: Julien Moutte <julien@moutte.net>
+Date:   Mon Mar 7 13:43:41 2011 +0100
+
+    Fix more warnings for assigned but never used variables.
+
+commit 4aa51d7b3438493ce8a5ef47172fc6525ed2a7fd
+Author: Julien Moutte <julien@moutte.net>
+Date:   Mon Mar 7 13:30:30 2011 +0100
+
+    Add comments on all public members/methods to fix warnings.
+
+commit a40ae47748793f1773a8258c57941945cb0cf769
+Author: Julien Moutte <julien@moutte.net>
+Date:   Mon Mar 7 12:27:47 2011 +0100
+
+    Add Matroska source files for Linux build.
+
+commit 925b97d929cf05fb348e1c4fba6b17b995b9b086
+Author: Julien Moutte <julien@moutte.net>
+Date:   Mon Mar 7 11:51:21 2011 +0100
+
+    Add initial support for Matroska file reader.
+
+commit 8659479f7c2b2532ad1a7629692c7c8411abf58e
+Author: Julien Moutte <julien@moutte.net>
+Date:   Mon Mar 7 11:50:59 2011 +0100
+
+    Add an enumeration for text streams (subtitles).
+
+commit 37b0859e42c6fccdc52da7af5f4b626171d29d58
+Author: Julien Moutte <julien@moutte.net>
+Date:   Mon Mar 7 11:50:25 2011 +0100
+
+    Add methods to read doubles and floats.
+
+commit 0fe3191ae5e71ffa00017c18d5e2f84002f82b73
+Author: Alexander Kojevnikov <alexander@kojevnikov.com>
+Date:   Sun Jan 30 20:52:16 2011 +0800
+
+    Fix `gmake test` under FreeBSD
+
+commit 3817310700909ba9b58b15004556e7737fd6af6c
+Author: Alexander Kojevnikov <alexander@kojevnikov.com>
+Date:   Sun Jan 30 20:45:11 2011 +0800
+
+    Sort tests/Makefile.am
+
+commit 86054f74f68b7307005cccc5ef6a23ad1300ec1a
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Sun Dec 19 14:31:31 2010 +0100
+
+    Accidentally added RW2, doh!
+
+commit aa7978fca9dd7da59d7f64931b5fadbb13bc70c4
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Sun Dec 19 13:04:25 2010 +0100
+
+    Add yet-to-support types to NoMetadata to prevent F-Spot crashes.
+    
+    These files can be loaded in F-Spot.
+
+commit 8975dafa64d2f31219fe7f1177a3a08933cd82e4
+Author: Tim Howard <timothy.howard@gmail.com>
+Date:   Sun Dec 12 12:23:29 2010 -0500
+
+    Make sure the entry size is even possible before trying to create it
+    
+    https://bugzilla.gnome.org/show_bug.cgi?id=633972
+
+commit 7541844d9f151baf10a945ac9eaa22007364c902
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Mon Nov 29 10:45:01 2010 +0100
+
+    Add test for broken CR2 file.
+    
+    https://bugzilla.gnome.org/show_bug.cgi?id=633972
+
+commit c408cb26ab2d45ac680554d5c001699cfe6ddb43
+Author: Tim Howard <timothy.howard@gmail.com>
+Date:   Wed Nov 17 12:58:09 2010 -0500
+
+    Make sure that size of the SubIFD is sane
+    
+    https://bugzilla.gnome.org/show_bug.cgi?id=633972
+
+commit 47728711d5a993c19ae1b4e7a89ea5c769caf97c
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Tue Nov 16 22:08:44 2010 +0100
+
+    Fix another Length issue.
+    
+    PTP not supporting stream length is such a pain.
+    
+    https://bugzilla.gnome.org/show_bug.cgi?id=629766
+
+commit 51558b0d74db63a96cd9a2358f7f6b81a555770d
+Author: Gabriel Burt <gabriel.burt@gmail.com>
+Date:   Wed Oct 27 14:33:07 2010 -0500
+
+    [File] Make MarkAsCorrupt internal
+
+commit 4ea972fc86006e976d6a2e255dac8bfea33a21d9
+Merge: 8d6e98c c6a6d93
+Author: Gabriel Burt <gabriel.burt@gmail.com>
+Date:   Wed Oct 27 14:26:23 2010 -0500
+
+    Merge branch 'photo-support'
+    
+    Conflicts:
+    	tests/tests.csproj
+
+commit c6a6d93da9b29a247d0f25210dc02e0d9535e2c1
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Wed Oct 27 11:37:42 2010 +0200
+
+    Fix an XMP parse failure.
+    
+    https://bugzilla.gnome.org/show_bug.cgi?id=631333
+
+commit 884aabafe9fdf1e965b01be227a8c12e657cc1df
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Wed Oct 27 11:36:02 2010 +0200
+
+    Extend fixture generator for XmpBag with multiple items.
+
+commit 2d62c8deb2cf6b758b3b18b07f72c05a055ea172
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Sat Oct 23 13:31:03 2010 +0200
+
+    Update DNG test to check the new DNG geometry code.
+
+commit fe267bfc7c2d520900e8553cdd6cf940ca72dc57
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Sat Oct 23 13:26:11 2010 +0200
+
+    Correctly extract image size for DNG.
+
+commit 59bb02db11d80103ffe6d3a64b3fcd7b860d8d08
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Sat Oct 23 13:02:14 2010 +0200
+
+    Fix tests.
+
+commit d50efa92d05f2ff53281797ddaa6e2fa4aa829eb
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Fri Oct 22 21:44:29 2010 +0200
+
+    Be a bit more tolerant about XMP parsing failures.
+
+commit 0ea33a9efd6b8daaa5f9d5f1a96baaf49fa742d0
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Fri Oct 22 21:15:44 2010 +0200
+
+    Handle a file with a bad user comment marker.
+    
+    https://bugzilla.gnome.org/show_bug.cgi?id=632930
+
+commit 19abba541d4d5057be899c5fbb0a701f1b71f88a
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Fri Oct 22 20:48:14 2010 +0200
+
+    Make it possible to debug corruptions.
+
+commit 5b8a05f130d7e2bf6e284ae0486c9193112806fa
+Author: Marek Habersack <grendel@twistedcode.net>
+Date:   Wed Sep 15 23:18:08 2010 +0200
+
+    All fields of a struct must be initialized before the constructor returns
+    
+    https://bugzilla.gnome.org/show_bug.cgi?id=629222
+
+commit b597fe772b8f2278bde0cc3d0815c5a51c54370e
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Mon Sep 13 15:08:11 2010 +0200
+
+    More file.Length protection fixes.
+
+commit 3bc3d802044028daa755b424f91ac73ded049b95
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Mon Sep 13 11:04:43 2010 +0200
+
+    Make IFD parsing slightly more robust.
+    
+    Not all IO backends support finding the length of a stream. I relaxed the
+    safety check slightly to fall back to using the max length of a TIFF file as
+    per the specification: 4 gigabyte.
+    
+    https://bugzilla.gnome.org/show_bug.cgi?id=629386
+
+commit 8d6e98ce97b731556be11096e9841baadfa3683d
+Author: Colin Turner <spinstation@yahoo.com>
+Date:   Wed Sep 8 14:12:07 2010 +1000
+
+    2010-09-08 Alexander Kojevnikov <alexander@kojevnikov.com>
+    
+    	* src/TagLib/Mpeg4/Boxes/IsoUserDataBox.cs:
+    	* src/TagLib/Mpeg4/File.cs:
+    	* src/TagLib/Mpeg4/FileParser.cs:
+    	* tests/Makefile.am:
+    	* tests/fixtures/TagLib.Tests.FileFormats/M4vFormatTest.cs:
+    	* tests/samples/sample.m4v:
+    	* tests/tests.csproj: Patch from Colin Turner fixing mpeg4 file
+    	parsing of udta boxes (bgo#575842)
+    
+    Signed-off-by: Alexander Kojevnikov <alexander@kojevnikov.com>
+
+commit b8f78f4cbda5bdd09d484824eaa72bff1d9b82a2
+Author: Gabriel Burt <gabriel.burt@gmail.com>
+Date:   Wed Sep 1 12:02:43 2010 -0500
+
+    Update README with git instructions
+
+commit d123960445605992b3cd74c626aab3b39526ff42
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Thu Aug 12 13:43:19 2010 +0200
+
+    Fix Leica M8 makernote parsing.
+
+commit 9d567a7bcbd607129457dc80cb8bf14818501e60
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Thu Aug 12 13:41:59 2010 +0200
+
+    Don't fail parsing IFDs with invalid entry types.
+    
+    https://bugzilla.gnome.org/show_bug.cgi?id=625367
+
+commit 9d92818411c42c05798307624ff375c3b4f3fcc2
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Tue Aug 10 12:35:19 2010 +0200
+
+    Add image/x-panasonic-raw mime type.
+
+commit ef058da50ce8d82d8e5740317aceee78f9a807c9
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Mon Aug 9 15:31:59 2010 +0200
+
+    Add Leica .RAW support.
+    
+    https://bugzilla.gnome.org/show_bug.cgi?id=622104
+
+commit 162333e1906959707693dec8cae04016d567294f
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Sat Aug 7 20:48:57 2010 +0200
+
+    Lock on the file while detecting IFD loops.
+    
+    Fixes a potential race-condition crash.
+
+commit 33f4fd526d9e7091dc97c14235aed54f65ed85e9
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Sat Aug 7 21:35:33 2010 +0200
+
+    Trim nulls in UserComment.
+    
+    Some files are littered by null bytes. Make sure we trim them.
+
+commit f9c29e94f14869cf22468782cc356e2079cdd921
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Sat Aug 7 18:48:09 2010 +0200
+
+    Fix width/height parsing for RW2 files.
+
+commit 0394adaa79b04476192aafa89b63e1ef39f2d748
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Sat Aug 7 18:40:55 2010 +0200
+
+    Add Pentax RAW support.
+    
+    https://bugzilla.gnome.org/show_bug.cgi?id=622103
+
+commit 1c69bc61eb8da13eb83b366b6f068d6ef4385c3a
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Sat Aug 7 18:10:30 2010 +0200
+
+    Remove unused variable.
+
+commit 1008c7d161bdca6368844367054944b111f0bbea
+Author: Ruben Vermeersch <ruben@savanne.be>
+Date:   Sat Aug 7 17:44:06 2010 +0200
+
+    Fix the extraction of some values in RW2.
+    
+    Panasonic stores these in unstandard locations.
 
 commit 3f6c8a5a3dabfb335ab67259e258bc747219a9ae
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Aug 7 09:43:59 2010
+Date:   Sat Aug 7 16:43:59 2010 +0200
 
     [IFD] Fix parsing with non-null delimited strings.
     
@@ -13,7 +575,7 @@ Date:   Sat Aug 7 09:43:59 2010
 
 commit dbad977936d4efc6187767b9ae1cec1edfa288f1
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Thu Jul 22 08:26:13 2010
+Date:   Thu Jul 22 15:26:13 2010 +0200
 
     [Jpeg] Don't complain if the stream Length can't be read.
     
@@ -21,7 +583,7 @@ Date:   Thu Jul 22 08:26:13 2010
 
 commit be510696d1b0d7eee1e8947c29ff0d7949e4f543
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Thu Jul 22 08:08:32 2010
+Date:   Thu Jul 22 15:08:32 2010 +0200
 
     Detect IFD entry type 0 corruption.
     
@@ -29,25 +591,25 @@ Date:   Thu Jul 22 08:08:32 2010
 
 commit 8d44e11a5473417f3bbf2590260c57257ec8d7ab
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Thu Jul 22 08:08:04 2010
+Date:   Thu Jul 22 15:08:04 2010 +0200
 
     Ignore compiled helper binaries.
 
 commit ce41ae6314ab5a891140856e6b7c7d1c50b8d91d
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Thu Jul 22 07:50:17 2010
+Date:   Thu Jul 22 14:50:17 2010 +0200
 
     Comment out unused lines.
 
 commit a1161e8b901ca73f56a3984a23f64379c6522dbb
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Thu Jul 22 07:48:14 2010
+Date:   Thu Jul 22 14:48:14 2010 +0200
 
     Update unit tests, the used XMP tags do not contain the Orientation.
 
 commit 2bdf23c46adff2d46a58694005a8e5beb3063f38
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Thu Jul 22 07:47:13 2010
+Date:   Thu Jul 22 14:47:13 2010 +0200
 
     Don't throw exception on invalid IFD offsets.
     
@@ -55,13 +617,13 @@ Date:   Thu Jul 22 07:47:13 2010
 
 commit e88f64ec9c9953037ff6aad0d3d8dcc4ec432473
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Jul 20 05:52:08 2010
+Date:   Tue Jul 20 12:52:08 2010 +0200
 
     Fix CopyFromTest to be unsensitive to different formats of ToString for DateTime
 
 commit ecfe021ae3549140067de5ea7fd990bf606d4d91
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Jul 20 05:50:02 2010
+Date:   Tue Jul 20 12:50:02 2010 +0200
 
     Add default value for ImageOrientation (None = 0)
     
@@ -72,13 +634,13 @@ Date:   Tue Jul 20 05:50:02 2010
 
 commit 486632c7bc8ef86c41a60680272481c3e5fdee24
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Sun Jul 18 02:51:05 2010
+Date:   Sun Jul 18 09:51:05 2010 +0200
 
     Fix typo in mime type of cr2 files
 
 commit 8c922c0387d32176ef940791f25ec9db533ac0cf
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Tue Jul 13 13:31:27 2010
+Date:   Tue Jul 13 20:31:27 2010 +0200
 
     Cycle detection to avoid endless IFD loops.
     
@@ -86,7 +648,7 @@ Date:   Tue Jul 13 13:31:27 2010
 
 commit 0bf4c68da62ad73a927b127d9d61571a68cbd43c
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Tue Jul 13 11:47:55 2010
+Date:   Tue Jul 13 18:47:55 2010 +0200
 
     Parse and detect corruption in Olympus makernotes.
     
@@ -94,7 +656,7 @@ Date:   Tue Jul 13 11:47:55 2010
 
 commit 634a55d461819277f1cd032e602b0468e5c71870
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Tue Jul 13 10:47:24 2010
+Date:   Tue Jul 13 17:47:24 2010 +0200
 
     Handle all space comments.
     
@@ -102,25 +664,25 @@ Date:   Tue Jul 13 10:47:24 2010
 
 commit 9ac4daf03c50f697aea45333692d9d0e51396095
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Tue Jul 13 10:46:31 2010
+Date:   Tue Jul 13 17:46:31 2010 +0200
 
     Support generating fixtures for Olympus files.
 
 commit 5b595bef6bdf74f70239248bf46a8a8193c5b085
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Tue Jul 13 10:34:30 2010
+Date:   Tue Jul 13 17:34:30 2010 +0200
 
     Add support for empty comments consisting of only spaces.
 
 commit fb8e08b00909eea17cf2c08553c3c5aaf165dd5a
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Tue Jul 13 10:22:07 2010
+Date:   Tue Jul 13 17:22:07 2010 +0200
 
     Add SVG support via NoMetadata, for now.
 
 commit a67a562149925fd0862b9d3858c401f4f5d97ddb
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Jul 12 10:48:24 2010
+Date:   Mon Jul 12 17:48:24 2010 +0200
 
     Refuse to write files with unknown corruptions.
     
@@ -132,13 +694,13 @@ Date:   Mon Jul 12 10:48:24 2010
 
 commit 6c3ce99097a13e6194a755dfeec8ab82aeec23a1
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Jul 11 06:05:01 2010
+Date:   Sun Jul 11 13:05:01 2010 +0200
 
     Validate remaining XmpTag values.
 
 commit 785e4cb1bbfccc3a2d4a2d2258b69937abf3f524
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Jul 11 05:42:59 2010
+Date:   Sun Jul 11 12:42:59 2010 +0200
 
     Start validating ImageTag implementations.
     
@@ -146,25 +708,25 @@ Date:   Sun Jul 11 05:42:59 2010
 
 commit 0659501225f66d8e22df141502fc1a897d797067
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Tue Jul 6 17:33:26 2010
+Date:   Wed Jul 7 00:33:26 2010 +0200
 
     Parse embedded JpgFromRaw in RW2 files.
 
 commit a58728170f54fd7823df1bca318cf2a6214f9c02
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Jul 5 12:08:27 2010
+Date:   Mon Jul 5 19:08:27 2010 +0200
 
     Remove debug statements.
 
 commit fa81e725cd7104e12a75b92c622d302780713892
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Thu Jul 1 12:30:21 2010
+Date:   Thu Jul 1 19:30:21 2010 +0200
 
     Add Rw2 files to Monodevelop projects.
 
 commit c8964265eebde4e623716e4e9ef906f3a505eef0
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Jun 27 10:39:10 2010
+Date:   Sun Jun 27 17:39:10 2010 +0200
 
     First incomplete attempt at RW2 support.
     
@@ -173,13 +735,13 @@ Date:   Sun Jun 27 10:39:10 2010
 
 commit adddbacf46b928c207e1104be98c5ed584d58b53
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Tue Jul 6 12:28:13 2010
+Date:   Tue Jul 6 19:28:13 2010 +0200
 
     Fix build breakage.
 
 commit 4a6f66c806c0f725778e4fb091c674bf6434cc62
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Jul 5 16:20:27 2010
+Date:   Mon Jul 5 23:20:27 2010 +0200
 
     Add initial DNG support.
     
@@ -188,55 +750,55 @@ Date:   Mon Jul 5 16:20:27 2010
 
 commit 97668fecb6f55ec15610c39f58c81608f9caa015
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Jul 5 12:50:35 2010
+Date:   Mon Jul 5 19:50:35 2010 +0200
 
     Add Sony ARW support.
 
 commit dd99430ab167520497e584eb9a562eceadf269c6
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Fri Jul 2 16:17:50 2010
+Date:   Fri Jul 2 23:17:50 2010 +0200
 
     Add PCX support to NoMetadata.
 
 commit f96cca366b0d34a76a9679df69de8868d435df33
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Fri Jul 2 16:12:42 2010
+Date:   Fri Jul 2 23:12:42 2010 +0200
 
     Add mime types and extensions for Netpbm to NoMetadata.
 
 commit 454ae09e6cb5f5d6d1815bb5d3ed2785b2de0c5a
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Fri Jul 2 16:09:43 2010
+Date:   Fri Jul 2 23:09:43 2010 +0200
 
     Add mime types for bitmaps.
 
 commit 9f7bdc3a04a89cd339dbe647198cbcb1f9536c78
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Fri Jul 2 15:37:43 2010
+Date:   Fri Jul 2 22:37:43 2010 +0200
 
     Add bitmap as a non-metadata type.
 
 commit a96174f6eae4eabeeda59b427afe7d9ba1f5d76b
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Fri Jul 2 15:31:13 2010
+Date:   Fri Jul 2 22:31:13 2010 +0200
 
     Add a fallback type for images without metadata.
 
 commit 3e2f3819ad7ce424672e2127c5894a33ab372573
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Fri Jul 2 03:32:31 2010
+Date:   Fri Jul 2 10:32:31 2010 +0200
 
     Make a list copy to avoid out-of-sync enumerators.
 
 commit 8445fc0927f14607f0c4a32d4233ec2f1e9f703d
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Fri Jul 2 03:29:55 2010
+Date:   Fri Jul 2 10:29:55 2010 +0200
 
     Remove empty Sub IFDs before rendering.
 
 commit 7d632cc334efea165190c19863363252bf2b6539
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Fri Jul 2 03:23:14 2010
+Date:   Fri Jul 2 10:23:14 2010 +0200
 
     Revert "Don't render empty Sub IFDs"
     
@@ -246,19 +808,19 @@ Date:   Fri Jul 2 03:23:14 2010
 
 commit aa93264a11e5b994c829d57521860d62bac58191
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Fri Jul 2 03:17:11 2010
+Date:   Fri Jul 2 10:17:11 2010 +0200
 
     Don't render empty Sub IFDs
 
 commit 0c1bf35b0cf9f68dbb96df6501ae1cd3144daa08
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Fri Jul 2 03:04:30 2010
+Date:   Fri Jul 2 10:04:30 2010 +0200
 
     Fix handling of nullable assignments.
 
 commit d4ab524264c5defe57046950697ba41c9dc96715
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Thu Jul 1 18:25:53 2010
+Date:   Fri Jul 2 01:25:53 2010 +0200
 
     Add metadata copying between images.
     
@@ -268,19 +830,19 @@ Date:   Thu Jul 1 18:25:53 2010
 
 commit f8bc4a360d158cbc76852d94f5e0ab8baddfb976
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Thu Jul 1 11:14:02 2010
+Date:   Thu Jul 1 18:14:02 2010 +0200
 
     Update MonoDevelop support.
 
 commit 3a625b1054f3cb1eed898471dbb4406783d94142
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Jun 27 10:11:51 2010
+Date:   Sun Jun 27 17:11:51 2010 +0200
 
     Indent values in ParsePhoto.
 
 commit 00a049969c3428e06c81422afa0ed8258ef117fc
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jun 26 17:54:55 2010
+Date:   Sun Jun 27 00:54:55 2010 +0200
 
     Remove stray file from build.
     
@@ -288,7 +850,7 @@ Date:   Sat Jun 26 17:54:55 2010
 
 commit 80942aae30028a919022c26ae117296fc0912c3a
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jun 26 17:08:10 2010
+Date:   Sun Jun 27 00:08:10 2010 +0200
 
     Make the Tiff Codec type reusable.
     
@@ -296,7 +858,7 @@ Date:   Sat Jun 26 17:08:10 2010
 
 commit f5a98009508fc8961eff1cb5c0c18447dfaf7af7
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jun 26 16:54:58 2010
+Date:   Sat Jun 26 23:54:58 2010 +0200
 
     Move Tiff-based RAW types into Tiff namespace.
     
@@ -304,13 +866,13 @@ Date:   Sat Jun 26 16:54:58 2010
 
 commit dd7c59b844ee8c840b544b7bffb60935f1b1409e
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jun 26 16:19:08 2010
+Date:   Sat Jun 26 23:19:08 2010 +0200
 
     Don't crash when writing empty XMP collections.
 
 commit 06211a9fc78172fb7bce88136d268391c11c974f
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Thu Jun 24 13:27:59 2010
+Date:   Thu Jun 24 20:27:59 2010 +0200
 
     Expand Nikon format support.
     
@@ -320,19 +882,19 @@ Date:   Thu Jun 24 13:27:59 2010
 
 commit 6d75fdc99e004d0b1e24e15474d163c638d3ffb6
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Thu Jun 24 13:26:43 2010
+Date:   Thu Jun 24 20:26:43 2010 +0200
 
     Add support for SubIFDs and SubImages.
 
 commit 737857b640e60a0424e9317b83d768685ca096a7
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Thu Jun 24 13:11:04 2010
+Date:   Thu Jun 24 20:11:04 2010 +0200
 
     Update to test repository with NEF file.
 
 commit 8fe3d0ee40610d78e27da996d3a379a022eeadb3
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Thu Jun 24 11:26:36 2010
+Date:   Thu Jun 24 18:26:36 2010 +0200
 
     Don't inherit file type attributes.
     
@@ -340,19 +902,19 @@ Date:   Thu Jun 24 11:26:36 2010
 
 commit 40af7636c446833561d203b64e47e961e51cb973
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Wed Jun 23 04:36:09 2010
+Date:   Wed Jun 23 11:36:09 2010 +0200
 
     Add initial NEF support.
 
 commit 7b1311a55c9a2d4173ac3f3c472007f87668a827
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Wed Jun 23 04:09:40 2010
+Date:   Wed Jun 23 11:09:40 2010 +0200
 
     Fix copy/paste error in comments.
 
 commit 5c986c18a831105556aff482cd75be6e6ba213d9
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Jun 20 08:29:27 2010
+Date:   Sun Jun 20 15:29:27 2010 +0200
 
     Compare visual data based on hashes.
     
@@ -360,25 +922,25 @@ Date:   Sun Jun 20 08:29:27 2010
 
 commit 5d39e3d9dbe06cf357469335a9f698a4afefe1cf
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Thu Jun 17 06:14:34 2010
+Date:   Thu Jun 17 13:14:34 2010 +0200
 
     Add Canon CR2 test
 
 commit 405d847b7ac611cbe07555987096df6a9ab0d692
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Jun 20 08:55:09 2010
+Date:   Sun Jun 20 15:55:09 2010 +0200
 
     Add IFD tags for a bunch of Canon fields.
 
 commit 731f2e0b76e79b8587c8ea1d9c1f53e336cccbe8
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Jun 20 08:22:45 2010
+Date:   Sun Jun 20 15:22:45 2010 +0200
 
     Compare very large values by MD5.
 
 commit 640714afe48fe208dbdd7f8366db4757192f859e
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Thu Jun 17 06:13:30 2010
+Date:   Thu Jun 17 13:13:30 2010 +0200
 
     Extend ImageTest
     
@@ -387,7 +949,7 @@ Date:   Thu Jun 17 06:13:30 2010
 
 commit 51ceeb695ba0d42bfc06cea67c8e8b2d269efc5a
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Thu Jun 17 06:12:33 2010
+Date:   Thu Jun 17 13:12:33 2010 +0200
 
     Extend test generation tool
     
@@ -396,7 +958,7 @@ Date:   Thu Jun 17 06:12:33 2010
 
 commit 6e214001a1815f4f725b0453b97d1fc7eec1b09e
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Mon Jun 14 03:28:13 2010
+Date:   Mon Jun 14 10:28:13 2010 +0200
 
     Extend the ParsePhoto example to also show the image size
     
@@ -404,7 +966,7 @@ Date:   Mon Jun 14 03:28:13 2010
 
 commit b664ec978484b78805e71a88c6fdf8d589564039
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Mon Jun 14 03:13:22 2010
+Date:   Mon Jun 14 10:13:22 2010 +0200
 
     Add support for Canon CR2 raw files
     
@@ -416,7 +978,7 @@ Date:   Mon Jun 14 03:13:22 2010
 
 commit e43bf7115c00f0f81f086e11b4eef69d9cd47143
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Mon Jun 14 03:05:03 2010
+Date:   Mon Jun 14 10:05:03 2010 +0200
 
     Add Property Writeable to Image.File
     
@@ -428,7 +990,7 @@ Date:   Mon Jun 14 03:05:03 2010
 
 commit c8832c3dcaa62098e120eb52bb2a8b0394f6b412
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Mon Jun 14 03:03:24 2010
+Date:   Mon Jun 14 10:03:24 2010 +0200
 
     Introduce the class BaseTiffFile as base for all Tiff-based file formats
     
@@ -439,25 +1001,25 @@ Date:   Mon Jun 14 03:03:24 2010
 
 commit aa090622f9d0221af5014570b4e0bb1ccf98372e
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Fri Jun 18 12:01:48 2010
+Date:   Fri Jun 18 19:01:48 2010 +0200
 
     Add XMP node replacement, which will be used for sidecar support.
 
 commit 3dd2d467cbbb6556a26e8673f5161124c8554dbd
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Jun 14 17:50:51 2010
+Date:   Tue Jun 15 00:50:51 2010 +0200
 
     Add stubs for hooking in RAW tests.
 
 commit b19bac3b7ed4e3ed258d4da55215b492a90d1b7c
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Jun 14 17:36:06 2010
+Date:   Tue Jun 15 00:36:06 2010 +0200
 
     Only enable "make test" for git builds.
 
 commit e849883343b2b7c1f77af696946a6aed40ca4a2a
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Jun 14 17:31:19 2010
+Date:   Tue Jun 15 00:31:19 2010 +0200
 
     Don't ship test suite in tarball.
     
@@ -465,19 +1027,19 @@ Date:   Mon Jun 14 17:31:19 2010
 
 commit 83693068bcf0c98d6b27c2244f6eae41ea8325e4
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jun 12 09:43:00 2010
+Date:   Sat Jun 12 16:43:00 2010 +0200
 
     Fix XMP initialization and fixture test.
 
 commit 00f130e287724be3dbe806136c6989b610854cb1
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jun 12 09:18:55 2010
+Date:   Sat Jun 12 16:18:55 2010 +0200
 
     Add prism namespace.
 
 commit d460c17c4edf90b8d08ac2fb4db669c2d59a0c9f
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Thu Jun 3 03:10:56 2010
+Date:   Thu Jun 3 10:10:56 2010 +0200
 
     Add support for compressed PNG chunks
     
@@ -490,13 +1052,13 @@ Date:   Thu Jun 3 03:10:56 2010
 
 commit 56b2fa9e773bb39f78c34ce623b633ae37378e9e
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun May 30 15:51:12 2010
+Date:   Sun May 30 22:51:12 2010 +0200
 
     Fix some typos in the comments.
 
 commit b2abb6b51f8718fadb9245824c848de6ff054a14
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Thu May 27 03:27:37 2010
+Date:   Thu May 27 10:27:37 2010 +0200
 
     Add tests for PNG support
     
@@ -507,7 +1069,7 @@ Date:   Thu May 27 03:27:37 2010
 
 commit 94b8bfc406bda2231a0239782bdc0b8a819487e0
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Thu May 27 03:25:04 2010
+Date:   Thu May 27 10:25:04 2010 +0200
 
     Introduce support for PNG files
     
@@ -519,7 +1081,7 @@ Date:   Thu May 27 03:25:04 2010
 
 commit d1e8903491c89c7a015c748358084ba61f15c200
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue May 25 14:34:07 2010
+Date:   Tue May 25 21:34:07 2010 +0200
 
     Create class ImageBlockFile for image files organized with data blocks
     
@@ -543,13 +1105,13 @@ Date:   Tue May 25 14:34:07 2010
 
 commit 6c5c56ca76d6bc4c976dfbf5a18eab324bcac390
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun May 30 10:54:21 2010
+Date:   Sun May 30 17:54:21 2010 +0200
 
     Fix unused variable warning.
 
 commit 014eeaaaa25629aae1589f5c346bcda4dccc2375
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Fri May 28 03:38:44 2010
+Date:   Fri May 28 10:38:44 2010 +0200
 
     Remove CommentTest for jpeg test without metadata
     
@@ -561,7 +1123,7 @@ Date:   Fri May 28 03:38:44 2010
 
 commit 6446fd2116446e67335c0e5c21b2ceda854a7667
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Thu May 27 09:05:59 2010
+Date:   Thu May 27 16:05:59 2010 +0200
 
     Add Function which ensures that all possible image tags for an image file are in place
     
@@ -569,7 +1131,7 @@ Date:   Thu May 27 09:05:59 2010
 
 commit 20c02ec406477c39edf57d90605c784e6f3e41fc
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Thu May 27 09:06:43 2010
+Date:   Thu May 27 16:06:43 2010 +0200
 
     Add Test to ensure that the ImageTag properties work correctly
     
@@ -577,7 +1139,7 @@ Date:   Thu May 27 09:06:43 2010
 
 commit d11b9bfe861b47e0bbfd3a999376bdeb265cb802
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Thu May 27 08:46:29 2010
+Date:   Thu May 27 15:46:29 2010 +0200
 
     Add more flexible PropertyModificationValidator
     
@@ -589,7 +1151,7 @@ Date:   Thu May 27 08:46:29 2010
 
 commit a8651759588cc587b20dad4a2cabf1a189925f8d
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Thu May 27 03:07:09 2010
+Date:   Thu May 27 10:07:09 2010 +0200
 
     Add some properties which are usefull for image tags
     
@@ -601,7 +1163,7 @@ Date:   Thu May 27 03:07:09 2010
 
 commit 2f27f26fc3aad9f256942c4ea64e4a00f6a0384c
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Thu May 27 08:11:04 2010
+Date:   Thu May 27 15:11:04 2010 +0200
 
     JpegComment need not to be terminated by 0
     
@@ -613,13 +1175,13 @@ Date:   Thu May 27 08:11:04 2010
 
 commit f3309790ba158f3c0b460c87260b74876dfa2a10
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun May 23 08:02:07 2010
+Date:   Sun May 23 15:02:07 2010 +0200
 
     Remove a bit of unreadable code.
 
 commit c71ae99fe735b4a07387360a561554a597a0be56
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Sun May 23 07:23:38 2010
+Date:   Sun May 23 14:23:38 2010 +0200
 
     Add tests for GIF support
     
@@ -631,7 +1193,7 @@ Date:   Sun May 23 07:23:38 2010
 
 commit da6378ddd68eccc82c478f4da66399d912e413ac
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Sun May 23 07:21:53 2010
+Date:   Sun May 23 14:21:53 2010 +0200
 
     Add Validator to test removal of tags from files
     
@@ -642,7 +1204,7 @@ Date:   Sun May 23 07:21:53 2010
 
 commit 63ccf602c6523d1aa66b9f506b16a7d9f4c4018b
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Sun May 23 07:06:24 2010
+Date:   Sun May 23 14:06:24 2010 +0200
 
     Extend Validators to specify an own comment string for the test
     
@@ -655,7 +1217,7 @@ Date:   Sun May 23 07:06:24 2010
 
 commit d731abbab07c83242fd63ddb67ebd215f02bb8a5
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Sun May 23 07:03:07 2010
+Date:   Sun May 23 14:03:07 2010 +0200
 
     Introduce support for GIF files
     
@@ -669,7 +1231,7 @@ Date:   Sun May 23 07:03:07 2010
 
 commit 68722264132abced296ccfa049d90b6549fecddf
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Thu May 20 09:32:54 2010
+Date:   Thu May 20 16:32:54 2010 +0200
 
     Remove uneccessary if condition in CombinedImageTag
     
@@ -677,31 +1239,31 @@ Date:   Thu May 20 09:32:54 2010
 
 commit 9c321e650273c9f890d706a5599d8c813a2b201d
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Apr 11 08:17:40 2010
+Date:   Sun Apr 11 15:17:40 2010 +0200
 
     Make the initialization of XmpTag thread-safe.
 
 commit ecb22bf31b518a54f085b86a8f96d8a69c1d5548
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Apr 3 08:21:26 2010
+Date:   Sat Apr 3 15:21:26 2010 +0200
 
     Fix warning, add docs.
 
 commit d63b87f909fdb92e3cdb75d7c31d91f0b73d9269
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Apr 3 08:21:13 2010
+Date:   Sat Apr 3 15:21:13 2010 +0200
 
     Add missing Dispose () doc block.
 
 commit 0ef04eaab535d1baa030fef0042f766fb9ce8b61
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Apr 3 07:30:18 2010
+Date:   Sat Apr 3 14:30:18 2010 +0200
 
     Ignore monodevelop test results.
 
 commit 13a407f2a8e8a4731787cb7068047135bcc4d1ea
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Apr 3 07:28:23 2010
+Date:   Sat Apr 3 14:28:23 2010 +0200
 
     Skip visual comparison on large TIFFs.
     
@@ -714,7 +1276,7 @@ Date:   Sat Apr 3 07:28:23 2010
 
 commit 3d176ca43b1dea87b6ba0e3667416909d4059d13
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Apr 3 07:26:12 2010
+Date:   Sat Apr 3 14:26:12 2010 +0200
 
     Add support for value pairs in unit test generator.
     
@@ -732,7 +1294,7 @@ Date:   Sat Apr 3 07:26:12 2010
 
 commit 1ea7a011e2de479320a3948a359ccf276969afe9
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Apr 3 07:24:56 2010
+Date:   Sat Apr 3 14:24:56 2010 +0200
 
     Fix exception for files without orientation entry.
     
@@ -741,13 +1303,13 @@ Date:   Sat Apr 3 07:24:56 2010
 
 commit eeb815ed8e04671a0a429261859d42af030cb61b
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Apr 3 07:06:07 2010
+Date:   Sat Apr 3 14:06:07 2010 +0200
 
     Add aux XMP namespace.
 
 commit dbd404b4a025f0c6e11b2df825ab03bd5fe0e805
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Mar 20 13:05:00 2010
+Date:   Sat Mar 20 19:05:00 2010 +0100
 
     Fix XMP unit test failure.
     
@@ -757,49 +1319,49 @@ Date:   Sat Mar 20 13:05:00 2010
 
 commit dd7d2ded96bdf310b8e96f08bcf654aba2b153e5
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Fri Mar 5 04:39:21 2010
+Date:   Fri Mar 5 11:39:21 2010 +0100
 
     regenerate basic tiff test with generation tool
 
 commit 901cab9d0d27d0428f098d49f7a8bc9775f30bda
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Thu Feb 11 16:17:40 2010
+Date:   Thu Feb 11 23:17:40 2010 +0100
 
     Add a bunch of new tests for tiff and jpeg
 
 commit 0c164d4e844aacb8b449d380b11db0b18f61c641
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Thu Feb 11 16:14:13 2010
+Date:   Thu Feb 11 23:14:13 2010 +0100
 
     Extend GenerateTestFixture
 
 commit 8640ef4e11e9a2ba107bf98edac9b3394b364408
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Thu Feb 11 16:13:11 2010
+Date:   Thu Feb 11 23:13:11 2010 +0100
 
     First implementation of tiff-writing
 
 commit fd87a160d8f5238db3d1ee7d4845a2a2f439b8f9
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Tue Feb 9 09:14:13 2010
+Date:   Tue Feb 9 16:14:13 2010 +0100
 
     Replace fubar namespace
 
 commit 92bc4a1b40aeebf23cfdbb5fcec9da216eaface5
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Feb 20 10:17:51 2010
+Date:   Sat Feb 20 17:17:51 2010 +0100
 
     Monodevelop build fixes.
 
 commit 90b7c1527bedf4b738940b7e5ab4da2f1cec62a6
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Feb 20 09:41:51 2010
+Date:   Sat Feb 20 16:41:51 2010 +0100
 
     Use autotools to build src/
 
 commit 32e16e3a90ef37854ed5896e78f2122f661d9b63
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Feb 20 09:41:28 2010
+Date:   Sat Feb 20 16:41:28 2010 +0100
 
     Make NamespacePrefixes public.
     
@@ -807,7 +1369,7 @@ Date:   Sat Feb 20 09:41:28 2010
 
 commit 40dbaee8956348bb8b7fb491e4a3985c733a521d
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Tue Feb 16 12:18:45 2010
+Date:   Tue Feb 16 19:18:45 2010 +0100
 
     Kill all warnings
     
@@ -815,7 +1377,7 @@ Date:   Tue Feb 16 12:18:45 2010
 
 commit 9230695e84e8f7f414728816ab08439e63579442
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Feb 13 09:55:35 2010
+Date:   Sat Feb 13 16:55:35 2010 +0100
 
     Fix build in Monodevelop.
     
@@ -828,7 +1390,7 @@ Date:   Sat Feb 13 09:55:35 2010
 
 commit fd429ea366b095cf8d67294e721c2efb85b3e5e2
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 11:26:55 2010
+Date:   Sat Jan 23 18:26:55 2010 +0100
 
     Replace JpegEmptyTest.
     
@@ -838,19 +1400,19 @@ Date:   Sat Jan 23 11:26:55 2010
 
 commit 8ab09e06b6e810794681e9fc43e40fcf647ce149
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 09:55:31 2010
+Date:   Sat Jan 23 16:55:31 2010 +0100
 
     Remove compile warning.
 
 commit e705fd4ecbd723efbb8e5eaf00cd4248118b4581
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 09:53:03 2010
+Date:   Sat Jan 23 16:53:03 2010 +0100
 
     Use String.Empty as the default value for Keywords in CombinedImageTag.
 
 commit fc04c52a18fdcba1c58a6bff20696414c77f6acd
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 09:49:56 2010
+Date:   Sat Jan 23 16:49:56 2010 +0100
 
     Ignore three failing tests.
     
@@ -859,19 +1421,19 @@ Date:   Sat Jan 23 09:49:56 2010
 
 commit 443a43c7fe516d3017396c48fb631b7d3e1282d3
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 09:47:02 2010
+Date:   Sat Jan 23 16:47:02 2010 +0100
 
     Replace Panasonic test by much expanded version.
 
 commit 92995954ce437aeccc95e56bd7f0df7bee364bdd
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 09:36:02 2010
+Date:   Sat Jan 23 16:36:02 2010 +0100
 
     Add a bunch of Panasonic makernote entry tags.
 
 commit cb3300243013283c8f6d5ce06f9c0fefeb4363aa
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 09:28:47 2010
+Date:   Sat Jan 23 16:28:47 2010 +0100
 
     Replace the Nikon1 test with a generated one.
     
@@ -880,19 +1442,19 @@ Date:   Sat Jan 23 09:28:47 2010
 
 commit 93fda71c1833ac30d95d7ad1471b4b4192eec88c
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 09:23:34 2010
+Date:   Sat Jan 23 16:23:34 2010 +0100
 
     Add a ton of Nikon3 IFD entry tags.
 
 commit 0cd061e536fc54cdee747a4a7288566eaf16292a
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 08:58:36 2010
+Date:   Sat Jan 23 15:58:36 2010 +0100
 
     Add support for generating test fixtures for Panasonic files.
 
 commit 33880f7723388699fc8cfd00abc62ca8aa2eedad
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 08:43:29 2010
+Date:   Sat Jan 23 15:43:29 2010 +0100
 
     Add conditional for running slow image comparisons.
     
@@ -906,13 +1468,13 @@ Date:   Sat Jan 23 08:43:29 2010
 
 commit 5e4a20af289c2ed2b5148641331e25174dd3170d
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 08:42:53 2010
+Date:   Sat Jan 23 15:42:53 2010 +0100
 
     Make sure GDK is initialized.
 
 commit 50ffad60a1362c091a5d632b2bc13677bda5ee70
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 07:05:39 2010
+Date:   Sat Jan 23 14:05:39 2010 +0100
 
     Implement visual validation of image data.
     
@@ -925,7 +1487,7 @@ Date:   Sat Jan 23 07:05:39 2010
 
 commit a19e70680880efbafc9853e1624fa7dcb3202779
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 07:04:12 2010
+Date:   Sat Jan 23 14:04:12 2010 +0100
 
     Add missing Nikon3 makernote tag.
     
@@ -933,43 +1495,43 @@ Date:   Sat Jan 23 07:04:12 2010
 
 commit 9a8b89588c1dae7c1a80958feee27d32379faa7f
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 06:09:39 2010
+Date:   Sat Jan 23 13:09:39 2010 +0100
 
     Always reuse the same NoModificationValidator in unit tests.
 
 commit 828a6c147f6dfb38267b847063d37a36284e1a19
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 05:25:57 2010
+Date:   Sat Jan 23 12:25:57 2010 +0100
 
     Let GenerateTestFixture use Nikon3MakerNoteEntryTag.
 
 commit 62f1af61fef25d02e116dda01f7b1b42e0ec3601
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 05:25:33 2010
+Date:   Sat Jan 23 12:25:33 2010 +0100
 
     Fix wrong value for the Preview tag.
 
 commit aba2b7b59ca3658b00cf7ea2c25469ea7e63e6b5
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 05:20:34 2010
+Date:   Sat Jan 23 12:20:34 2010 +0100
 
     Add missing IFD tags for ratings.
 
 commit 6d39456992c538993ec89cfa030eda8fab55d51f
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 05:05:30 2010
+Date:   Sat Jan 23 12:05:30 2010 +0100
 
     Add some comments to Nikon3MakernoteReader.
 
 commit e0ca4fe802b209fc7916f1f6e06e02c198461502
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 05:00:16 2010
+Date:   Sat Jan 23 12:00:16 2010 +0100
 
     Add Nikon3MakerNoteEntryTag to remove hex value in Nikon3MakernoteReader.
 
 commit 286b1e327ed657b860c2d088c3bcdbb8eb6c7131
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 04:49:23 2010
+Date:   Sat Jan 23 11:49:23 2010 +0100
 
     Split IFD entry types out into separate files.
     
@@ -978,13 +1540,13 @@ Date:   Sat Jan 23 04:49:23 2010
 
 commit 87edb107fe6a373c44ac7102bd77bb2378caafbf
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Jan 23 04:30:49 2010
+Date:   Sat Jan 23 11:30:49 2010 +0100
 
     Clean up the IFD-offset fix a bit and add some docs.
 
 commit f7c8f24e435268aa3430af1f60140435fc1595b4
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Jan 12 15:06:23 2010
+Date:   Tue Jan 12 22:06:23 2010 +0100
 
     Fix for the Nikon makernote preview image
     
@@ -996,25 +1558,25 @@ Date:   Tue Jan 12 15:06:23 2010
 
 commit b95dbadf74d1a7dd8ba605c52cab1dfbff869673
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Dec 28 18:38:28 2009
+Date:   Tue Dec 29 01:38:28 2009 +0100
 
     Fix XapTest naming.
 
 commit 5d535fc8a949b111155b24d432868927ca70382a
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Dec 28 18:37:14 2009
+Date:   Tue Dec 29 01:37:14 2009 +0100
 
     Expand JpegCanonZoombrowserTest with all available values.
 
 commit c0f135011487ab5c297fcda9c21a4b4d27afb0ca
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Dec 28 18:25:55 2009
+Date:   Tue Dec 29 01:25:55 2009 +0100
 
     Add a ton of missing IFDEntryTags, handle them.
 
 commit 76ef1952856d46aa5c12c7b95542503aab358bb3
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Dec 28 13:42:39 2009
+Date:   Mon Dec 28 20:42:39 2009 +0100
 
     Split out UserComment code into a separate IFD entry.
     
@@ -1022,7 +1584,7 @@ Date:   Mon Dec 28 13:42:39 2009
 
 commit bacff80016206092652bc9c3e4c7ce2041856f78
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Dec 28 12:05:37 2009
+Date:   Mon Dec 28 19:05:37 2009 +0100
 
     Add custom exiv2 data-extraction programs.
     
@@ -1031,7 +1593,7 @@ Date:   Mon Dec 28 12:05:37 2009
 
 commit 5c81b09a7566d6c87799308c4984f60b8c874844
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Dec 28 08:26:45 2009
+Date:   Mon Dec 28 15:26:45 2009 +0100
 
     Fix CanonSi handling as well.
     
@@ -1040,13 +1602,13 @@ Date:   Mon Dec 28 08:26:45 2009
 
 commit 3e2113e0d84470799e0990b974953c1293e5a756
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Dec 28 08:23:11 2009
+Date:   Mon Dec 28 15:23:11 2009 +0100
 
     Fix handling of CanonCs directories from exiv2.
 
 commit ce8e07334dbf7d0e7e9e42089d8fc66f99901f52
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Dec 28 05:53:45 2009
+Date:   Mon Dec 28 12:53:45 2009 +0100
 
     Trim output for empty strings.
     
@@ -1060,7 +1622,7 @@ Date:   Mon Dec 28 05:53:45 2009
 
 commit 1e1238a6f9cc49559ae09c89ad743bea6333838c
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Dec 28 04:58:38 2009
+Date:   Mon Dec 28 11:58:38 2009 +0100
 
     Fix MakerNote handling in unit test generator a bit.
     
@@ -1070,7 +1632,7 @@ Date:   Mon Dec 28 04:58:38 2009
 
 commit 2977064ce5625bad91e17e64ecda83cd4954df35
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Dec 28 04:57:37 2009
+Date:   Mon Dec 28 11:57:37 2009 +0100
 
     Add custom IFD reader for Nikon3 MakerNotes.
     
@@ -1079,13 +1641,13 @@ Date:   Mon Dec 28 04:57:37 2009
 
 commit 6eac0efb479d1e73f4a37f422c8da5f6c7214bdb
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Dec 28 04:02:26 2009
+Date:   Mon Dec 28 11:02:26 2009 +0100
 
     Verify that simple XMP text nodes don't have children.
 
 commit c54627eff721c8c8114188b5e93bb7f62b608b78
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Dec 28 04:01:25 2009
+Date:   Mon Dec 28 11:01:25 2009 +0100
 
     Replace XapTest with a generated fixture.
     
@@ -1094,55 +1656,55 @@ Date:   Mon Dec 28 04:01:25 2009
 
 commit cd087e86d4c62f10ca6375cf1a820ef7c80113ce
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Dec 28 02:45:31 2009
+Date:   Mon Dec 28 09:45:31 2009 +0100
 
     Add empty constructor for files that don't have a comment yet.
 
 commit 3171805c57a9078f083c905e0275c6d4d75e687b
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Dec 28 02:31:07 2009
+Date:   Mon Dec 28 09:31:07 2009 +0100
 
     Ensure correct naming of GPSInfo and Thumbnail members.
 
 commit ec8ac47259a16e009871fb0b7427d4d14cf0850e
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Dec 26 14:17:09 2009
+Date:   Sat Dec 26 21:17:09 2009 +0100
 
     Fix some exiv2 quirks.
 
 commit c49002b6025b69fdf8eea07d038906fabae80f27
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Dec 26 14:02:27 2009
+Date:   Sat Dec 26 21:02:27 2009 +0100
 
     Also generate XMP fixtures.
 
 commit 6ef39781c3389cdf6b8f35ed7de08a598e2131ff
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Dec 26 11:52:52 2009
+Date:   Sat Dec 26 18:52:52 2009 +0100
 
     Add a ton of missing namespaces for XMP rendering.
 
 commit 5c2d5d4ecf57dc70a374e2a610716ebc84b3f29a
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Dec 26 11:34:48 2009
+Date:   Sat Dec 26 18:34:48 2009 +0100
 
     Correctly test Byte arrays.
 
 commit 608e6912a809f284dbdddc4b50e8ff2680f59fa0
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Dec 26 11:34:25 2009
+Date:   Sat Dec 26 18:34:25 2009 +0100
 
     Fix Thumbnail test case generation.
 
 commit febde3d56b47b7c8804fd8ff1a1bf98dc5840ab5
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Dec 26 10:57:19 2009
+Date:   Sat Dec 26 17:57:19 2009 +0100
 
     Generate test cases for the GPS IFD.
 
 commit b0a8f76e54fddc1b4a4a572e8ca73b7869018662
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Dec 26 07:57:52 2009
+Date:   Sat Dec 26 14:57:52 2009 +0100
 
     Initial version of unit test generator.
     
@@ -1151,19 +1713,19 @@ Date:   Sat Dec 26 07:57:52 2009
 
 commit 668ec86b5f3636524533d53cdab417816795fee7
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Dec 26 07:56:59 2009
+Date:   Sat Dec 26 14:56:59 2009 +0100
 
     Also test a write with no changes in JpegCanonZoombrowserTest.
 
 commit 092ead732bd54504a0e56197dc5784d35f5623d8
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Fri Dec 25 07:28:52 2009
+Date:   Fri Dec 25 14:28:52 2009 +0100
 
     Validate orientation.
 
 commit c437c647898aa38ec2f69bb35d2c9ed1fa7784a9
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Fri Dec 25 07:24:52 2009
+Date:   Fri Dec 25 14:24:52 2009 +0100
 
     Add a new validator based testing framework.
     
@@ -1171,7 +1733,7 @@ Date:   Fri Dec 25 07:24:52 2009
 
 commit 0c87736cf6c349136d794e2c697b34d24baffeed
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Thu Dec 24 11:26:22 2009
+Date:   Thu Dec 24 18:26:22 2009 +0100
 
     Register the MicrosoftPhoto namespace and correct it.
     
@@ -1180,37 +1742,37 @@ Date:   Thu Dec 24 11:26:22 2009
 
 commit 1d7bcaa386e91e387be65338a099006dcc852af2
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Thu Dec 24 11:14:21 2009
+Date:   Thu Dec 24 18:14:21 2009 +0100
 
     Factor out a common method.
 
 commit d437ce4ef8bf7571cdc041328171a197cd0d3f14
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Mon Dec 7 08:15:18 2009
+Date:   Mon Dec 7 15:15:18 2009 +0100
 
     Add tests for Rational and SRational
 
 commit 0082efab1c5937e2b5ba93da3c2144fbfceca12d
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Mon Dec 7 07:20:26 2009
+Date:   Mon Dec 7 14:20:26 2009 +0100
 
     add Comments to IFD namespace and remove a bunch of warnings
 
 commit d52d71f52fb679babc7a73f4aca94425a00eb0dd
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Sun Dec 6 10:58:05 2009
+Date:   Sun Dec 6 17:58:05 2009 +0100
 
     fix Jpeg strip tool to substitue greates found data segment
 
 commit 1d06c80962c1140be37daa1f1594d9920bdddb26
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Sun Dec 6 10:20:38 2009
+Date:   Sun Dec 6 17:20:38 2009 +0100
 
     Fix some documentation warnings
 
 commit 272d92e551fbe5996580247bebf387a0e0514886
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Wed Dec 2 15:12:50 2009
+Date:   Wed Dec 2 22:12:50 2009 +0100
 
     do not read data in other segments even if it is referenced
     
@@ -1220,61 +1782,61 @@ Date:   Wed Dec 2 15:12:50 2009
 
 commit 105a95741ce0ce117506208320ac66ecda11a26f
 Author: Mike Gemünde <mike@think61.(none)>
-Date:   Wed Dec 2 14:10:47 2009
+Date:   Wed Dec 2 21:10:47 2009 +0100
 
     complete property tests
 
 commit 590907408af1618907266513ccec7edbafe8eb40
 Author: Mike Gemünde <mike@think61.(none)>
-Date:   Wed Dec 2 13:17:29 2009
+Date:   Wed Dec 2 20:17:29 2009 +0100
 
     add support to read Sony makernotes
 
 commit 8f7b44ef7032dde19cf7834dd1964bb4a9a67eab
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Wed Dec 2 08:15:08 2009
+Date:   Wed Dec 2 15:15:08 2009 +0100
 
     Do not render jpeg segments if they are too big
 
 commit 0fb069d15f964df17ed12405097cb45c65d9ee4e
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Wed Dec 2 08:02:23 2009
+Date:   Wed Dec 2 15:02:23 2009 +0100
 
     add test for the case the metadata segments are too big to fit into a jpeg segment
 
 commit 17cfef37d3bdbc368cbfe0e2064be87c4f858aea
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Sun Dec 6 11:13:01 2009
+Date:   Sun Dec 6 18:13:01 2009 +0100
 
     Cleanup Jpeg related stuff
 
 commit 796754e6c5a685382f7c094ae233efd967cbe050
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Mon Nov 30 14:14:24 2009
+Date:   Mon Nov 30 21:14:24 2009 +0100
 
     preserve existing JFIF header in jpegs
 
 commit 88f372927cb23c852da42f89051468110410731b
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Sun Dec 6 11:12:32 2009
+Date:   Sun Dec 6 18:12:32 2009 +0100
 
     Add support to write XMP data in jpegs together with some basic tests
 
 commit 207592ab98fd6dc5f672b5724921518fc026aef8
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Sun Nov 29 05:21:55 2009
+Date:   Sun Nov 29 12:21:55 2009 +0100
 
     complete some copyright notice
 
 commit f7702f8b0d3159e4cbbebee039831888d77365ab
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Dec 1 02:14:55 2009
+Date:   Tue Dec 1 09:14:55 2009 +0100
 
     Use own class for Makernotes to take care about some special things
 
 commit 2b8c587afde382f4cb7848777020aad11ab8b987
 Author: Mike Gemünde <mike@think61.(none)>
-Date:   Sun Nov 29 04:04:06 2009
+Date:   Sun Nov 29 11:04:06 2009 +0100
 
     Add tests for File.Find and File.RFind which fail for current implementation
     
@@ -1284,7 +1846,7 @@ Date:   Sun Nov 29 04:04:06 2009
 
 commit dd00c6327b28948fdb403b1c61434f7b4af591f6
 Author: Mike Gemünde <mike@think61.(none)>
-Date:   Sun Nov 29 03:50:56 2009
+Date:   Sun Nov 29 10:50:56 2009 +0100
 
     Fix File.RFind partly and add a test
     
@@ -1295,7 +1857,7 @@ Date:   Sun Nov 29 03:50:56 2009
 
 commit 5b15309936b714426715c5769ddab92d91753ecb
 Author: Paul Lange <palango@gmx.de>
-Date:   Fri Dec 4 08:32:04 2009
+Date:   Fri Dec 4 15:32:04 2009 +0100
 
     Update MonoDevelop project files
     
@@ -1304,61 +1866,61 @@ Date:   Fri Dec 4 08:32:04 2009
 
 commit 066624c09e92fb3561d3639d7733a6289de9504e
 Author: Paul Lange <palango@gmx.de>
-Date:   Sun Dec 6 09:16:31 2009
+Date:   Sun Dec 6 16:16:31 2009 +0100
 
     Fix filename in header
 
 commit 33cf614f999eb20a60e44b5c1c1ffe7ce6604639
 Author: Paul Lange <palango@gmx.de>
-Date:   Sat Dec 5 13:25:11 2009
+Date:   Sat Dec 5 20:25:11 2009 +0100
 
     Document ImageOrientation items
 
 commit ed9e22f2db4372a3bd368aee13feaa563e5790fd
 Author: Paul Lange <palango@gmx.de>
-Date:   Sat Dec 5 07:13:55 2009
+Date:   Sat Dec 5 14:13:55 2009 +0100
 
     Remove ImageOrientation.Unknown value
 
 commit 672933310089a18b594205d4b463b854f6bde053
 Author: Paul Lange <palango@gmx.de>
-Date:   Sat Dec 5 05:59:31 2009
+Date:   Sat Dec 5 12:59:31 2009 +0100
 
     Add documentation to ImageOrientation
 
 commit 7d2416aa1f394dfc547a5586a35908139260b860
 Author: Paul Lange <palango@gmx.de>
-Date:   Sat Dec 5 05:56:20 2009
+Date:   Sat Dec 5 12:56:20 2009 +0100
 
     Convert the Orientation property to an enumeration.
 
 commit cb4c85fcb1e247f8b15e25665c963edc1fee31b3
 Author: Paul Lange <palango@gmx.de>
-Date:   Thu Dec 3 17:16:57 2009
+Date:   Fri Dec 4 00:16:57 2009 +0100
 
     Documentation fixes
 
 commit 063e41e52afbb71d6763f98da64564f47a439e29
 Author: Paul Lange <palango@gmx.de>
-Date:   Thu Dec 3 16:59:47 2009
+Date:   Thu Dec 3 23:59:47 2009 +0100
 
     Update test to test latest properties
 
 commit 7f56151dfc9e7108accdb3da57aea36f187cd558
 Author: Paul Lange <palango@gmx.de>
-Date:   Thu Dec 3 16:58:26 2009
+Date:   Thu Dec 3 23:58:26 2009 +0100
 
     Implement Orientation property
 
 commit a8a2f8a8888bd9dc9e90aae1e453f09268617e36
 Author: Paul Lange <palango@gmx.de>
-Date:   Thu Dec 3 10:44:06 2009
+Date:   Thu Dec 3 17:44:06 2009 +0100
 
     Add FocalLengthIn35mm Tag
 
 commit fd8c2f912e75d8072799f6763397fa7d9b998408
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Nov 29 17:00:27 2009
+Date:   Mon Nov 30 00:00:27 2009 +0100
 
     Register stDim namespace.
     
@@ -1366,7 +1928,7 @@ Date:   Sun Nov 29 17:00:27 2009
 
 commit aa967c6431e74d7d1feb0568dadf8ab0b693138b
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Nov 29 16:48:51 2009
+Date:   Sun Nov 29 23:48:51 2009 +0100
 
     Add XMP rendering for most spec samples.
     
@@ -1378,19 +1940,19 @@ Date:   Sun Nov 29 16:48:51 2009
 
 commit ad8163f097f9337e60699689a241cc239d7b0849
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Nov 29 14:18:52 2009
+Date:   Sun Nov 29 21:18:52 2009 +0100
 
     Add some documentation.
 
 commit b69b78b64b118fb5752a9d4faed3f3f9761fcb01
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Nov 29 14:18:39 2009
+Date:   Sun Nov 29 21:18:39 2009 +0100
 
     Fix some malformed XML comments.
 
 commit 5cb8ccfe8448ead95872a6b566da4e8afa10e4b9
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Nov 29 14:12:27 2009
+Date:   Sun Nov 29 21:12:27 2009 +0100
 
     Register the xmpTPg namespace.
     
@@ -1401,7 +1963,7 @@ Date:   Sun Nov 29 14:12:27 2009
 
 commit 49f5de819a962dbcd63026cf75d71577737c8029
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Nov 29 14:09:48 2009
+Date:   Sun Nov 29 21:09:48 2009 +0100
 
     Initial XMP writing!
     
@@ -1409,13 +1971,13 @@ Date:   Sun Nov 29 14:09:48 2009
 
 commit 559781fd057913e77cd913b56ed712bf43292582
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Nov 29 10:01:22 2009
+Date:   Sun Nov 29 17:01:22 2009 +0100
 
     Add comment from last commit message, serves as good explanation.
 
 commit fe9396868ad844de9aa00021ebd1964555d0cbbf
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Nov 29 09:09:00 2009
+Date:   Sun Nov 29 16:09:00 2009 +0100
 
     Convert the XMP tests into idempotency tests during XMP rendering.
     
@@ -1430,43 +1992,43 @@ Date:   Sun Nov 29 09:09:00 2009
 
 commit 423bc7bfbbd5bfb272039a2b0389847b51574e09
 Author: Paul Lange <palango@gmx.de>
-Date:   Sat Nov 28 13:46:59 2009
+Date:   Sat Nov 28 20:46:59 2009 +0100
 
     Remove old file
 
 commit 1506cb5c70aa01865583efbfe9ffc7c451f1b5af
 Author: Paul Lange <palango@gmx.de>
-Date:   Sat Nov 28 13:42:00 2009
+Date:   Sat Nov 28 20:42:00 2009 +0100
 
     Add Makernote test to Sony test.
 
 commit f4b811a449dd66ed9eae3dde56afcec39b4ab1cd
 Author: Paul Lange <palango@gmx.de>
-Date:   Wed Nov 25 17:56:41 2009
+Date:   Thu Nov 26 00:56:41 2009 +0100
 
     Create test for Sony Alpha 200.
 
 commit a27ea7cbc1795fb637d4daed8bac3df8a326ecfa
 Author: Stephane Delcroix <stephane@delcroix.org>
-Date:   Wed Nov 25 10:11:47 2009
+Date:   Wed Nov 25 17:11:47 2009 +0100
 
     Guesstimate the jpeg quality from DQT tables
 
 commit 02e4eab345ac9fd33b1230f8a9a2f4be5e0acb23
 Author: Stephane Delcroix <stephane@delcroix.org>
-Date:   Wed Nov 25 04:36:37 2009
+Date:   Wed Nov 25 11:36:37 2009 +0100
 
     Define std tables
 
 commit b360005357e9b2b5c38ce45ce604072314be091d
 Author: Stephane Delcroix <stephane@delcroix.org>
-Date:   Wed Nov 25 09:57:34 2009
+Date:   Wed Nov 25 16:57:34 2009 +0100
 
     unit test for image width and height
 
 commit 3d647645881d5f2d3ef71c4691b31a89fa2a7b12
 Author: Stephane Delcroix <stephane@delcroix.org>
-Date:   Wed Nov 25 09:45:39 2009
+Date:   Wed Nov 25 16:45:39 2009 +0100
 
     Read width and height from SOFn segment
     
@@ -1474,19 +2036,19 @@ Date:   Wed Nov 25 09:45:39 2009
 
 commit c37b12648f7e48bfcd9aa627a171924f07e180ff
 Author: Stephane Delcroix <stephane@delcroix.org>
-Date:   Wed Nov 25 03:48:10 2009
+Date:   Wed Nov 25 10:48:10 2009 +0100
 
     replace if/elif/elif by a switch
 
 commit 9728f102cd9716b27a834c6e933592d4449e7c5e
 Author: Stephane Delcroix <stephane@delcroix.org>
-Date:   Wed Nov 25 03:45:06 2009
+Date:   Wed Nov 25 10:45:06 2009 +0100
 
     only call ReadSegmentMarker once
 
 commit 88c3005d9470e5df8c8a17c0b20d97727543ccb1
 Author: Stephane Delcroix <stephane@delcroix.org>
-Date:   Wed Nov 25 03:27:09 2009
+Date:   Wed Nov 25 10:27:09 2009 +0100
 
     complete the Marker table
     
@@ -1494,19 +2056,19 @@ Date:   Wed Nov 25 03:27:09 2009
 
 commit abb724e102fff70baa5841ddb9be02d4bdea374a
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Fri Nov 20 16:32:47 2009
+Date:   Fri Nov 20 23:32:47 2009 +0100
 
     Fix a ton of warnings.
 
 commit 055de25226d4f1179e7b95bd5496972f3d343c91
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Fri Nov 20 16:24:36 2009
+Date:   Fri Nov 20 23:24:36 2009 +0100
 
     Split XmpNodeType into another file.
 
 commit e71b79d06b6593d5a98f32e369ea60b74974c2dd
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Sun Nov 15 14:28:56 2009
+Date:   Sun Nov 15 21:28:56 2009 +0100
 
     ... and remove the SkipDataSegment
     
@@ -1515,13 +2077,13 @@ Date:   Sun Nov 15 14:28:56 2009
 
 commit 17d4042cd39490c54e1cc97c33103395b3f52698
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Sun Nov 15 13:37:38 2009
+Date:   Sun Nov 15 20:37:38 2009 +0100
 
     Substitute SkipDataSegment() with a much faster implementation
 
 commit 1314b55a9bae19f9e582438f1ca7ae45f47adc02
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Sun Nov 15 14:16:04 2009
+Date:   Sun Nov 15 21:16:04 2009 +0100
 
     Added test for reading and writing tangled Jpeg files
     
@@ -1535,13 +2097,13 @@ Date:   Sun Nov 15 14:16:04 2009
 
 commit a67c36600bf8d9a3bf08e2e3c6b8600c448bbccd
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Nov 15 14:03:38 2009
+Date:   Sun Nov 15 21:03:38 2009 +0100
 
     Disable a stray debug dump.
 
 commit 0b21d567869b31bcdb94e83d9ce19521f996ec58
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Nov 15 13:57:12 2009
+Date:   Sun Nov 15 20:57:12 2009 +0100
 
     Add a lot of XMP spec compliance tests.
     
@@ -1549,13 +2111,13 @@ Date:   Sun Nov 15 13:57:12 2009
 
 commit 014a77ae24536e215d46576c91ce5d0fe5c1dfd5
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Nov 15 11:21:00 2009
+Date:   Sun Nov 15 18:21:00 2009 +0100
 
     Move the XMP test to another test file.
 
 commit 4d7dc8a74e9daa2c698215d5c68fafeb93d21671
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Nov 15 11:20:08 2009
+Date:   Sun Nov 15 18:20:08 2009 +0100
 
     Drop a useless parameter on XmpTag and use string instead of ByteVector.
     
@@ -1563,25 +2125,25 @@ Date:   Sun Nov 15 11:20:08 2009
 
 commit bf5747d7bf5ee86979db797eedfd3147e5fc6ce0
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Nov 14 14:03:03 2009
+Date:   Sat Nov 14 21:03:03 2009 +0100
 
     Minimize sample, using tiggers awesome tool.
 
 commit 43658ce3ac52183a8fc26b4604077d9e19565909
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Nov 14 13:54:57 2009
+Date:   Sat Nov 14 20:54:57 2009 +0100
 
     Implement a missing XMP dialect, additional test.
 
 commit 839aa430542a495a89f8bccd3de45c43753c90db
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Nov 9 11:46:37 2009
+Date:   Mon Nov 9 18:46:37 2009 +0100
 
     Ignore XML comments.
 
 commit 255d53a969a783beced00a726a3ac05be2060c75
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Nov 9 11:46:10 2009
+Date:   Mon Nov 9 18:46:10 2009 +0100
 
     Old versions of XMP were called XAP, also look for those tags.
     
@@ -1589,49 +2151,49 @@ Date:   Mon Nov 9 11:46:10 2009
 
 commit 501464daa156195c2005706aa5e0373915a93438
 Author: Mike Gemünde <mike@think61.(none)>
-Date:   Sat Nov 7 05:15:27 2009
+Date:   Sat Nov 7 12:15:27 2009 +0100
 
     add very rudimentary support for Olympus makernotes
 
 commit f5edd229d8392dffde630d42fb3404729a6f4dc6
 Author: Mike Gemünde <mike@think61.(none)>
-Date:   Sat Nov 7 05:13:43 2009
+Date:   Sat Nov 7 12:13:43 2009 +0100
 
     add very basic example to substitute the image data in a jpeg file with some (very small) dummy data
 
 commit 05f51cc1e883a6ce61573c881613d14e87d77742
 Author: Mike Gemünde <mike@think61.(none)>
-Date:   Sat Nov 7 05:12:43 2009
+Date:   Sat Nov 7 12:12:43 2009 +0100
 
     add another Nikon jpeg test
 
 commit e4d3394d33f1dafccf0eb4cef565a6ba7a3c114d
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Thu Nov 5 17:13:17 2009
+Date:   Fri Nov 6 00:13:17 2009 +0100
 
     first introduction of reading and writing of nikon makernotes
 
 commit eb1f30ce21194fe7c30c661ae72818562d3c5cf9
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Thu Nov 5 16:43:56 2009
+Date:   Thu Nov 5 23:43:56 2009 +0100
 
     Add more information to unit tests to easier find an error
 
 commit 1ea38571eada751b29fd95a49942f0fb37bfc608
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Wed Nov 4 16:51:48 2009
+Date:   Wed Nov 4 23:51:48 2009 +0100
 
     remove comment tags if a null is set for comment
 
 commit 87f3bb32953b657a01e98476082458e9ee77afdb
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Nov 3 17:26:28 2009
+Date:   Wed Nov 4 00:26:28 2009 +0100
 
     reduce warnings by adding some comments to IFDStructure methods
 
 commit 7b5b2d47f8a36c1b33ec0422b2f8bf5427f8c38a
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Nov 3 02:15:00 2009
+Date:   Tue Nov 3 09:15:00 2009 +0100
 
     remove comment property from ImageTag
     
@@ -1640,25 +2202,25 @@ Date:   Tue Nov 3 02:15:00 2009
 
 commit f85e1e1829b0adc27259e00af5ed0097266ab7d1
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Nov 3 02:13:10 2009
+Date:   Tue Nov 3 09:13:10 2009 +0100
 
     implement Comment property for JpegComment
 
 commit 79bbf6dbe4d577ff6212cd7b63da4025fec7e23a
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Nov 3 17:29:24 2009
+Date:   Wed Nov 4 00:29:24 2009 +0100
 
     Rating in ImageTag should also be a Nullable type to allow removing the rating.
 
 commit cadcc5e60db30887bc60e25ed5fecb6ffa55a1c2
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Nov 3 17:09:30 2009
+Date:   Wed Nov 4 00:09:30 2009 +0100
 
     add support for the Altitude property in IFDTag
 
 commit 50313af3a3395e5d21da55eb051c222cda0a83ff
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Nov 3 16:13:24 2009
+Date:   Tue Nov 3 23:13:24 2009 +0100
 
     change plain values to Nullable in ImageTag
     
@@ -1672,61 +2234,61 @@ Date:   Tue Nov 3 16:13:24 2009
 
 commit 4db7440a13a33cd6dff37ad2df6425bd57101513
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Mon Nov 2 17:47:10 2009
+Date:   Tue Nov 3 00:47:10 2009 +0100
 
     fix GPS stuff to allow also negative longitude values
 
 commit 1b4bd6c144ed2e35a98698547c88b7607ef035b6
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Nov 2 17:26:23 2009
+Date:   Tue Nov 3 00:26:23 2009 +0100
 
     Kill two more warnings.
 
 commit 32629b5f3b9b3755701b6b73a397c7ba889e81c6
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Nov 2 17:24:17 2009
+Date:   Tue Nov 3 00:24:17 2009 +0100
 
     Kill warnings due to incorrect usage of keywords.
 
 commit 8acb7b766891c03bbcd574f2d4f51de6b71804fd
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Mon Nov 2 17:02:43 2009
+Date:   Tue Nov 3 00:02:43 2009 +0100
 
     Fix a crash at XMP parsing due to nonstandard placement of xmlns attributes.
 
 commit 749c14e82cb7f72e6ffef81f98fb0ebeef96c508
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Nov 1 13:37:45 2009
+Date:   Sun Nov 1 20:37:45 2009 +0100
 
     Kill two warnings.
 
 commit afa443e0136c3babf51c864b9d88ad8cd2d59dc0
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Nov 1 03:52:29 2009
+Date:   Sun Nov 1 10:52:29 2009 +0100
 
     Kill more warnings.
 
 commit 82cc9ac2d66f77900ada7ede075d6a68993e1d92
 Author: Mike Gemünde <mike@think61.(none)>
-Date:   Sun Nov 1 07:35:48 2009
+Date:   Sun Nov 1 14:35:48 2009 +0100
 
     add support to read and write GPS inforamtion in exif.
 
 commit 521d45753525830ca9656a345cef7139453210a9
 Author: Mike Gemünde <mike@think61.(none)>
-Date:   Sun Nov 1 04:53:47 2009
+Date:   Sun Nov 1 11:53:47 2009 +0100
 
     use the values directly for an IFD array entry instead
 
 commit 920585b928b058332cf59b411aefa63ffafcd114
 Author: Mike Gemünde <mike@think61.(none)>
-Date:   Sun Nov 1 04:44:06 2009
+Date:   Sun Nov 1 11:44:06 2009 +0100
 
     add support to write makernotes of Canon and Panasonic back to file
 
 commit 799b2aa1daa55bc8c8f3a65777bdb40df09966ad
 Author: Mike Gemünde <mike@think61.(none)>
-Date:   Sun Nov 1 03:02:57 2009
+Date:   Sun Nov 1 10:02:57 2009 +0100
 
     move image tests in own namespace
     
@@ -1735,67 +2297,67 @@ Date:   Sun Nov 1 03:02:57 2009
 
 commit 875779f9e5d34e19478d739a454699a62bab8947
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Nov 1 02:57:38 2009
+Date:   Sun Nov 1 09:57:38 2009 +0100
 
     Cut down on the number of warnings.
 
 commit 2e5e7800de5726cc7695737271b2c3f80d723e76
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Wed Oct 28 15:43:18 2009
+Date:   Wed Oct 28 21:43:18 2009 +0100
 
     fix warnings on use of obsolete methods in Bytevector
 
 commit cbc20f221e139c5cbd0b755bde2bb7a5ea93e887
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Wed Oct 28 14:07:14 2009
+Date:   Wed Oct 28 20:07:14 2009 +0100
 
     add ThumbnailIFDEntry to handle thumbnail data correctly
 
 commit 3a19b17396873cc253a25fe46b23358b68222135
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Wed Oct 28 13:10:49 2009
+Date:   Wed Oct 28 19:10:49 2009 +0100
 
     the id of on IFD entry type is also an unsigned short
 
 commit a6f8d00aec73cb73d024c7871d4d4d5445d84838
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Wed Oct 28 13:07:15 2009
+Date:   Wed Oct 28 19:07:15 2009 +0100
 
     a tag of an IFD Entry is an unsigned short, so take an usnigned short for representation, too
 
 commit 3cb1a37881778072cc74835cdfa8cf1017d0dc7e
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Wed Oct 28 12:59:47 2009
+Date:   Wed Oct 28 18:59:47 2009 +0100
 
     move some of the renderer code to the IFD Entries itself
 
 commit c32734b0f03dcb8f541014df98ab9888ada5646f
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Wed Oct 28 12:26:38 2009
+Date:   Wed Oct 28 18:26:38 2009 +0100
 
     add Rational and SRational struct for IFD Entries
 
 commit ad18345b7f417e4b59a16582c3246b60bb342cea
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Oct 27 17:53:47 2009
+Date:   Tue Oct 27 23:53:47 2009 +0100
 
     add unit test for Panasonic file (Exif, Makernote)
 
 commit bce29cacf6603d39f7847dda4695633dd9130e51
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Oct 27 17:51:35 2009
+Date:   Tue Oct 27 23:51:35 2009 +0100
 
     add support for some other Makernotes (Panasonic, Pentax)
 
 commit 2724f556a6d8a73249d384cfac65889b27b55325
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Oct 27 17:47:56 2009
+Date:   Tue Oct 27 23:47:56 2009 +0100
 
     add support for more entry types
 
 commit 557f95441d25bcaee3f14411d28790380422135a
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Oct 27 16:42:18 2009
+Date:   Tue Oct 27 22:42:18 2009 +0100
 
     take care of restart marker in data segment of jpeg
     
@@ -1804,31 +2366,31 @@ Date:   Tue Oct 27 16:42:18 2009
 
 commit 9f17499d32f2dbdc02f5e2f2d35cd5bed4b0d3e8
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Mon Oct 26 17:02:44 2009
+Date:   Mon Oct 26 23:02:44 2009 +0100
 
     add support for reading XMP keywords
 
 commit 41c56e19c0eac6b396193ef1370b7be842e2d961
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Mon Oct 26 15:13:05 2009
+Date:   Mon Oct 26 21:13:05 2009 +0100
 
     adding GPS support in ImageTag
 
 commit 655de1f5442721a192a87fd42da21608880248bd
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Oct 25 09:58:24 2009
+Date:   Sun Oct 25 15:58:24 2009 +0100
 
     Add an example (and test) app for photos.
 
 commit fbbff6a6716ffe37a9b04629cbb1da48f3346fbf
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Oct 25 09:05:42 2009
+Date:   Sun Oct 25 15:05:42 2009 +0100
 
     Cut back on the number of warnings.
 
 commit 6cf5ab452f9fbc42f734f0e8ec7d76b18789c50f
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Oct 20 16:31:17 2009
+Date:   Tue Oct 20 23:31:17 2009 +0200
 
     Extend UserComment handling for undefined data
     
@@ -1838,7 +2400,7 @@ Date:   Tue Oct 20 16:31:17 2009
 
 commit ece09bcf9cb44b7ef47574d0e105c4695b33e003
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Oct 20 16:29:02 2009
+Date:   Tue Oct 20 23:29:02 2009 +0200
 
     Extend Reading of ASCII text fields
     
@@ -1848,19 +2410,19 @@ Date:   Tue Oct 20 16:29:02 2009
 
 commit 95520e015a2d2659eae04af7e21b1c51bfa47b97
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Oct 20 14:23:33 2009
+Date:   Tue Oct 20 21:23:33 2009 +0200
 
     Change also Model to IFD0 instead of ExifIfd
 
 commit 6e47449ef9fae5b06a9b4f8c9e74a77b95663d48
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Oct 20 14:11:03 2009
+Date:   Tue Oct 20 21:11:03 2009 +0200
 
     ImageDescription is part of IFD0 and not the ExifIFD
 
 commit 7e84a12193e17714aa9ea64b910719c46ce7b76a
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Oct 20 13:47:28 2009
+Date:   Tue Oct 20 20:47:28 2009 +0200
 
     complete IFD entry tag ids
     
@@ -1871,19 +2433,19 @@ Date:   Tue Oct 20 13:47:28 2009
 
 commit 8662c7a95c1c6fe551912493e1fd974974ecb682
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Oct 18 10:58:51 2009
+Date:   Sun Oct 18 17:58:51 2009 +0200
 
     Restructure IFD. Able to represent everything now.
 
 commit a43b49180ff0803cfc4cae5e6e26235d5d00b3b6
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Oct 18 08:20:42 2009
+Date:   Sun Oct 18 15:20:42 2009 +0200
 
     Prevent writing empty sub-IFDs.
 
 commit 403c87c10f6ff215eeb78d088ea4be4b0437b210
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Oct 18 07:16:39 2009
+Date:   Sun Oct 18 14:16:39 2009 +0200
 
     Add bits of the convenience API.
     
@@ -1891,25 +2453,25 @@ Date:   Sun Oct 18 07:16:39 2009
 
 commit 8dc9997baefbb92f7ddf68e3d339a053a0e74e79
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Oct 18 05:50:30 2009
+Date:   Sun Oct 18 12:50:30 2009 +0200
 
     Split IFD reading and rendering code into Readers and Renderers.
 
 commit eff47010115a487deaabc6217a38ae963c269764
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Oct 17 10:57:04 2009
+Date:   Sat Oct 17 17:57:04 2009 +0200
 
     Fix a couple of warnings.
 
 commit 21dc3e088e5fb8c0d6de86888aa65389fdc86830
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Oct 17 10:18:26 2009
+Date:   Sat Oct 17 17:18:26 2009 +0200
 
     Only expose tag types that make sense, move stuff around.
 
 commit c387fdb40d86c4de06b47646ef4e31b6f51136c8
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sat Oct 17 04:45:11 2009
+Date:   Sat Oct 17 11:45:11 2009 +0200
 
     Add common Image.File base class for image types.
     
@@ -1917,25 +2479,25 @@ Date:   Sat Oct 17 04:45:11 2009
 
 commit db77414ae3974a58cc73e564139382a54bce8674
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Wed Oct 14 17:28:31 2009
+Date:   Thu Oct 15 00:28:31 2009 +0200
 
     add support to read write some image properties by the ExifTag class
 
 commit 838f7d1d596add212957aa5fb9ff9b06a2156b88
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Wed Oct 14 17:27:41 2009
+Date:   Thu Oct 15 00:27:41 2009 +0200
 
     add support to merge image properties in CombinedImageTag
 
 commit 4fbf51e36caa72285462f54912b172fe23b81c1d
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Wed Oct 14 12:41:31 2009
+Date:   Wed Oct 14 19:41:31 2009 +0200
 
     possibility to add new tags (Exif, GPS, IFD) to Jpegs
 
 commit a3ff09e1447c05ef8651af6195953b66beeb60e9
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Wed Oct 14 08:36:29 2009
+Date:   Wed Oct 14 15:36:29 2009 +0200
 
     introducing Image.ImageTag and Image.CombinedImageTag
     
@@ -1944,31 +2506,31 @@ Date:   Wed Oct 14 08:36:29 2009
 
 commit 5c1c307318c23f0f582204bd9424b542924d7567
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Oct 13 18:23:31 2009
+Date:   Wed Oct 14 01:23:31 2009 +0200
 
     support to add JpegComment to Jpeg File
 
 commit 4827d042e87d0b7c25c89adc66adaa5105edb633
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Oct 13 16:42:06 2009
+Date:   Tue Oct 13 23:42:06 2009 +0200
 
     Add support for reading and writing the GPS Directory
 
 commit c995075b4191fe47929e96cdd0f77d64d1ecd3cc
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Oct 13 16:38:18 2009
+Date:   Tue Oct 13 23:38:18 2009 +0200
 
     remove unused private methods from Tiff.File
 
 commit dc6f6196a3304e12f67874f8bdbd5f772eb9b39c
 Author: Mike Gemünde <mike@gemuende.de>
-Date:   Tue Oct 13 15:57:54 2009
+Date:   Tue Oct 13 22:57:54 2009 +0200
 
     fix comment
 
 commit a87f24e12453a3bab1e6acf49d6fc5d71cb80ca0
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Oct 11 06:09:24 2009
+Date:   Sun Oct 11 13:09:24 2009 +0200
 
     2009-10-11  Ruben Vermeersch  <ruben@savanne.be>
     
@@ -1992,7 +2554,7 @@ Date:   Sun Oct 11 06:09:24 2009
 
 commit b6bd1379eca52d504bf3e1f67533c5469c4ceedd
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Oct 11 06:04:13 2009
+Date:   Sun Oct 11 13:04:13 2009 +0200
 
     2009-10-11  Mike Gemuende  <mike@gemuende.de>
     
@@ -2017,7 +2579,7 @@ Date:   Sun Oct 11 06:04:13 2009
 
 commit 339bae5d5465d2dec2f2832e31352ed11f88e679
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Oct 11 05:59:06 2009
+Date:   Sun Oct 11 12:59:06 2009 +0200
 
     2009-10-11  Ruben Vermeersch  <ruben@savanne.be>
     
@@ -2038,7 +2600,7 @@ Date:   Sun Oct 11 05:59:06 2009
 
 commit c5b357416f1ad71befabad8272975f0abb6f3b5d
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Oct 11 05:43:08 2009
+Date:   Sun Oct 11 12:43:08 2009 +0200
 
     2009-10-11  Ruben Vermeersch  <ruben@savanne.be>
     
@@ -2077,7 +2639,7 @@ Date:   Sun Oct 11 05:43:08 2009
 
 commit e2b13c97822f6f63b0aa7d26394b5acf1d7a15ec
 Author: Ruben Vermeersch <ruben@savanne.be>
-Date:   Sun Oct 11 04:03:58 2009
+Date:   Sun Oct 11 11:03:58 2009 +0200
 
     2009-10-11  Ruben Vermeersch  <ruben@savanne.be>
     
@@ -2106,7 +2668,7 @@ Date:   Sun Oct 11 04:03:58 2009
 
 commit 680892aa0534508d687b2436576f7dbea4f996d5
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Sat Mar 20 12:06:37 2010
+Date:   Sat Mar 20 17:06:37 2010 +0000
 
     2010-03-20  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2116,7 +2678,7 @@ Date:   Sat Mar 20 12:06:37 2010
 
 commit 9c0969f779c01dc7c3bc4ec97890898d2f4cc5e8
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Sat Mar 20 12:02:38 2010
+Date:   Sat Mar 20 17:02:38 2010 +0000
 
     2010-03-20  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2126,7 +2688,7 @@ Date:   Sat Mar 20 12:02:38 2010
 
 commit 160841bfafef60da2d0be6830ea03a5483bebafd
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Sat Mar 20 11:54:05 2010
+Date:   Sat Mar 20 16:54:05 2010 +0000
 
     2010-03-20  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2137,7 +2699,7 @@ Date:   Sat Mar 20 11:54:05 2010
 
 commit 857c9a84b60c232e334bdd118dbd237c69f2419b
 Author: Alexander Kojevnikov <alexander@kojevnikov.com>
-Date:   Sat Mar 20 02:49:42 2010
+Date:   Sat Mar 20 07:49:42 2010 +0000
 
     2010-03-20  Alexander Kojevnikov <alexander@kojevnikov.com>
     
@@ -2149,7 +2711,7 @@ Date:   Sat Mar 20 02:49:42 2010
 
 commit f657f9ff312b28f52f7be93dfff4df67ee84aa7a
 Author: Alexander Kojevnikov <alexander@kojevnikov.com>
-Date:   Sat Mar 20 02:34:13 2010
+Date:   Sat Mar 20 07:34:13 2010 +0000
 
     2010-03-20  Alexander Kojevnikov <alexander@kojevnikov.com>
     
@@ -2160,7 +2722,7 @@ Date:   Sat Mar 20 02:34:13 2010
 
 commit c815c88583f625ca3ab1e247a696c0a2ac87cb36
 Author: Alexander Kojevnikov <alexander@kojevnikov.com>
-Date:   Sat Mar 20 02:06:30 2010
+Date:   Sat Mar 20 07:06:30 2010 +0000
 
     2010-03-20  Alexander Kojevnikov <alexander@kojevnikov.com>
     
@@ -2172,7 +2734,7 @@ Date:   Sat Mar 20 02:06:30 2010
 
 commit 01cb5415eaa5017a0b24b96fc0cf24f76fe33608
 Author: Alexander Kojevnikov <alexander@kojevnikov.com>
-Date:   Fri Mar 19 23:51:38 2010
+Date:   Sat Mar 20 04:51:38 2010 +0000
 
     2010-03-20  Alexander Kojevnikov <alexander@kojevnikov.com>
     
@@ -2183,7 +2745,7 @@ Date:   Fri Mar 19 23:51:38 2010
 
 commit 27db4ba286399349af7596f18217adc3828a315e
 Author: Alexander Kojevnikov <alexander@kojevnikov.com>
-Date:   Fri Mar 19 22:10:52 2010
+Date:   Sat Mar 20 03:10:52 2010 +0000
 
     2010-03-20  Alexander Kojevnikov <alexander@kojevnikov.com>
     
@@ -2193,7 +2755,7 @@ Date:   Fri Mar 19 22:10:52 2010
 
 commit 356094ea343dbb85de183c875672b979bd175a9d
 Author: Alexander Kojevnikov <alexander@kojevnikov.com>
-Date:   Fri Mar 19 22:04:28 2010
+Date:   Sat Mar 20 03:04:28 2010 +0000
 
     2010-03-20  Alexander Kojevnikov <alexander@kojevnikov.com>
     
@@ -2206,7 +2768,7 @@ Date:   Fri Mar 19 22:04:28 2010
 
 commit b2fb500435776fe685b3dd7f894232e03403a70c
 Author: Alexander Kojevnikov <alexander@kojevnikov.com>
-Date:   Fri Mar 19 21:53:58 2010
+Date:   Sat Mar 20 02:53:58 2010 +0000
 
     2010-03-20  Alexander Kojevnikov <alexander@kojevnikov.com>
     
@@ -2222,7 +2784,7 @@ Date:   Fri Mar 19 21:53:58 2010
 
 commit a589453d5e842e7e161d5cbca9721e4e9c3924fe
 Author: Alexander Kojevnikov <alexander@kojevnikov.com>
-Date:   Fri Mar 19 21:31:42 2010
+Date:   Sat Mar 20 02:31:42 2010 +0000
 
     2010-03-20 Alexander Kojevnikov <alexander@kojevnikov.com>
     
@@ -2237,7 +2799,7 @@ Date:   Fri Mar 19 21:31:42 2010
 
 commit 9beda4fbb27e255d8eafc496a81fb49dd13fe16f
 Author: Andrés G. Aragoneses <knocte@gmail.com>
-Date:   Wed Mar 3 17:59:47 2010
+Date:   Wed Mar 3 23:59:47 2010 +0000
 
     2010-03-02  Andrés G. Aragoneses  <knocte@gmail.com>
     
@@ -2249,7 +2811,7 @@ Date:   Wed Mar 3 17:59:47 2010
 
 commit df439f8529b7194b5424358fca9490e791e7a073
 Author: Andrés G. Aragoneses <knocte@gmail.com>
-Date:   Tue Mar 2 05:01:39 2010
+Date:   Tue Mar 2 11:01:39 2010 +0000
 
     forgot changelog
     
@@ -2257,7 +2819,7 @@ Date:   Tue Mar 2 05:01:39 2010
 
 commit f175da0d302b18f2d3296da64e8f7f5ad30ccb1b
 Author: Andrés G. Aragoneses <knocte@gmail.com>
-Date:   Tue Mar 2 04:58:48 2010
+Date:   Tue Mar 2 10:58:48 2010 +0000
 
     * tests/tests.mdp:
     * taglib-sharp.mds:
@@ -2275,7 +2837,7 @@ Date:   Tue Mar 2 04:58:48 2010
 
 commit 63ff2db7fc275c88d018cc2cb751053986e7ff96
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Wed Feb 24 12:57:13 2010
+Date:   Wed Feb 24 18:57:13 2010 +0000
 
     2010-02-24  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2286,7 +2848,7 @@ Date:   Wed Feb 24 12:57:13 2010
 
 commit 9f8664ec69ee36046be5e8070a0463e3fea403d7
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Wed Feb 24 12:51:42 2010
+Date:   Wed Feb 24 18:51:42 2010 +0000
 
     2010-02-24  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2296,7 +2858,7 @@ Date:   Wed Feb 24 12:51:42 2010
 
 commit 6902a83d09086ac84884ff72dd99f1af9e771bdc
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Tue Feb 23 16:57:51 2010
+Date:   Tue Feb 23 22:57:51 2010 +0000
 
     2010-02-23  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2306,7 +2868,7 @@ Date:   Tue Feb 23 16:57:51 2010
 
 commit aeb2315f921fb7c854966b2f206ff67793ca7bcd
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Sun Feb 21 16:31:23 2010
+Date:   Sun Feb 21 22:31:23 2010 +0000
 
     2010-02-21  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2323,7 +2885,7 @@ Date:   Sun Feb 21 16:31:23 2010
 
 commit 0cf7cde9011e9f2d5a548f4b88198a9e8ff18c67
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Wed Feb 3 19:40:03 2010
+Date:   Thu Feb 4 01:40:03 2010 +0000
 
     2010-02-03  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2336,7 +2898,7 @@ Date:   Wed Feb 3 19:40:03 2010
 
 commit 939ae5abdb8757f438a72050bbac262a56b5f964
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Mon Feb 1 18:28:56 2010
+Date:   Tue Feb 2 00:28:56 2010 +0000
 
     2010-02-01  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2351,7 +2913,7 @@ Date:   Mon Feb 1 18:28:56 2010
 
 commit 21458f4451b57d10e373817cbee58101f9501579
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Tue Jan 26 19:07:50 2010
+Date:   Wed Jan 27 01:07:50 2010 +0000
 
     2010-01-26  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2362,7 +2924,7 @@ Date:   Tue Jan 26 19:07:50 2010
 
 commit a2a8010c2830c163af693231d7d6893c8ede4409
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Wed Jan 20 18:30:16 2010
+Date:   Thu Jan 21 00:30:16 2010 +0000
 
     2010-01-20  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2374,7 +2936,7 @@ Date:   Wed Jan 20 18:30:16 2010
 
 commit 466e24d5340be9653e538168526557f49b0fbd96
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Jan 7 16:56:22 2010
+Date:   Thu Jan 7 22:56:22 2010 +0000
 
     2010-01-07  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2385,7 +2947,7 @@ Date:   Thu Jan 7 16:56:22 2010
 
 commit df89366fb2a7365bf11767e2bf746c5c34e0c1fd
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Jan 7 14:31:48 2010
+Date:   Thu Jan 7 20:31:48 2010 +0000
 
     2010-01-07  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2403,7 +2965,7 @@ Date:   Thu Jan 7 14:31:48 2010
 
 commit 5e0e952df97bc485f5fcf4411b785c6251ae24cc
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Sun Dec 13 16:00:43 2009
+Date:   Sun Dec 13 22:00:43 2009 +0000
 
     2009-12-13  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2415,7 +2977,7 @@ Date:   Sun Dec 13 16:00:43 2009
 
 commit 6f160becd6baf821b65f5f6ba6ac71d29b909f83
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Wed Sep 30 18:53:22 2009
+Date:   Wed Sep 30 23:53:22 2009 +0000
 
     Fix NEWS uploading
     
@@ -2423,7 +2985,7 @@ Date:   Wed Sep 30 18:53:22 2009
 
 commit 28a2feb8ffdd78e687d2200c678b88a3234b9168
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Wed Sep 30 18:48:14 2009
+Date:   Wed Sep 30 23:48:14 2009 +0000
 
     2009-09-30  Aaron Bockover  <abockover@novell.com>
     
@@ -2435,7 +2997,7 @@ Date:   Wed Sep 30 18:48:14 2009
 
 commit 713ed6438ba96810cdcdef29d90b1b5e5f6efb95
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Mon May 18 14:23:36 2009
+Date:   Mon May 18 19:23:36 2009 +0000
 
     2009-05-18  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2448,7 +3010,7 @@ Date:   Mon May 18 14:23:36 2009
 
 commit bf2aaa4c8f68da49fe24088f4b56e9b8be58b987
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Fri May 15 10:48:50 2009
+Date:   Fri May 15 15:48:50 2009 +0000
 
     2009-05-15  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2470,7 +3032,7 @@ Date:   Fri May 15 10:48:50 2009
 
 commit 13b29dabc38a4258fbb66ca24b0ce20ed71582b3
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu May 14 15:23:56 2009
+Date:   Thu May 14 20:23:56 2009 +0000
 
     2009-05-14  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2490,7 +3052,7 @@ Date:   Thu May 14 15:23:56 2009
 
 commit 2207974d1385133c910e2d352bcbd9f858ebbdf4
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Mon Apr 20 14:10:43 2009
+Date:   Mon Apr 20 19:10:43 2009 +0000
 
     Correct a couple 2008s that should be 2009
     
@@ -2498,7 +3060,7 @@ Date:   Mon Apr 20 14:10:43 2009
 
 commit b5d885b5ef0458fd0d2ea707ec3bbd38a60a4829
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Wed Mar 25 18:15:23 2009
+Date:   Wed Mar 25 23:15:23 2009 +0000
 
     2009-03-25  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2510,7 +3072,7 @@ Date:   Wed Mar 25 18:15:23 2009
 
 commit 6f22bf46936fa62d8dc4f9ea01fff8de5921e486
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Mar 19 23:54:24 2009
+Date:   Fri Mar 20 04:54:24 2009 +0000
 
     2009-03-19  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2522,7 +3084,7 @@ Date:   Thu Mar 19 23:54:24 2009
 
 commit f70f7b27b2e9bf923a8f907aa1dec61599121168
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Wed Mar 18 22:21:23 2009
+Date:   Thu Mar 19 03:21:23 2009 +0000
 
     2009-03-18  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2536,7 +3098,7 @@ Date:   Wed Mar 18 22:21:23 2009
 
 commit 446b14bd5997c51d0a6edd31988058837a1fc283
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Tue Mar 10 14:41:12 2009
+Date:   Tue Mar 10 19:41:12 2009 +0000
 
     2009-03-10  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2549,7 +3111,7 @@ Date:   Tue Mar 10 14:41:12 2009
 
 commit f9ccf65c85d4dc1f1b1924a52e8b59cb902480e7
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Tue Mar 10 00:01:00 2009
+Date:   Tue Mar 10 05:01:00 2009 +0000
 
     2009-03-09  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2561,7 +3123,7 @@ Date:   Tue Mar 10 00:01:00 2009
 
 commit 877b873e2aa8e999a1ffd451f55c78b677c3b5ed
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Mon Mar 9 23:53:30 2009
+Date:   Tue Mar 10 04:53:30 2009 +0000
 
     2009-03-09  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2573,7 +3135,7 @@ Date:   Mon Mar 9 23:53:30 2009
 
 commit 96e698124f34e42b85d1c0618af1900ad156843e
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Mon Mar 9 23:47:07 2009
+Date:   Tue Mar 10 04:47:07 2009 +0000
 
     2009-03-09  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2585,7 +3147,7 @@ Date:   Mon Mar 9 23:47:07 2009
 
 commit 74e848482a4adb6ea951d3ca60429295ddf33c4a
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Mon Mar 9 23:37:09 2009
+Date:   Tue Mar 10 04:37:09 2009 +0000
 
     2009-03-09  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2596,7 +3158,7 @@ Date:   Mon Mar 9 23:37:09 2009
 
 commit a5c66dedc41e14ea667da68804391f574cbb2a5a
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Mon Mar 9 23:25:40 2009
+Date:   Tue Mar 10 04:25:40 2009 +0000
 
     2009-03-09  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2623,7 +3185,7 @@ Date:   Mon Mar 9 23:25:40 2009
 
 commit 2822fea172a0ce858bfb96bbb4a1520f7e6c399a
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Wed Mar 4 10:25:48 2009
+Date:   Wed Mar 4 16:25:48 2009 +0000
 
     2009-03-04  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2640,7 +3202,7 @@ Date:   Wed Mar 4 10:25:48 2009
 
 commit adfc5f7ee25c53f6a95d0849441957cb1f0a55f0
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Feb 19 20:37:59 2009
+Date:   Fri Feb 20 02:37:59 2009 +0000
 
     2009-02-19  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2655,7 +3217,7 @@ Date:   Thu Feb 19 20:37:59 2009
 
 commit 447239a8964b6637cf570635fff2071098f20430
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Feb 19 20:29:07 2009
+Date:   Fri Feb 20 02:29:07 2009 +0000
 
     2009-02-19  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2668,7 +3230,7 @@ Date:   Thu Feb 19 20:29:07 2009
 
 commit 179f20ff6731f59250b71bc95c4c58fe52fb1818
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Feb 19 20:25:49 2009
+Date:   Fri Feb 20 02:25:49 2009 +0000
 
     2009-02-19  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2680,7 +3242,7 @@ Date:   Thu Feb 19 20:25:49 2009
 
 commit d7431fc9c8b22cac2f65317c7df44329ab5a912f
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Feb 19 20:21:55 2009
+Date:   Fri Feb 20 02:21:55 2009 +0000
 
     2009-02-19  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2692,7 +3254,7 @@ Date:   Thu Feb 19 20:21:55 2009
 
 commit 9c76cd75a24589edcf63249d65b5b670412c3182
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Feb 19 20:18:11 2009
+Date:   Fri Feb 20 02:18:11 2009 +0000
 
     2009-02-19  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2704,7 +3266,7 @@ Date:   Thu Feb 19 20:18:11 2009
 
 commit 1dacd700bfe4aef4f7acbc440b59099579bac308
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Feb 19 13:00:12 2009
+Date:   Thu Feb 19 19:00:12 2009 +0000
 
     2009-02-19  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2716,7 +3278,7 @@ Date:   Thu Feb 19 13:00:12 2009
 
 commit a17a7339518964ff719d38eb59a98b2f9c941b93
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Mon Feb 16 17:07:25 2009
+Date:   Mon Feb 16 23:07:25 2009 +0000
 
     2009-02-16  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2727,7 +3289,7 @@ Date:   Mon Feb 16 17:07:25 2009
 
 commit bfc0685985ad6ea2c6c84d7d83181a68cee206ed
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Mon Feb 16 16:39:12 2009
+Date:   Mon Feb 16 22:39:12 2009 +0000
 
     Forgot to credit Bernd in last commit
     
@@ -2735,7 +3297,7 @@ Date:   Mon Feb 16 16:39:12 2009
 
 commit c680ca61d0fb2056885d3c9fd3896fd8a968d119
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Mon Feb 16 15:48:27 2009
+Date:   Mon Feb 16 21:48:27 2009 +0000
 
     2009-02-16  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2750,7 +3312,7 @@ Date:   Mon Feb 16 15:48:27 2009
 
 commit 96664cc7e3eea268fb6ec5e9ca50842323a672c4
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Mon Feb 16 15:24:58 2009
+Date:   Mon Feb 16 21:24:58 2009 +0000
 
     2009-02-16  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2765,7 +3327,7 @@ Date:   Mon Feb 16 15:24:58 2009
 
 commit 29a97a8d909075306da240d9c96b8420afbe0ce6
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Feb 12 13:01:51 2009
+Date:   Thu Feb 12 19:01:51 2009 +0000
 
     2009-02-12  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2777,7 +3339,7 @@ Date:   Thu Feb 12 13:01:51 2009
 
 commit 17b4c1e010f3c02b140d7c95dfbf0e7fb3166df1
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Feb 12 12:46:03 2009
+Date:   Thu Feb 12 18:46:03 2009 +0000
 
     2009-02-12  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2789,7 +3351,7 @@ Date:   Thu Feb 12 12:46:03 2009
 
 commit 12b894385f4194df2f865c20d2b4483ddcaac698
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Wed Feb 11 18:54:19 2009
+Date:   Thu Feb 12 00:54:19 2009 +0000
 
     2009-02-11  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2805,7 +3367,7 @@ Date:   Wed Feb 11 18:54:19 2009
 
 commit fc1d68289f28ca1a02f884922eaa714c6e9f9bd2
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Tue Feb 10 21:53:05 2009
+Date:   Wed Feb 11 03:53:05 2009 +0000
 
     2009-02-10  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2818,7 +3380,7 @@ Date:   Tue Feb 10 21:53:05 2009
 
 commit 2af0d2725ea1d5269b46810e2d2d712944fcf8e9
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Tue Feb 10 20:54:37 2009
+Date:   Wed Feb 11 02:54:37 2009 +0000
 
     2009-02-10  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2832,7 +3394,7 @@ Date:   Tue Feb 10 20:54:37 2009
 
 commit 6a1db30cd8ca012c76e7575e9adf2e44d505e1b9
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Tue Feb 10 11:09:56 2009
+Date:   Tue Feb 10 17:09:56 2009 +0000
 
     2009-02-10  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2846,7 +3408,7 @@ Date:   Tue Feb 10 11:09:56 2009
 
 commit 11ed49d59e0f37bf1567f1dec514cd5df1fcf031
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Tue Feb 10 11:07:03 2009
+Date:   Tue Feb 10 17:07:03 2009 +0000
 
     2009-02-10  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2861,7 +3423,7 @@ Date:   Tue Feb 10 11:07:03 2009
 
 commit 98289c9e8c02faa9ef194108c4908fd0c7ae1931
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Fri Feb 6 12:02:38 2009
+Date:   Fri Feb 6 18:02:38 2009 +0000
 
     2009-02-06  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2873,7 +3435,7 @@ Date:   Fri Feb 6 12:02:38 2009
 
 commit dfa9ddd46fdcd6e486f9493e6569cfe8b9190196
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Fri Feb 6 11:54:30 2009
+Date:   Fri Feb 6 17:54:30 2009 +0000
 
     2009-02-06  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2885,7 +3447,7 @@ Date:   Fri Feb 6 11:54:30 2009
 
 commit ff43233d912b071852b1698754889f70a3087f29
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Fri Jan 23 14:27:11 2009
+Date:   Fri Jan 23 20:27:11 2009 +0000
 
     2009-01-23  Aaron Bockover  <abock@gnome.org>
     
@@ -2896,7 +3458,7 @@ Date:   Fri Jan 23 14:27:11 2009
 
 commit ddd55a94f0b8e66896e172d344386ba1da5e943a
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Jan 22 18:17:54 2009
+Date:   Fri Jan 23 00:17:54 2009 +0000
 
     2009-01-22  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2918,7 +3480,7 @@ Date:   Thu Jan 22 18:17:54 2009
 
 commit c47ade767d2b3d2a8f372b5c8974c727fad337da
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Tue Jan 20 16:32:25 2009
+Date:   Tue Jan 20 22:32:25 2009 +0000
 
     Fix tag name
     
@@ -2926,7 +3488,7 @@ Date:   Tue Jan 20 16:32:25 2009
 
 commit 0961c724b29468a9f5107b02286d3b614545442e
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Tue Jan 20 16:29:28 2009
+Date:   Tue Jan 20 22:29:28 2009 +0000
 
     Missing \
     
@@ -2934,7 +3496,7 @@ Date:   Tue Jan 20 16:29:28 2009
 
 commit 8db9530ed1873d0246acb84f561176dcca8f9ee1
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Tue Jan 20 16:27:07 2009
+Date:   Tue Jan 20 22:27:07 2009 +0000
 
     2009-01-20  Aaron Bockover  <abock@gnome.org>
     
@@ -2949,7 +3511,7 @@ Date:   Tue Jan 20 16:27:07 2009
 
 commit ff9b5afa5a3ef8b9a79edde5343faffa482d7f7c
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Tue Jan 20 15:23:25 2009
+Date:   Tue Jan 20 21:23:25 2009 +0000
 
     Update for release
     
@@ -2957,7 +3519,7 @@ Date:   Tue Jan 20 15:23:25 2009
 
 commit 7a518bd93334ec93a5414e4e0d0c14642cf76702
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Tue Jan 20 15:21:21 2009
+Date:   Tue Jan 20 21:21:21 2009 +0000
 
     SUBDIRS tests
     
@@ -2965,7 +3527,7 @@ Date:   Tue Jan 20 15:21:21 2009
 
 commit 9288a468d586e88533ebd380ba0eabe71e90a254
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Tue Jan 20 15:21:11 2009
+Date:   Tue Jan 20 21:21:11 2009 +0000
 
     Fix use of obsolete API
     
@@ -2973,7 +3535,7 @@ Date:   Tue Jan 20 15:21:11 2009
 
 commit f46fbd1bf53a1d2eeee5f6fb3604d93907c542e2
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Tue Jan 20 15:18:20 2009
+Date:   Tue Jan 20 21:18:20 2009 +0000
 
     2009-01-20  Aaron Bockover  <abock@gnome.org>
     
@@ -2986,7 +3548,7 @@ Date:   Tue Jan 20 15:18:20 2009
 
 commit e09402baf120df02b4aadbfff46d600f6699d640
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Jan 15 20:12:17 2009
+Date:   Fri Jan 16 02:12:17 2009 +0000
 
     2009-01-15  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -2998,7 +3560,7 @@ Date:   Thu Jan 15 20:12:17 2009
 
 commit ac160cc7839f31263fe8500fd693ff19b881dabb
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Jan 15 20:08:16 2009
+Date:   Fri Jan 16 02:08:16 2009 +0000
 
     2009-01-15  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -3009,7 +3571,7 @@ Date:   Thu Jan 15 20:08:16 2009
 
 commit 48f6a94a29ae04e6adc5a514c208b890106bfbd2
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Jan 15 13:06:00 2009
+Date:   Thu Jan 15 19:06:00 2009 +0000
 
     2009-01-15  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -3025,7 +3587,7 @@ Date:   Thu Jan 15 13:06:00 2009
 
 commit 21daae26e341c14c833a433f5c88533dac04f495
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Jan 15 13:01:15 2009
+Date:   Thu Jan 15 19:01:15 2009 +0000
 
     2008-01-15  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -3037,7 +3599,7 @@ Date:   Thu Jan 15 13:01:15 2009
 
 commit 721fb8fc79715c34f7a06ced460ef7e1891888d1
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Tue Jan 13 12:26:16 2009
+Date:   Tue Jan 13 18:26:16 2009 +0000
 
     2008-01-13  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -3056,7 +3618,7 @@ Date:   Tue Jan 13 12:26:16 2009
 
 commit b6ff6f306fcedb04acf01c18eb3689f50fb1bad1
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Fri Dec 19 15:24:40 2008
+Date:   Fri Dec 19 21:24:40 2008 +0000
 
     Whoops, didn't mean to revert this, got confused about what was the new patch and what was there before
     
@@ -3064,7 +3626,7 @@ Date:   Fri Dec 19 15:24:40 2008
 
 commit f1b527ed4a8da14eb73e1965a37cdb9ca9e8dfd5
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Mon Dec 15 19:41:48 2008
+Date:   Tue Dec 16 01:41:48 2008 +0000
 
     2008-12-15  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -3089,7 +3651,7 @@ Date:   Mon Dec 15 19:41:48 2008
 
 commit d043e77cd667c924d51fe5fc252d798e30d50ca5
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Dec 11 17:45:44 2008
+Date:   Thu Dec 11 23:45:44 2008 +0000
 
     2008-12-11  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -3106,7 +3668,7 @@ Date:   Thu Dec 11 17:45:44 2008
 
 commit 96541ba2588aef666d6c9a8b09def2252e5a1161
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Dec 11 17:43:56 2008
+Date:   Thu Dec 11 23:43:56 2008 +0000
 
     Actually commit Jeff's patch, already mentioned in the ChangeLog
     
@@ -3114,7 +3676,7 @@ Date:   Thu Dec 11 17:43:56 2008
 
 commit 6da96266229c1ed419d77a23d9ddc0e446a6958b
 Author: Gabriel Burt <gburt@novell.com>
-Date:   Thu Dec 11 17:24:42 2008
+Date:   Thu Dec 11 23:24:42 2008 +0000
 
     2008-12-11  Gabriel Burt  <gabriel.burt@gmail.com>
     
@@ -3130,7 +3692,7 @@ Date:   Thu Dec 11 17:24:42 2008
 
 commit ca2086339d75e17841227ae5045bd093630081bb
 Author: Rusty Howell <rhowell@mono-cvs.ximian.com>
-Date:   Wed Jul 16 20:42:11 2008
+Date:   Thu Jul 17 01:42:11 2008 +0000
 
     Fixed syntax error in xml doc strings
     
@@ -3138,7 +3700,7 @@ Date:   Wed Jul 16 20:42:11 2008
 
 commit dada5252ec43f0824226bb906a6a55c83d22cfd2
 Author: Jeffrey Stedfast <fejj@novell.com>
-Date:   Tue Jan 29 16:08:55 2008
+Date:   Tue Jan 29 22:08:55 2008 +0000
 
     2008-01-16  Jeffrey Stedfast  <fejj@novell.com>
     
@@ -3151,7 +3713,7 @@ Date:   Tue Jan 29 16:08:55 2008
 
 commit 492f1e407d1d1b6769edfabf5a20db118dff2d89
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Thu Jan 10 17:28:46 2008
+Date:   Thu Jan 10 23:28:46 2008 +0000
 
     2008-01-10  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3163,7 +3725,7 @@ Date:   Thu Jan 10 17:28:46 2008
 
 commit 0f23f4b07d569b4a447d95b29a9a693d93f96fe4
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed Jan 9 19:30:11 2008
+Date:   Thu Jan 10 01:30:11 2008 +0000
 
     2008-01-09  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3212,7 +3774,7 @@ Date:   Wed Jan 9 19:30:11 2008
 
 commit e38d5652387c1225ccdd709c982f5cb43b19a3b2
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Thu Jan 3 01:59:47 2008
+Date:   Thu Jan 3 07:59:47 2008 +0000
 
     2008-01-03  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3237,7 +3799,7 @@ Date:   Thu Jan 3 01:59:47 2008
 
 commit 44578d8d281dbe301464180fcb272d0a703463df
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed Jan 2 20:43:28 2008
+Date:   Thu Jan 3 02:43:28 2008 +0000
 
     2008-01-02  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3252,7 +3814,7 @@ Date:   Wed Jan 2 20:43:28 2008
 
 commit 5932a1adfb5a243de2d0f70f3ae4fa4cc8d9e583
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed Jan 2 19:05:18 2008
+Date:   Thu Jan 3 01:05:18 2008 +0000
 
     2008-01-02  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3331,7 +3893,7 @@ Date:   Wed Jan 2 19:05:18 2008
 
 commit 6893f5fca42ac8df165a4d7147f6b7ebf62fed8c
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue Jan 1 21:30:34 2008
+Date:   Wed Jan 2 03:30:34 2008 +0000
 
     2008-01-01  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3378,7 +3940,7 @@ Date:   Tue Jan 1 21:30:34 2008
 
 commit 7fc0f6bd46e6e34224c57a4842ca3e155e8dd4c8
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun Dec 30 03:50:36 2007
+Date:   Sun Dec 30 09:50:36 2007 +0000
 
     2007-12-30  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3415,7 +3977,7 @@ Date:   Sun Dec 30 03:50:36 2007
 
 commit 4b09fb0a7d34cb10272090e98d982dfe29d7047e
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sat Dec 29 20:50:29 2007
+Date:   Sun Dec 30 02:50:29 2007 +0000
 
     2007-12-29  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3459,7 +4021,7 @@ Date:   Sat Dec 29 20:50:29 2007
 
 commit 74de4b8edad100c3f460afac42aa36506f683347
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sat Dec 29 19:26:31 2007
+Date:   Sun Dec 30 01:26:31 2007 +0000
 
     2007-12-29  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3498,7 +4060,7 @@ Date:   Sat Dec 29 19:26:31 2007
 
 commit e93bf6fdf5d818197cfdc7518e76f2bdfea4192d
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri Dec 28 15:19:09 2007
+Date:   Fri Dec 28 21:19:09 2007 +0000
 
     2007-12-28  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3556,7 +4118,7 @@ Date:   Fri Dec 28 15:19:09 2007
 
 commit bc9aa22b56ec39127f7ff7ae9e5954d948462f42
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Thu Dec 27 01:11:19 2007
+Date:   Thu Dec 27 07:11:19 2007 +0000
 
     2007-12-27  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3634,7 +4196,7 @@ Date:   Thu Dec 27 01:11:19 2007
 
 commit 9f3974dc78e45cf027155302c8496535ea6e4feb
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue Dec 25 06:12:52 2007
+Date:   Tue Dec 25 12:12:52 2007 +0000
 
     2007-12-25  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3651,7 +4213,7 @@ Date:   Tue Dec 25 06:12:52 2007
 
 commit 250683919fee9b9dcc82825aba075215ed22df9a
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue Dec 25 04:09:22 2007
+Date:   Tue Dec 25 10:09:22 2007 +0000
 
     2007-12-25  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3739,7 +4301,7 @@ Date:   Tue Dec 25 04:09:22 2007
 
 commit 38c6838456f6ca92a292f90d2cf763914a8857f0
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue Oct 2 13:27:31 2007
+Date:   Tue Oct 2 18:27:31 2007 +0000
 
     2007-10-02  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3784,7 +4346,7 @@ Date:   Tue Oct 2 13:27:31 2007
 
 commit 900eee2508821d22f9627ef7b1ad11b8468a6d6c
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Thu Sep 20 15:54:40 2007
+Date:   Thu Sep 20 20:54:40 2007 +0000
 
     2007-09-20  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3804,7 +4366,7 @@ Date:   Thu Sep 20 15:54:40 2007
 
 commit 3d7097038b0aefac9481f4c18a7528050b4830b8
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue Sep 18 15:07:18 2007
+Date:   Tue Sep 18 20:07:18 2007 +0000
 
     2007-09-18  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3834,7 +4396,7 @@ Date:   Tue Sep 18 15:07:18 2007
 
 commit 80926fc841ac9bf4df8ff726a5c33dcc37488b39
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Sep 17 01:44:06 2007
+Date:   Mon Sep 17 06:44:06 2007 +0000
 
     2007-09-17  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3853,7 +4415,7 @@ Date:   Mon Sep 17 01:44:06 2007
 
 commit fb12bfc4ca89e46a1b3024170f3e436a4a6b28ec
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun Sep 16 17:23:22 2007
+Date:   Sun Sep 16 22:23:22 2007 +0000
 
     2007-09-16  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3868,7 +4430,7 @@ Date:   Sun Sep 16 17:23:22 2007
 
 commit c172f173c6f06518c7323c14d43bd273b58e1392
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed Sep 5 19:25:26 2007
+Date:   Thu Sep 6 00:25:26 2007 +0000
 
     2007-09-05  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3891,7 +4453,7 @@ Date:   Wed Sep 5 19:25:26 2007
 
 commit 7073f245a80d975f37c51d0d21b3f5da68dd6057
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue Sep 4 02:17:55 2007
+Date:   Tue Sep 4 07:17:55 2007 +0000
 
     2007-09-04  Brian Nickel <brian.nickel@gmail.com>
     
@@ -3983,7 +4545,7 @@ Date:   Tue Sep 4 02:17:55 2007
 
 commit 4721677e816f851bc30009cd35145ad4c3610c9a
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Sep 3 15:57:36 2007
+Date:   Mon Sep 3 20:57:36 2007 +0000
 
     2007-09-03  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4013,7 +4575,7 @@ Date:   Mon Sep 3 15:57:36 2007
 
 commit e99b1e6e4727bfe7babe83c31a0a21686e356d22
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri Aug 31 12:05:20 2007
+Date:   Fri Aug 31 17:05:20 2007 +0000
 
     2007-08-31  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4055,7 +4617,7 @@ Date:   Fri Aug 31 12:05:20 2007
 
 commit aa88901e9133c8632e00673af9f1d784ea41fdb0
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue Aug 28 19:36:24 2007
+Date:   Wed Aug 29 00:36:24 2007 +0000
 
     2007-08-28  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4102,7 +4664,7 @@ Date:   Tue Aug 28 19:36:24 2007
 
 commit 51805c32c8855c0c1d1b8f2feaba2d96cc066b24
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri Aug 24 19:19:12 2007
+Date:   Sat Aug 25 00:19:12 2007 +0000
 
     2007-08-24  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4144,7 +4706,7 @@ Date:   Fri Aug 24 19:19:12 2007
 
 commit dec5cc67b4341608e15eb276a5c42c27c9277f15
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Aug 20 02:08:28 2007
+Date:   Mon Aug 20 07:08:28 2007 +0000
 
     2007-08-19  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4163,7 +4725,7 @@ Date:   Mon Aug 20 02:08:28 2007
 
 commit 858f6cfd4adbf14589d3e125b65b61196160a47e
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Aug 20 00:40:31 2007
+Date:   Mon Aug 20 05:40:31 2007 +0000
 
     2007-08-19  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4197,7 +4759,7 @@ Date:   Mon Aug 20 00:40:31 2007
 
 commit 9bc89ce4e9eee861e891e30621b3e74f6f9d85f5
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun Aug 19 14:07:59 2007
+Date:   Sun Aug 19 19:07:59 2007 +0000
 
     2007-08-19  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4212,7 +4774,7 @@ Date:   Sun Aug 19 14:07:59 2007
 
 commit 72482ecc56ce43af5ec646017224da66006a30bb
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri Aug 17 18:37:31 2007
+Date:   Fri Aug 17 23:37:31 2007 +0000
 
     2007-08-17  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4255,7 +4817,7 @@ Date:   Fri Aug 17 18:37:31 2007
 
 commit e924fe536ed5c029be3103f25fd0434ed9282635
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Thu Aug 16 16:28:34 2007
+Date:   Thu Aug 16 21:28:34 2007 +0000
 
     2007-08-16  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4269,7 +4831,7 @@ Date:   Thu Aug 16 16:28:34 2007
 
 commit a2bb91062fccaf01b72f333aa5317b1291b233b2
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue Aug 14 16:50:47 2007
+Date:   Tue Aug 14 21:50:47 2007 +0000
 
     2007-08-14  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4293,7 +4855,7 @@ Date:   Tue Aug 14 16:50:47 2007
 
 commit 39f560e77794ae82c5662b9be3efec137793e1a1
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun Aug 12 21:54:49 2007
+Date:   Mon Aug 13 02:54:49 2007 +0000
 
     2007-08-12  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4316,7 +4878,7 @@ Date:   Sun Aug 12 21:54:49 2007
 
 commit b73f68526f3f4b6387b2374a5859d0ab08f284e3
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun Aug 12 21:03:16 2007
+Date:   Mon Aug 13 02:03:16 2007 +0000
 
     2007-08-12  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4352,7 +4914,7 @@ Date:   Sun Aug 12 21:03:16 2007
 
 commit 2a9900eb9e53f4981e69d7539ad9676e97337ecd
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Thu Aug 2 14:11:17 2007
+Date:   Thu Aug 2 19:11:17 2007 +0000
 
     2007-08-02  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4372,7 +4934,7 @@ Date:   Thu Aug 2 14:11:17 2007
 
 commit 10e4154a026075bd5d71bd037f420a29632fad42
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun Jul 29 19:13:12 2007
+Date:   Mon Jul 30 00:13:12 2007 +0000
 
     2007-07-29  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4403,7 +4965,7 @@ Date:   Sun Jul 29 19:13:12 2007
 
 commit a97b7b6cb35ddf46e50ecd2f9b780ef884cb79f7
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun Jul 22 22:10:16 2007
+Date:   Mon Jul 23 03:10:16 2007 +0000
 
     2007-07-22  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4434,7 +4996,7 @@ Date:   Sun Jul 22 22:10:16 2007
 
 commit 0e14c9adc24e5ac99750969221919deb9bf8e3c5
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue Jul 3 16:55:49 2007
+Date:   Tue Jul 3 21:55:49 2007 +0000
 
     2007-07-03  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4466,7 +5028,7 @@ Date:   Tue Jul 3 16:55:49 2007
 
 commit 79cfd2193845680ba33239ed8caebcc557baadc4
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed Jun 27 14:24:22 2007
+Date:   Wed Jun 27 19:24:22 2007 +0000
 
     2007-06-27  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4502,7 +5064,7 @@ Date:   Wed Jun 27 14:24:22 2007
 
 commit d64cabf8b151ede0344b16993c3193bdf4a03faa
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue Jun 26 17:18:51 2007
+Date:   Tue Jun 26 22:18:51 2007 +0000
 
     2007-06-26  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4529,7 +5091,7 @@ Date:   Tue Jun 26 17:18:51 2007
 
 commit 57a64ea15651bdff2590e848019b5a5756ee620a
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue Jun 26 15:03:02 2007
+Date:   Tue Jun 26 20:03:02 2007 +0000
 
     2007-06-26  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4558,7 +5120,7 @@ Date:   Tue Jun 26 15:03:02 2007
 
 commit 3d8229605f78912b8bc388caead7477d10a79075
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Jun 25 04:14:11 2007
+Date:   Mon Jun 25 09:14:11 2007 +0000
 
     2007-06-25  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4572,7 +5134,7 @@ Date:   Mon Jun 25 04:14:11 2007
 
 commit 47b75955913dfaf484f41a67cc5e4e884c6acd23
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Jun 25 00:00:24 2007
+Date:   Mon Jun 25 05:00:24 2007 +0000
 
     2007-06-24  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4593,7 +5155,7 @@ Date:   Mon Jun 25 00:00:24 2007
 
 commit 9a88cb7cb9b4eae8420bdd20027d897b2d9e0a33
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun Jun 24 13:25:16 2007
+Date:   Sun Jun 24 18:25:16 2007 +0000
 
     2007-06-24  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4605,7 +5167,7 @@ Date:   Sun Jun 24 13:25:16 2007
 
 commit 6d4d454d1c8b261e5727f76ef8ccdb5c2f63b194
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun Jun 24 13:09:19 2007
+Date:   Sun Jun 24 18:09:19 2007 +0000
 
     2007-06-24  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4617,7 +5179,7 @@ Date:   Sun Jun 24 13:09:19 2007
 
 commit 9822af3a64b57f64c4371657a27a7d9aac65182d
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri Jun 22 13:55:23 2007
+Date:   Fri Jun 22 18:55:23 2007 +0000
 
     2007-06-22  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4628,7 +5190,7 @@ Date:   Fri Jun 22 13:55:23 2007
 
 commit c93afd260939a6fd9616e7ba22a186c0e13e3514
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed Jun 20 16:12:06 2007
+Date:   Wed Jun 20 21:12:06 2007 +0000
 
     2007-06-20  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4645,7 +5207,7 @@ Date:   Wed Jun 20 16:12:06 2007
 
 commit aebd6b8ec644a70946a1d880ffc2cd16f0752004
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed Jun 20 15:49:35 2007
+Date:   Wed Jun 20 20:49:35 2007 +0000
 
     2007-06-20  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4671,7 +5233,7 @@ Date:   Wed Jun 20 15:49:35 2007
 
 commit 0825a9eff914087b1140c62510af9d5e52233ad6
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed Jun 20 13:53:22 2007
+Date:   Wed Jun 20 18:53:22 2007 +0000
 
     2007-06-20  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4696,7 +5258,7 @@ Date:   Wed Jun 20 13:53:22 2007
 
 commit 53d5e285be01c51179b2efdd3043c096d5b7aa12
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue Jun 12 22:06:22 2007
+Date:   Wed Jun 13 03:06:22 2007 +0000
 
     2007-06-12  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4720,7 +5282,7 @@ Date:   Tue Jun 12 22:06:22 2007
 
 commit ade972de4e7356cdc8cf795f7ba53e50362cc556
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Jun 11 11:25:26 2007
+Date:   Mon Jun 11 16:25:26 2007 +0000
 
     2007-06-11  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4733,7 +5295,7 @@ Date:   Mon Jun 11 11:25:26 2007
 
 commit c0ddc28818c88bf1233c08f5b3eec7636b457fcb
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun Jun 10 23:17:48 2007
+Date:   Mon Jun 11 04:17:48 2007 +0000
 
     This one got away.
     
@@ -4741,7 +5303,7 @@ Date:   Sun Jun 10 23:17:48 2007
 
 commit 2d1b94fdcae2bb96ae99b8d92ede76785be36a16
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun Jun 10 23:16:26 2007
+Date:   Mon Jun 11 04:16:26 2007 +0000
 
     2007-06-10  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4801,7 +5363,7 @@ Date:   Sun Jun 10 23:16:26 2007
 
 commit 431bae630b26d16cf932513a1ecb6363c13ee3d8
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun Jun 10 23:03:03 2007
+Date:   Mon Jun 11 04:03:03 2007 +0000
 
     2007-06-10  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4811,7 +5373,7 @@ Date:   Sun Jun 10 23:03:03 2007
 
 commit c64d9fe099276baf58844658bf55b24cf00d39a9
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Thu Jun 7 16:35:01 2007
+Date:   Thu Jun 7 21:35:01 2007 +0000
 
     2007-06-07  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4907,7 +5469,7 @@ Date:   Thu Jun 7 16:35:01 2007
 
 commit 781f167791ed0fcb5ebae418ca57b1721b66a847
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Jun 4 13:12:47 2007
+Date:   Mon Jun 4 18:12:47 2007 +0000
 
     2007-06-04  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4918,7 +5480,7 @@ Date:   Mon Jun 4 13:12:47 2007
 
 commit f912417fdc8ba070b5ab92bf17e7432cf3140fd9
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri Jun 1 19:32:07 2007
+Date:   Sat Jun 2 00:32:07 2007 +0000
 
     2007-06-01  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4944,7 +5506,7 @@ Date:   Fri Jun 1 19:32:07 2007
 
 commit 080958d362c0a7da9fe1dea205f7d38a5e87bf34
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed May 30 23:38:18 2007
+Date:   Thu May 31 04:38:18 2007 +0000
 
     2007-05-30  Brian Nickel <brian.nickel@gmail.com>
     
@@ -4969,7 +5531,7 @@ Date:   Wed May 30 23:38:18 2007
 commit 0f13f9425a1cbb030e8bdf295fe4c580adb71eee
 Merge: 9bb2e24 ca311e4
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed May 30 18:47:16 2007
+Date:   Wed May 30 23:47:16 2007 +0000
 
     2007-05-30  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5233,7 +5795,7 @@ Date:   Wed May 30 18:47:16 2007
 
 commit 9bb2e24e3d665c8bb5e258104148765603f650fd
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri May 25 15:20:09 2007
+Date:   Fri May 25 20:20:09 2007 +0000
 
     2007-05-25  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5262,7 +5824,7 @@ Date:   Fri May 25 15:20:09 2007
 
 commit 0a1d5a196b71588470cc829bd8d91ceae7b35c63
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri May 25 06:03:46 2007
+Date:   Fri May 25 11:03:46 2007 +0000
 
     2007-05-25  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5333,7 +5895,7 @@ Date:   Fri May 25 06:03:46 2007
 
 commit ac6636ace1213b12802e5e72f1ccf16024712c11
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue May 22 18:54:32 2007
+Date:   Tue May 22 23:54:32 2007 +0000
 
     2007-05-22  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5409,7 +5971,7 @@ Date:   Tue May 22 18:54:32 2007
 
 commit ca311e4c9a676b7e8169eb9f831acfe2eff3ef05
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun May 20 05:38:01 2007
+Date:   Sun May 20 10:38:01 2007 +0000
 
     2007-05-20  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5477,7 +6039,7 @@ Date:   Sun May 20 05:38:01 2007
 
 commit 8006975cc50d25c3e256d64b9778c6eb76840231
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sat May 19 01:39:32 2007
+Date:   Sat May 19 06:39:32 2007 +0000
 
     2007-05-18  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5517,7 +6079,7 @@ Date:   Sat May 19 01:39:32 2007
 
 commit 211aa93107e3e49839e40f49a648a696e922107b
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri May 18 16:52:18 2007
+Date:   Fri May 18 21:52:18 2007 +0000
 
     2007-05-18  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5551,7 +6113,7 @@ Date:   Fri May 18 16:52:18 2007
 
 commit 1801717875bb1f8ac8610324224c0c8a121085cb
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Tue May 15 19:28:35 2007
+Date:   Wed May 16 00:28:35 2007 +0000
 
     Fix filename spelling error
     
@@ -5559,7 +6121,7 @@ Date:   Tue May 15 19:28:35 2007
 
 commit e3e4085b2579a64f68112bc86c125307151cd7c3
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue May 15 16:19:18 2007
+Date:   Tue May 15 21:19:18 2007 +0000
 
     2007-05-15  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5578,7 +6140,7 @@ Date:   Tue May 15 16:19:18 2007
 
 commit f8bd361bf79fc32e15fb624881e909121ffd96e0
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue May 15 02:46:59 2007
+Date:   Tue May 15 07:46:59 2007 +0000
 
     2007-05-15  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5598,7 +6160,7 @@ Date:   Tue May 15 02:46:59 2007
 
 commit 1621bd2f4bcb7886eea116cfeb273b7ae7c3cd8b
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue May 15 00:50:19 2007
+Date:   Tue May 15 05:50:19 2007 +0000
 
     2007-05-14  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5609,7 +6171,7 @@ Date:   Tue May 15 00:50:19 2007
 
 commit 11d59b0b728dcbc78088cebc0808582bc2f133d2
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue May 15 00:25:31 2007
+Date:   Tue May 15 05:25:31 2007 +0000
 
     2007-05-14  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5632,7 +6194,7 @@ Date:   Tue May 15 00:25:31 2007
 
 commit 1c35339ce18bfe692bd084957935d727456ccfd2
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Thu May 10 16:51:32 2007
+Date:   Thu May 10 21:51:32 2007 +0000
 
     2007-05-10  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5648,7 +6210,7 @@ Date:   Thu May 10 16:51:32 2007
 
 commit 8231c1b7d8f99e3b19ff8ecd820f5ad9e8668b19
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed May 9 22:21:15 2007
+Date:   Thu May 10 03:21:15 2007 +0000
 
     2007-05-09  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5668,7 +6230,7 @@ Date:   Wed May 9 22:21:15 2007
 
 commit dec6901184e786c5e50fb1f350cce4eedfee404c
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed May 9 12:58:56 2007
+Date:   Wed May 9 17:58:56 2007 +0000
 
     2007-05-09  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5685,7 +6247,7 @@ Date:   Wed May 9 12:58:56 2007
 
 commit eb8e3555c05797ad4330e7e348cff509f941ca8f
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Tue May 8 13:17:50 2007
+Date:   Tue May 8 18:17:50 2007 +0000
 
     Removed
     
@@ -5693,7 +6255,7 @@ Date:   Tue May 8 13:17:50 2007
 
 commit 22ef266a4a8fc1d98e54da8be504cb89afaf68c0
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Tue May 8 13:16:30 2007
+Date:   Tue May 8 18:16:30 2007 +0000
 
     2007-05-07  Aaron Bockover  <abockover@novell.com>
     
@@ -5710,7 +6272,7 @@ Date:   Tue May 8 13:16:30 2007
 
 commit dfe9c553fe1bb09b1410b9b30c595e8c33fb3a5b
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon May 7 04:11:30 2007
+Date:   Mon May 7 09:11:30 2007 +0000
 
     2007-05-07  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5728,7 +6290,7 @@ Date:   Mon May 7 04:11:30 2007
 
 commit 5d72c831f294e17dfd10747dca4380b97ce4a562
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun May 6 22:25:10 2007
+Date:   Mon May 7 03:25:10 2007 +0000
 
     2007-05-04  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5747,7 +6309,7 @@ Date:   Sun May 6 22:25:10 2007
 
 commit 35595c85aac187b4fd0e3663d4ad4e6316fb0059
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri May 4 04:28:34 2007
+Date:   Fri May 4 09:28:34 2007 +0000
 
     2007-05-04  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5788,7 +6350,7 @@ Date:   Fri May 4 04:28:34 2007
 commit efa333489ab79f3ca9d5057fdafde428c97d7c5e
 Merge: ef7278e 50c43d0
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Thu May 3 14:16:40 2007
+Date:   Thu May 3 19:16:40 2007 +0000
 
     2007-05-03  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5843,7 +6405,7 @@ Date:   Thu May 3 14:16:40 2007
 
 commit ef7278e7ac8544619e423fa14cea88ebe8eb3f6e
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Thu Apr 26 04:41:21 2007
+Date:   Thu Apr 26 09:41:21 2007 +0000
 
     2007-04-26  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5854,7 +6416,7 @@ Date:   Thu Apr 26 04:41:21 2007
 
 commit f965e2da293e9d5b756aed6bbe798f6bd4f39fab
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Thu Apr 26 04:34:56 2007
+Date:   Thu Apr 26 09:34:56 2007 +0000
 
     Removing docs temporarily.
     
@@ -5863,7 +6425,7 @@ Date:   Thu Apr 26 04:34:56 2007
 
 commit b5eca1f4a46f1a198e7108d14b998413f6228c1d
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed Apr 25 18:25:33 2007
+Date:   Wed Apr 25 23:25:33 2007 +0000
 
     2007-04-25  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5880,7 +6442,7 @@ Date:   Wed Apr 25 18:25:33 2007
 
 commit 50c43d0fc876694dfc582d3e8b835d6fe7e088b4
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue Apr 24 01:54:01 2007
+Date:   Tue Apr 24 06:54:01 2007 +0000
 
     2007-04-23  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5916,7 +6478,7 @@ Date:   Tue Apr 24 01:54:01 2007
 commit 1a6210a60dbf350488095ea0a234ba9ee808e133
 Merge: 545c1a4 e89151f
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue Apr 17 20:57:51 2007
+Date:   Wed Apr 18 01:57:51 2007 +0000
 
     2007-04-17  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5942,7 +6504,7 @@ Date:   Tue Apr 17 20:57:51 2007
 
 commit 545c1a48a735d8baf7650e6bc92a469d988aef55
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun Apr 15 21:16:12 2007
+Date:   Mon Apr 16 02:16:12 2007 +0000
 
     2007-04-15  Brian Nickel <brian.nickel@gmail.com>
     
@@ -5974,7 +6536,7 @@ Date:   Sun Apr 15 21:16:12 2007
 
 commit 7f1c6a59af367729df95412be794af386878db94
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun Apr 15 15:57:03 2007
+Date:   Sun Apr 15 20:57:03 2007 +0000
 
     2007-04-15  Brian Nickel <brian.nickel@gmail.com>
     
@@ -6018,7 +6580,7 @@ Date:   Sun Apr 15 15:57:03 2007
 
 commit e89151f9fab8c2b1d1f2160c708319025dc91757
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Apr 9 18:11:58 2007
+Date:   Mon Apr 9 23:11:58 2007 +0000
 
     2007-04-09  Brian Nickel <brian.nickel@gmail.com>
     
@@ -6032,7 +6594,7 @@ Date:   Mon Apr 9 18:11:58 2007
 commit 6728903ef66fa53592b1cb9f993fd97cc66217a6
 Merge: 4183fba e7de1a7
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri Apr 6 04:54:26 2007
+Date:   Fri Apr 6 09:54:26 2007 +0000
 
     2007-04-06  Brian Nickel <brian.nickel@gmail.com>
     
@@ -6088,7 +6650,7 @@ Date:   Fri Apr 6 04:54:26 2007
 
 commit 4183fbac47082a49488a4d24369525b27c631fb9
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri Mar 23 16:56:30 2007
+Date:   Fri Mar 23 21:56:30 2007 +0000
 
     2007-03-23  Brian Nickel <brian.nickel@gmail.com>
     
@@ -6112,7 +6674,7 @@ Date:   Fri Mar 23 16:56:30 2007
 
 commit 2fa8af7af3c6de35cb9e1ce913bbf326bdaecedb
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Thu Mar 22 19:12:55 2007
+Date:   Fri Mar 23 00:12:55 2007 +0000
 
     2007-03-22  Brian Nickel <brian.nickel@gmail.com>
     
@@ -6128,7 +6690,7 @@ Date:   Thu Mar 22 19:12:55 2007
 
 commit a19253ce77d06f7a4681faf5cefa16d6b7b02e45
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed Mar 14 16:23:42 2007
+Date:   Wed Mar 14 21:23:42 2007 +0000
 
     2007-03-14  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6139,7 +6701,7 @@ Date:   Wed Mar 14 16:23:42 2007
 
 commit e7de1a714ef4336295c85bb0ca0e73b96c4a6b47
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed Mar 14 02:15:31 2007
+Date:   Wed Mar 14 07:15:31 2007 +0000
 
     2007-03-13  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6172,7 +6734,7 @@ Date:   Wed Mar 14 02:15:31 2007
 commit f294436840eb53c3d2b28b7d62373af83cba478b
 Merge: 720db6c 50d6746
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Tue Mar 13 21:13:29 2007
+Date:   Wed Mar 14 02:13:29 2007 +0000
 
     2007-03-13  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6228,7 +6790,7 @@ Date:   Tue Mar 13 21:13:29 2007
 
 commit 720db6c2ce8a78239a0bb0733d8506106ba3b097
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri Mar 9 12:13:38 2007
+Date:   Fri Mar 9 18:13:38 2007 +0000
 
     2007-03-09  Brian Nickel  <brian.nickel@gmail.com>
     	* configure.ac: Fixed version information.
@@ -6237,7 +6799,7 @@ Date:   Fri Mar 9 12:13:38 2007
 
 commit 5e0401e40accf5da245ce7f8359f2ad05b00016b
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri Mar 9 05:29:53 2007
+Date:   Fri Mar 9 11:29:53 2007 +0000
 
     2007-03-09  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6263,7 +6825,7 @@ Date:   Fri Mar 9 05:29:53 2007
 
 commit 50d67469ce05d4ce7d17fce881439cc02508f0e8
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Thu Mar 8 19:54:47 2007
+Date:   Fri Mar 9 01:54:47 2007 +0000
 
     2007-03-08  Brian Nickel  <brian.nickel@gmail.com>
     	* src/TagLib/Mpc/File.cs: Inherit NonContainer.File
@@ -6300,7 +6862,7 @@ Date:   Thu Mar 8 19:54:47 2007
 
 commit 638a8773ef6babb4207fc17129b95da3c27d9c89
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun Mar 4 18:59:31 2007
+Date:   Mon Mar 5 00:59:31 2007 +0000
 
     2007-03-04  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6329,7 +6891,7 @@ Date:   Sun Mar 4 18:59:31 2007
 
 commit 7edb701b614ced81d2cee17180197efb2e88c32c
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed Feb 21 14:17:39 2007
+Date:   Wed Feb 21 20:17:39 2007 +0000
 
     2007-02-12  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6346,7 +6908,7 @@ Date:   Wed Feb 21 14:17:39 2007
 
 commit 815bd6d7ac68b1629fd0be0b86194205fe2ef1cb
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Feb 12 21:56:10 2007
+Date:   Tue Feb 13 03:56:10 2007 +0000
 
     2007-02-12  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6357,7 +6919,7 @@ Date:   Mon Feb 12 21:56:10 2007
 
 commit 8756a473fa6c667fc55bfdf56b9eacab54c39b99
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Feb 12 14:07:50 2007
+Date:   Mon Feb 12 20:07:50 2007 +0000
 
     2007-02-12  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6379,7 +6941,7 @@ Date:   Mon Feb 12 14:07:50 2007
 
 commit 3d0a431324e1913d77e79835a120b7f35b7b2b18
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun Feb 11 19:10:41 2007
+Date:   Mon Feb 12 01:10:41 2007 +0000
 
     2007-02-10  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6404,7 +6966,7 @@ Date:   Sun Feb 11 19:10:41 2007
 
 commit 316a7c6ca649172d5c4056462b57b0de5f0ddb0e
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sat Feb 10 13:09:52 2007
+Date:   Sat Feb 10 19:09:52 2007 +0000
 
     2007-02-10  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6420,7 +6982,7 @@ Date:   Sat Feb 10 13:09:52 2007
 
 commit 46b8662f783314ca5821473484137f04eb93c6cc
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Jan 29 13:41:33 2007
+Date:   Mon Jan 29 19:41:33 2007 +0000
 
     2007-01-29  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6430,7 +6992,7 @@ Date:   Mon Jan 29 13:41:33 2007
 
 commit 745e88d2b9f894d23ef22f285fafe10c285c9f42
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sat Jan 27 00:11:01 2007
+Date:   Sat Jan 27 06:11:01 2007 +0000
 
     2007-01-26  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6495,7 +7057,7 @@ Date:   Sat Jan 27 00:11:01 2007
 
 commit 3d6a2ae571c6d109d0e9ee1815cb5adddac694c6
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Jan 8 00:10:51 2007
+Date:   Mon Jan 8 06:10:51 2007 +0000
 
     2007-01-07  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6519,7 +7081,7 @@ Date:   Mon Jan 8 00:10:51 2007
 
 commit ec64c4c5a5d703015c47f374e8fa07de824ca1ab
 Author: Miguel de Icaza <miguel@gnome.org>
-Date:   Sun Dec 31 15:21:07 2006
+Date:   Sun Dec 31 21:21:07 2006 +0000
 
     Ran through the Monodoc updater, and exclude compiler generated types
     
@@ -6527,7 +7089,7 @@ Date:   Sun Dec 31 15:21:07 2006
 
 commit 40e8172b550e081a5279855a26a3caa8a6d88f06
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Tue Dec 26 17:28:45 2006
+Date:   Tue Dec 26 23:28:45 2006 +0000
 
     2006-12-26  Aaron Bockover  <abockover@novell.com>
     
@@ -6550,7 +7112,7 @@ Date:   Tue Dec 26 17:28:45 2006
 
 commit 47a28d7d84a4a070ff8f52a66de345927d5de489
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri Dec 15 10:51:10 2006
+Date:   Fri Dec 15 16:51:10 2006 +0000
 
     2006-12-15  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6562,7 +7124,7 @@ Date:   Fri Dec 15 10:51:10 2006
 
 commit 37f793eeeec12ac5c8f75bcd370bac0a7a1e9804
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Thu Dec 14 14:44:42 2006
+Date:   Thu Dec 14 20:44:42 2006 +0000
 
     2006-12-14  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6574,7 +7136,7 @@ Date:   Thu Dec 14 14:44:42 2006
 
 commit b684f5efafcc62372b175ff517d50c278ca9dbe1
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Mon Nov 13 23:04:04 2006
+Date:   Tue Nov 14 05:04:04 2006 +0000
 
     2006-11-13  Aaron Bockover  <abock@gnome.org>
     
@@ -6592,7 +7154,7 @@ Date:   Mon Nov 13 23:04:04 2006
 
 commit b4024f8550657e7dffbac1b9a736b7b76c086228
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Nov 6 14:15:19 2006
+Date:   Mon Nov 6 20:15:19 2006 +0000
 
     2006-11-06  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6627,7 +7189,7 @@ Date:   Mon Nov 6 14:15:19 2006
 
 commit 34d49ce11c840b8b90abcd73b424943b17e47baa
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri Nov 3 18:21:47 2006
+Date:   Sat Nov 4 00:21:47 2006 +0000
 
     2006-11-03  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6639,7 +7201,7 @@ Date:   Fri Nov 3 18:21:47 2006
 
 commit 503227407e544c3d58c5ffb4afa88ad73f026fbe
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Mon Oct 30 20:17:59 2006
+Date:   Tue Oct 31 02:17:59 2006 +0000
 
     2006-10-30  Aaron Bockover  <abock@gnome.org>
     
@@ -6660,7 +7222,7 @@ Date:   Mon Oct 30 20:17:59 2006
 
 commit 342ba48b943df40d1fdbacb6f0e9388cb0d33e8e
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Oct 30 18:04:23 2006
+Date:   Tue Oct 31 00:04:23 2006 +0000
 
     2006-10-20  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6675,7 +7237,7 @@ Date:   Mon Oct 30 18:04:23 2006
 
 commit 63599534be2ed6e644bea1706c887c660e19a718
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Sun Oct 29 14:33:01 2006
+Date:   Sun Oct 29 20:33:01 2006 +0000
 
     Updated
     
@@ -6683,7 +7245,7 @@ Date:   Sun Oct 29 14:33:01 2006
 
 commit 764ea91e974856e2c8661019df9ee7ed7c8695d2
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Sun Oct 29 14:31:02 2006
+Date:   Sun Oct 29 20:31:02 2006 +0000
 
     2006-10-29  Aaron Bockover  <abock@gnome.org>
     
@@ -6694,7 +7256,7 @@ Date:   Sun Oct 29 14:31:02 2006
 
 commit fb2068e7b1366a1bd18fb47ed2ec8535a5f79b6d
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Sun Oct 29 14:13:34 2006
+Date:   Sun Oct 29 20:13:34 2006 +0000
 
     Updated header
     
@@ -6702,7 +7264,7 @@ Date:   Sun Oct 29 14:13:34 2006
 
 commit 64de9fb6c4ad4d1603d6ae357e69e59a1e5c79d7
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Sun Oct 29 10:52:30 2006
+Date:   Sun Oct 29 16:52:30 2006 +0000
 
     2006-10-29  Aaron Bockover  <abock@gnome.org>
     
@@ -6719,7 +7281,7 @@ Date:   Sun Oct 29 10:52:30 2006
 
 commit 63e440b62f8d11a35d2323de13c563793869828b
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Sun Oct 29 10:46:18 2006
+Date:   Sun Oct 29 16:46:18 2006 +0000
 
     2006-10-29  Aaron Bockover  <abock@gnome.org>
     
@@ -6757,7 +7319,7 @@ Date:   Sun Oct 29 10:46:18 2006
 
 commit a387cfa83f5b0122408d9e77df076c5712d333b1
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri Oct 20 17:08:05 2006
+Date:   Fri Oct 20 22:08:05 2006 +0000
 
     2006-10-20  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6772,7 +7334,7 @@ Date:   Fri Oct 20 17:08:05 2006
 
 commit 7c65b1e3359c80ae3e00f165a9457c7fa3725b42
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Thu Oct 12 14:45:23 2006
+Date:   Thu Oct 12 19:45:23 2006 +0000
 
     2006-10-12  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6789,7 +7351,7 @@ Date:   Thu Oct 12 14:45:23 2006
 
 commit 4968b78314405e4b878faf0a9d5b47a771714e48
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Sun Oct 8 11:32:19 2006
+Date:   Sun Oct 8 16:32:19 2006 +0000
 
     Marked as static, whoops
     
@@ -6797,7 +7359,7 @@ Date:   Sun Oct 8 11:32:19 2006
 
 commit 026beee347579dc34c26e516125f96ff052e01f5
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Sun Oct 8 11:31:27 2006
+Date:   Sun Oct 8 16:31:27 2006 +0000
 
     Marked as static, whoops
     
@@ -6805,7 +7367,7 @@ Date:   Sun Oct 8 11:31:27 2006
 
 commit 127da072a6b41f50bb93fdddbbab6ba20bd1c4fa
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Sun Oct 8 11:30:59 2006
+Date:   Sun Oct 8 16:30:59 2006 +0000
 
     Marked as static, whoops
     
@@ -6813,7 +7375,7 @@ Date:   Sun Oct 8 11:30:59 2006
 
 commit 7f2a0783af2cbec5e268214e61ee64c59734da68
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Sun Oct 8 11:12:14 2006
+Date:   Sun Oct 8 16:12:14 2006 +0000
 
     2006-10-08  Aaron Bockover  <abock@gnome.org>
     
@@ -6824,7 +7386,7 @@ Date:   Sun Oct 8 11:12:14 2006
 
 commit 6b20faff04a2c0689dc5ac4c7b0b2c8bcc46f263
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Sun Oct 8 10:54:08 2006
+Date:   Sun Oct 8 15:54:08 2006 +0000
 
     2006-10-08  Aaron Bockover  <abock@gnome.org>
     
@@ -6835,7 +7397,7 @@ Date:   Sun Oct 8 10:54:08 2006
 
 commit 987e2f6423e6299e3f99a7ba2385f7d7889faec5
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Sep 25 14:38:15 2006
+Date:   Mon Sep 25 19:38:15 2006 +0000
 
     2006-09-25  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6847,7 +7409,7 @@ Date:   Mon Sep 25 14:38:15 2006
 
 commit 38c1059d8556f642d33c5f90726b6d062a4efdaf
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed Sep 20 14:49:25 2006
+Date:   Wed Sep 20 19:49:25 2006 +0000
 
     2006-09-20  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6859,7 +7421,7 @@ Date:   Wed Sep 20 14:49:25 2006
 
 commit 32df28a7eb4dd136b60ec5f1e0289eca88a9bde8
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Wed Sep 20 14:23:29 2006
+Date:   Wed Sep 20 19:23:29 2006 +0000
 
     2006-09-20  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6871,7 +7433,7 @@ Date:   Wed Sep 20 14:23:29 2006
 
 commit dfc58a4e6b53aca6e7b4c6b000f53703bf9d10e4
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Sun Sep 17 18:51:09 2006
+Date:   Sun Sep 17 23:51:09 2006 +0000
 
     2006-09-17  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6883,7 +7445,7 @@ Date:   Sun Sep 17 18:51:09 2006
 
 commit 41b7226a730f12a5852ca0507ab4e7dcff1fcc23
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Fri Sep 15 04:15:08 2006
+Date:   Fri Sep 15 09:15:08 2006 +0000
 
     2006-09-15  Brian Nickel  <brian.nickel@gmail.com>
     	* src/TagLib/Picture.cs:
@@ -6916,7 +7478,7 @@ Date:   Fri Sep 15 04:15:08 2006
 
 commit 958b10a1f238c8dc931f236a708178d5eb9b3e34
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Sep 11 17:45:30 2006
+Date:   Mon Sep 11 22:45:30 2006 +0000
 
     2006-09-11  Brian Nickel  <brian.nickel@gmail.com>
     
@@ -6927,7 +7489,7 @@ Date:   Mon Sep 11 17:45:30 2006
 
 commit eb2bb5eb1d9a79c3e8939509b854bac2fb9ebc9e
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Fri Sep 1 22:27:10 2006
+Date:   Sat Sep 2 03:27:10 2006 +0000
 
     2006-09-01  Aaron Bockover  <abockover@novell.com>
     
@@ -6938,7 +7500,7 @@ Date:   Fri Sep 1 22:27:10 2006
 
 commit f4b2d423ddd4a78e991606b7d557003fb9df7fa7
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Fri Sep 1 22:25:24 2006
+Date:   Sat Sep 2 03:25:24 2006 +0000
 
     2006-09-01  Aaron Bockover  <abockover@novell.com>
     
@@ -6949,7 +7511,7 @@ Date:   Fri Sep 1 22:25:24 2006
 
 commit f61e41ec8ef34c86017b2a51acdde203769c3cc3
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Fri Sep 1 12:56:56 2006
+Date:   Fri Sep 1 17:56:56 2006 +0000
 
     2006-09-01  Aaron Bockover  <abockover@novell.com>
     
@@ -6967,7 +7529,7 @@ Date:   Fri Sep 1 12:56:56 2006
 
 commit e1eba14cc33103bbe9e7a2710355b3a02ab3b3a7
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Thu Aug 31 17:22:26 2006
+Date:   Thu Aug 31 22:22:26 2006 +0000
 
     Corrected an invalid frame conversion and attempting a better method for
     populating ByteVectors.
@@ -6977,7 +7539,7 @@ Date:   Thu Aug 31 17:22:26 2006
 
 commit 9126fb7e24dabaabdf2b86bdb8a8d0ba50b75594
 Author: Brian Nickel <bnickel@mono-cvs.ximian.com>
-Date:   Mon Aug 28 21:48:25 2006
+Date:   Tue Aug 29 02:48:25 2006 +0000
 
     Fixed up the reading of WM/PartOfSet to avoid crashes.
     
@@ -6985,7 +7547,7 @@ Date:   Mon Aug 28 21:48:25 2006
 
 commit cc7f29b882471f8c31bb430af7b95f61b28cd2c9
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Sun Aug 27 21:12:07 2006
+Date:   Mon Aug 28 02:12:07 2006 +0000
 
     2006-08-27  Aaron Bockover  <abockover@novell.com>
     
@@ -7013,7 +7575,7 @@ Date:   Sun Aug 27 21:12:07 2006
 
 commit 42bdfaa70eeca125a269416619dd8d6f7ebe0b92
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Fri Aug 25 19:33:46 2006
+Date:   Sat Aug 26 00:33:46 2006 +0000
 
     2006-08-25  Aaron Bockover  <abockover@novell.com>
     
@@ -7025,7 +7587,7 @@ Date:   Fri Aug 25 19:33:46 2006
 
 commit ed83b1cacfd4339faaeb9bba0a7052695708d38b
 Author: Aaron Bockover <abockover@novell.com>
-Date:   Fri Aug 25 19:25:52 2006
+Date:   Sat Aug 26 00:25:52 2006 +0000
 
     Initial import of taglib-sharp; moved from forge
     
diff --git a/INSTALL b/INSTALL
index 7d1c323..a1e89e1 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,8 +1,8 @@
 Installation Instructions
 *************************
 
-Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
-2006, 2007, 2008, 2009 Free Software Foundation, Inc.
+Copyright (C) 1994-1996, 1999-2002, 2004-2011 Free Software Foundation,
+Inc.
 
    Copying and distribution of this file, with or without modification,
 are permitted in any medium without royalty provided the copyright
@@ -226,6 +226,11 @@ order to use an ANSI C compiler:
 
 and if that doesn't work, install pre-built binaries of GCC for HP-UX.
 
+   HP-UX `make' updates targets which have the same time stamps as
+their prerequisites, which makes it generally unusable when shipped
+generated files such as `configure' are involved.  Use GNU `make'
+instead.
+
    On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
 parse its `<wchar.h>' header file.  The option `-nodtk' can be used as
 a workaround.  If GNU CC is not installed, it is therefore recommended
diff --git a/Makefile.am b/Makefile.am
index e1d95a4..16dcdb5 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -61,7 +61,6 @@ UPLOAD_HOST = "$$BANSHEE_USER@banshee.fm"
 UPLOAD_PATH = "web/download.banshee.fm/taglib-sharp"
 push-release: distcheck distwin
 	[[ -z "$$BANSHEE_USER" ]] && { echo "Set BANSHEE_USER"; exit 1; } || true
-	[[ -z "$$MONO_USER" ]] && { echo "Set MONO_USER"; exit 1; } || true
 	mkdir -p release
 	mv $(WINDIR).zip release
 	mv $(PACKAGE)-$(VERSION).tar.* release
diff --git a/Makefile.in b/Makefile.in
index 51a4b6e..a4f07d3 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,9 +1,9 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.5 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,6 +16,23 @@
 @SET_MAKE@
 
 VPATH = @srcdir@
+am__make_dryrun = \
+  { \
+    am__dry=no; \
+    case $$MAKEFLAGS in \
+      *\\[\ \	]*) \
+        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
+          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+      *) \
+        for am__flg in $$MAKEFLAGS; do \
+          case $$am__flg in \
+            *=*|--*) ;; \
+            *n*) am__dry=yes; break;; \
+          esac; \
+        done;; \
+    esac; \
+    test $$am__dry = yes; \
+  }
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -56,6 +73,11 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
 	install-pdf-recursive install-ps-recursive install-recursive \
 	installcheck-recursive installdirs-recursive pdf-recursive \
 	ps-recursive uninstall-recursive
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 am__vpath_adj = case $$p in \
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
@@ -77,6 +99,12 @@ am__nobase_list = $(am__nobase_strip_setup); \
 am__base_list = \
   sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
   sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+  test -z "$$files" \
+    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+         $(am__cd) "$$dir" && rm -f $$files; }; \
+  }
 am__installdirs = "$(DESTDIR)$(pkgconfigdir)"
 DATA = $(pkgconfig_DATA)
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
@@ -90,9 +118,11 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 distdir = $(PACKAGE)-$(VERSION)
 top_distdir = $(distdir)
 am__remove_distdir = \
-  { test ! -d "$(distdir)" \
-    || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
-         && rm -fr "$(distdir)"; }; }
+  if test -d "$(distdir)"; then \
+    find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
+      && rm -rf "$(distdir)" \
+      || { sleep 5 && rm -rf "$(distdir)"; }; \
+  else :; fi
 am__relativize = \
   dir0=`pwd`; \
   sed_first='s,^\([^/]*\)/.*$$,\1,'; \
@@ -121,6 +151,8 @@ am__relativize = \
 DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2
 GZIP_ENV = --best
 distuninstallcheck_listfiles = find . -type f -print
+am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
+  | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
 distcleancheck_listfiles = find . -type f -print
 ACLOCAL = @ACLOCAL@
 AL = @AL@
@@ -145,6 +177,7 @@ GACUTIL_FLAGS = @GACUTIL_FLAGS@
 GACUTIL_POLICY_FLAGS = @GACUTIL_POLICY_FLAGS@
 GNOME_SHARP_CFLAGS = @GNOME_SHARP_CFLAGS@
 GNOME_SHARP_LIBS = @GNOME_SHARP_LIBS@
+GREP = @GREP@
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -256,7 +289,7 @@ UPLOAD_PATH = "web/download.banshee.fm/taglib-sharp"
 all: all-recursive
 
 .SUFFIXES:
-am--refresh:
+am--refresh: Makefile
 	@:
 $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
 	@for dep in $?; do \
@@ -294,8 +327,11 @@ taglib-sharp.pc: $(top_builddir)/config.status $(srcdir)/taglib-sharp.pc.in
 	cd $(top_builddir) && $(SHELL) ./config.status $@
 install-pkgconfigDATA: $(pkgconfig_DATA)
 	@$(NORMAL_INSTALL)
-	test -z "$(pkgconfigdir)" || $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)"
 	@list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
+	if test -n "$$list"; then \
+	  echo " $(MKDIR_P) '$(DESTDIR)$(pkgconfigdir)'"; \
+	  $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)" || exit 1; \
+	fi; \
 	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
 	  echo "$$d$$p"; \
@@ -309,9 +345,7 @@ uninstall-pkgconfigDATA:
 	@$(NORMAL_UNINSTALL)
 	@list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
 	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
-	test -n "$$files" || exit 0; \
-	echo " ( cd '$(DESTDIR)$(pkgconfigdir)' && rm -f" $$files ")"; \
-	cd "$(DESTDIR)$(pkgconfigdir)" && rm -f $$files
+	dir='$(DESTDIR)$(pkgconfigdir)'; $(am__uninstall_files_from_dir)
 
 # This directory's subdirectories are mostly independent; you can cd
 # into them and run `make' without going through this Makefile.
@@ -482,13 +516,10 @@ distdir: $(DISTFILES)
 	done
 	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
 	  if test "$$subdir" = .; then :; else \
-	    test -d "$(distdir)/$$subdir" \
-	    || $(MKDIR_P) "$(distdir)/$$subdir" \
-	    || exit 1; \
-	  fi; \
-	done
-	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
-	  if test "$$subdir" = .; then :; else \
+	    $(am__make_dryrun) \
+	      || test -d "$(distdir)/$$subdir" \
+	      || $(MKDIR_P) "$(distdir)/$$subdir" \
+	      || exit 1; \
 	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
 	    $(am__relativize); \
 	    new_distdir=$$reldir; \
@@ -519,7 +550,11 @@ dist-gzip: distdir
 	tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
 	$(am__remove_distdir)
 dist-bzip2: distdir
-	tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
+	tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
+	$(am__remove_distdir)
+
+dist-lzip: distdir
+	tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
 	$(am__remove_distdir)
 
 dist-lzma: distdir
@@ -527,7 +562,7 @@ dist-lzma: distdir
 	$(am__remove_distdir)
 
 dist-xz: distdir
-	tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz
+	tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
 	$(am__remove_distdir)
 
 dist-tarZ: distdir
@@ -545,7 +580,7 @@ dist-zip: distdir
 
 dist dist-all: distdir
 	tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
-	tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2
+	tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
 	$(am__remove_distdir)
 
 # This target untars the dist file and tries a VPATH configuration.  Then
@@ -559,6 +594,8 @@ distcheck: dist
 	  bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
 	*.tar.lzma*) \
 	  lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\
+	*.tar.lz*) \
+	  lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
 	*.tar.xz*) \
 	  xz -dc $(distdir).tar.xz | $(am__untar) ;;\
 	*.tar.Z*) \
@@ -578,6 +615,7 @@ distcheck: dist
 	  && am__cwd=`pwd` \
 	  && $(am__cd) $(distdir)/_build \
 	  && ../configure --srcdir=.. --prefix="$$dc_install_base" \
+	    $(AM_DISTCHECK_CONFIGURE_FLAGS) \
 	    $(DISTCHECK_CONFIGURE_FLAGS) \
 	  && $(MAKE) $(AM_MAKEFLAGS) \
 	  && $(MAKE) $(AM_MAKEFLAGS) dvi \
@@ -606,8 +644,16 @@ distcheck: dist
 	  list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
 	  sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
 distuninstallcheck:
-	@$(am__cd) '$(distuninstallcheck_dir)' \
-	&& test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \
+	@test -n '$(distuninstallcheck_dir)' || { \
+	  echo 'ERROR: trying to run $@ with an empty' \
+	       '$$(distuninstallcheck_dir)' >&2; \
+	  exit 1; \
+	}; \
+	$(am__cd) '$(distuninstallcheck_dir)' || { \
+	  echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
+	  exit 1; \
+	}; \
+	test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
 	   || { echo "ERROR: files left after uninstall:" ; \
 	        if test -n "$(DESTDIR)"; then \
 	          echo "  (check DESTDIR support)"; \
@@ -641,10 +687,15 @@ install-am: all-am
 
 installcheck: installcheck-recursive
 install-strip:
-	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	  `test -z '$(STRIP)' || \
-	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+	if test -z '$(STRIP)'; then \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	      install; \
+	else \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+	fi
 mostlyclean-generic:
 
 clean-generic:
@@ -733,18 +784,18 @@ uninstall-am: uninstall-pkgconfigDATA
 .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
 	all all-am am--refresh check check-am clean clean-generic \
 	ctags ctags-recursive dist dist-all dist-bzip2 dist-gzip \
-	dist-lzma dist-shar dist-tarZ dist-xz dist-zip distcheck \
-	distclean distclean-generic distclean-tags distcleancheck \
-	distdir distuninstallcheck dvi dvi-am html html-am info \
-	info-am install install-am install-data install-data-am \
-	install-dvi install-dvi-am install-exec install-exec-am \
-	install-html install-html-am install-info install-info-am \
-	install-man install-pdf install-pdf-am install-pkgconfigDATA \
-	install-ps install-ps-am install-strip installcheck \
-	installcheck-am installdirs installdirs-am maintainer-clean \
-	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
-	pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
-	uninstall-pkgconfigDATA
+	dist-lzip dist-lzma dist-shar dist-tarZ dist-xz dist-zip \
+	distcheck distclean distclean-generic distclean-tags \
+	distcleancheck distdir distuninstallcheck dvi dvi-am html \
+	html-am info info-am install install-am install-data \
+	install-data-am install-dvi install-dvi-am install-exec \
+	install-exec-am install-html install-html-am install-info \
+	install-info-am install-man install-pdf install-pdf-am \
+	install-pkgconfigDATA install-ps install-ps-am install-strip \
+	installcheck installcheck-am installdirs installdirs-am \
+	maintainer-clean maintainer-clean-generic mostlyclean \
+	mostlyclean-generic pdf pdf-am ps ps-am tags tags-recursive \
+	uninstall uninstall-am uninstall-pkgconfigDATA
 
 
 @IN_DIST_FALSE@test:
@@ -765,7 +816,6 @@ distwin: all
 	rm -rf $(srcdir)/$(WINDIR)
 push-release: distcheck distwin
 	[[ -z "$$BANSHEE_USER" ]] && { echo "Set BANSHEE_USER"; exit 1; } || true
-	[[ -z "$$MONO_USER" ]] && { echo "Set MONO_USER"; exit 1; } || true
 	mkdir -p release
 	mv $(WINDIR).zip release
 	mv $(PACKAGE)-$(VERSION).tar.* release
diff --git a/NEWS b/NEWS
index a008b5f..bcab1ee 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,38 @@
+Version 2.1.0.0
+July 3, 2012
+
+Fixes and Features in this release include:
+  * Bump the version number because of an ABI break in 363f8ae
+  * Initial support for Audible files (bgo#601543)
+
+Contributors to this release:
+  Alan McGovern, Alexander Kojevnikov, Guy Taylor
+
+--------------------------------------------------------------------------------
+
+Version 2.0.5.0
+July 1, 2012
+
+Fixes and Features in this release include:
+  * Fix a freeze on some mp3 files where header was at the end of file
+  * Properly implement partial matching for File.Find and File.RFind
+  * [Mpeg4] Fix parsing of some apple tags (bgo#658920)
+  * Add partial support for IPTC-IIM
+  * Fix nested UDTA boxes
+  * [Mpeg4] Attempt to handle corrupt tags a little better (bgo#676934)
+  * Mark the file as corrupt instead of throwing exception (bgo#643477)
+  * StartTag.ReadTag should not silence exceptions
+  * Check for short popularimeter tags
+  * On corrupt Id3v2 frame, skip just that frame (bgo#650674)
+  * Use O(N) rather than O(N^2) deunsynchronization algorithm
+
+Contributors to this release:
+  Alan McGovern, Alexander Kojevnikov, Anton Drachev, Chow Loong Jin,
+  Eamon Nerbonne, Eberhard Beilharz, Jakub 'FioÅ?ek' FijaÅ?kowski,
+  Samuel D. Jack, Stephen Shaw, Tim Howard
+
+--------------------------------------------------------------------------------
+
 Version 2.0.4.0
 April 13, 2011
 
diff --git a/aclocal.m4 b/aclocal.m4
index f98833a..e6a02db 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1,7 +1,8 @@
-# generated automatically by aclocal 1.11.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.11.5 -*- Autoconf -*-
 
 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-# 2005, 2006, 2007, 2008, 2009  Free Software Foundation, Inc.
+# 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation,
+# Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -13,8 +14,8 @@
 
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],,
-[m4_warning([this file was generated for autoconf 2.68.
+m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
+[m4_warning([this file was generated for autoconf 2.69.
 You have another version of autoconf.  It may work, but is not guaranteed to.
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically `autoreconf'.])])
@@ -47,7 +48,8 @@ To do so, use the procedure documented by the package, typically `autoreconf'.])
 # ----------------------------------
 AC_DEFUN([PKG_PROG_PKG_CONFIG],
 [m4_pattern_forbid([^_?PKG_[A-Z_]+$])
-m4_pattern_allow([^PKG_CONFIG(_PATH)?$])
+m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
+m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
 AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
 AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
 AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
@@ -93,7 +95,8 @@ m4_define([_PKG_CONFIG],
     pkg_cv_[]$1="$$1"
  elif test -n "$PKG_CONFIG"; then
     PKG_CHECK_EXISTS([$3],
-                     [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`],
+                     [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`
+		      test "x$?" != "x0" && pkg_failed=yes ],
 		     [pkg_failed=yes])
  else
     pkg_failed=untried
@@ -141,9 +144,9 @@ if test $pkg_failed = yes; then
    	AC_MSG_RESULT([no])
         _PKG_SHORT_ERRORS_SUPPORTED
         if test $_pkg_short_errors_supported = yes; then
-	        $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$2" 2>&1`
+	        $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1`
         else 
-	        $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors "$2" 2>&1`
+	        $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1`
         fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
@@ -177,12 +180,15 @@ else
 fi[]dnl
 ])# PKG_CHECK_MODULES
 
-# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008, 2011 Free Software
+# Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
+# serial 1
+
 # AM_AUTOMAKE_VERSION(VERSION)
 # ----------------------------
 # Automake X.Y traces this macro to ensure aclocal.m4 has been
@@ -192,7 +198,7 @@ AC_DEFUN([AM_AUTOMAKE_VERSION],
 [am__api_version='1.11'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.11.1], [],
+m4_if([$1], [1.11.5], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -208,19 +214,21 @@ m4_define([_AM_AUTOCONF_VERSION], [])
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.11.1])dnl
+[AM_AUTOMAKE_VERSION([1.11.5])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
+# serial 1
+
 # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
 # $ac_aux_dir to `$srcdir/foo'.  In other projects, it is set to
 # `$srcdir', `$srcdir/..', or `$srcdir/../..'.
@@ -441,12 +449,15 @@ for _am_header in $config_headers :; do
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001, 2003, 2005, 2008  Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003, 2005, 2008, 2011 Free Software Foundation,
+# Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
+# serial 1
+
 # AM_PROG_INSTALL_SH
 # ------------------
 # Define $install_sh.
@@ -486,8 +497,8 @@ AC_SUBST([am__leading_dot])])
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008
-# Free Software Foundation, Inc.
+# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008,
+# 2011 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -507,7 +518,7 @@ AC_DEFUN([AM_MAINTAINER_MODE],
        [disable], [m4_define([am_maintainer_other], [enable])],
        [m4_define([am_maintainer_other], [enable])
         m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])])
-AC_MSG_CHECKING([whether to am_maintainer_other maintainer-specific portions of Makefiles])
+AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
   dnl maintainer-mode's default is 'disable' unless 'enable' is passed
   AC_ARG_ENABLE([maintainer-mode],
 [  --][am_maintainer_other][-maintainer-mode  am_maintainer_other make rules and dependencies not useful
@@ -566,12 +577,15 @@ else
 fi
 ])
 
-# Copyright (C) 2003, 2004, 2005, 2006  Free Software Foundation, Inc.
+# Copyright (C) 2003, 2004, 2005, 2006, 2011 Free Software Foundation,
+# Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
+# serial 1
+
 # AM_PROG_MKDIR_P
 # ---------------
 # Check for `mkdir -p'.
@@ -594,13 +608,14 @@ esac
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001, 2002, 2003, 2005, 2008  Free Software Foundation, Inc.
+# Copyright (C) 2001, 2002, 2003, 2005, 2008, 2010 Free Software
+# Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 4
+# serial 5
 
 # _AM_MANGLE_OPTION(NAME)
 # -----------------------
@@ -608,13 +623,13 @@ AC_DEFUN([_AM_MANGLE_OPTION],
 [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
 
 # _AM_SET_OPTION(NAME)
-# ------------------------------
+# --------------------
 # Set option NAME.  Presently that only means defining a flag for this option.
 AC_DEFUN([_AM_SET_OPTION],
 [m4_define(_AM_MANGLE_OPTION([$1]), 1)])
 
 # _AM_SET_OPTIONS(OPTIONS)
-# ----------------------------------
+# ------------------------
 # OPTIONS is a space-separated list of Automake options.
 AC_DEFUN([_AM_SET_OPTIONS],
 [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
@@ -625,12 +640,14 @@ AC_DEFUN([_AM_SET_OPTIONS],
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
+# serial 1
+
 # AM_RUN_LOG(COMMAND)
 # -------------------
 # Run COMMAND, save the exit status in ac_status, and log it.
@@ -707,12 +724,14 @@ Check your system clock])
 fi
 AC_MSG_RESULT(yes)])
 
-# Copyright (C) 2001, 2003, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
+# serial 1
+
 # AM_PROG_INSTALL_STRIP
 # ---------------------
 # One issue with vendor `install' (even GNU) is that you can't
@@ -735,13 +754,13 @@ fi
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006, 2008  Free Software Foundation, Inc.
+# Copyright (C) 2006, 2008, 2010 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-# serial 2
+# serial 3
 
 # _AM_SUBST_NOTMAKE(VARIABLE)
 # ---------------------------
@@ -750,13 +769,13 @@ AC_SUBST([INSTALL_STRIP_PROGRAM])])
 AC_DEFUN([_AM_SUBST_NOTMAKE])
 
 # AM_SUBST_NOTMAKE(VARIABLE)
-# ---------------------------
+# --------------------------
 # Public sister of _AM_SUBST_NOTMAKE.
 AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004, 2005  Free Software Foundation, Inc.
+# Copyright (C) 2004, 2005, 2012 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -778,10 +797,11 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
 # a tarball read from stdin.
 #     $(am__untar) < result.tar
 AC_DEFUN([_AM_PROG_TAR],
-[# Always define AMTAR for backward compatibility.
-AM_MISSING_PROG([AMTAR], [tar])
+[# Always define AMTAR for backward compatibility.  Yes, it's still used
+# in the wild :-(  We should find a proper way to deprecate it ...
+AC_SUBST([AMTAR], ['$${TAR-tar}'])
 m4_if([$1], [v7],
-     [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
+     [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
      [m4_case([$1], [ustar],, [pax],,
               [m4_fatal([Unknown tar format])])
 AC_MSG_CHECKING([how to create a $1 tar archive])
diff --git a/configure b/configure
index 8f379ca..43646c2 100755
--- a/configure
+++ b/configure
@@ -1,11 +1,9 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68 for taglib-sharp 2.0.4.0.
+# Generated by GNU Autoconf 2.69 for taglib-sharp 2.1.0.0.
 #
 #
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
-# Foundation, Inc.
+# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
 #
 #
 # This configure script is free software; the Free Software Foundation
@@ -134,6 +132,31 @@ export LANGUAGE
 # CDPATH.
 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
+# Use a proper internal environment variable to ensure we don't fall
+  # into an infinite loop, continuously re-executing ourselves.
+  if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
+    _as_can_reexec=no; export _as_can_reexec;
+    # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+  *v*x* | *x*v* ) as_opts=-vx ;;
+  *v* ) as_opts=-v ;;
+  *x* ) as_opts=-x ;;
+  * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+as_fn_exit 255
+  fi
+  # We don't want this to propagate to other subprocesses.
+          { _as_can_reexec=; unset _as_can_reexec;}
 if test "x$CONFIG_SHELL" = x; then
   as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
   emulate sh
@@ -167,11 +190,13 @@ if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
 else
   exitcode=1; echo positional parameters were not saved.
 fi
-test x\$exitcode = x0 || exit 1"
+test x\$exitcode = x0 || exit 1
+test -x / || exit 1"
   as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
   as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
   eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
-  test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1"
+  test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
+test \$(( 1 + 1 )) = 2 || exit 1"
   if (eval "$as_required") 2>/dev/null; then :
   as_have_required=yes
 else
@@ -211,21 +236,25 @@ IFS=$as_save_IFS
 
 
       if test "x$CONFIG_SHELL" != x; then :
-  # We cannot yet assume a decent shell, so we have to provide a
-	# neutralization value for shells without unset; and this also
-	# works around shells that cannot unset nonexistent variables.
-	# Preserve -v and -x to the replacement shell.
-	BASH_ENV=/dev/null
-	ENV=/dev/null
-	(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-	export CONFIG_SHELL
-	case $- in # ((((
-	  *v*x* | *x*v* ) as_opts=-vx ;;
-	  *v* ) as_opts=-v ;;
-	  *x* ) as_opts=-x ;;
-	  * ) as_opts= ;;
-	esac
-	exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"}
+  export CONFIG_SHELL
+             # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+  *v*x* | *x*v* ) as_opts=-vx ;;
+  *v* ) as_opts=-v ;;
+  *x* ) as_opts=-x ;;
+  * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+exit 255
 fi
 
     if test x$as_have_required = xno; then :
@@ -327,6 +356,14 @@ $as_echo X"$as_dir" |
 
 
 } # as_fn_mkdir_p
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+  test -f "$1" && test -x "$1"
+} # as_fn_executable_p
 # as_fn_append VAR VALUE
 # ----------------------
 # Append the text in VALUE to the end of the definition contained in VAR. Take
@@ -448,6 +485,10 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits
   chmod +x "$as_me.lineno" ||
     { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
 
+  # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
+  # already done that, so ensure we don't try to do so again and fall
+  # in an infinite loop.  This has already happened in practice.
+  _as_can_reexec=no; export _as_can_reexec
   # Don't try to exec as it changes $[0], causing all sort of problems
   # (the dirname of $[0] is not the place where we might find the
   # original and so on.  Autoconf is especially sensitive to this).
@@ -482,16 +523,16 @@ if (echo >conf$$.file) 2>/dev/null; then
     # ... but there are two gotchas:
     # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
     # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-    # In both cases, we have to default to `cp -p'.
+    # In both cases, we have to default to `cp -pR'.
     ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
+      as_ln_s='cp -pR'
   elif ln conf$$.file conf$$ 2>/dev/null; then
     as_ln_s=ln
   else
-    as_ln_s='cp -p'
+    as_ln_s='cp -pR'
   fi
 else
-  as_ln_s='cp -p'
+  as_ln_s='cp -pR'
 fi
 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
 rmdir conf$$.dir 2>/dev/null
@@ -503,28 +544,8 @@ else
   as_mkdir_p=false
 fi
 
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-	test -d "$1/.";
-      else
-	case $1 in #(
-	-*)set "./$1";;
-	esac;
-	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
-	???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
 
 # Sed expression to map a string onto a valid CPP name.
 as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -556,8 +577,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='taglib-sharp'
 PACKAGE_TARNAME='taglib-sharp'
-PACKAGE_VERSION='2.0.4.0'
-PACKAGE_STRING='taglib-sharp 2.0.4.0'
+PACKAGE_VERSION='2.1.0.0'
+PACKAGE_STRING='taglib-sharp 2.1.0.0'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
@@ -600,6 +621,7 @@ MONO
 MCS
 DISTCHECK_CONFIGURE_FLAGS
 WINDIR
+GREP
 ASSEMBLY_NAME
 ASSEMBLY_VERSION
 POLICY_2_0_VERSIONS
@@ -1141,8 +1163,6 @@ target=$target_alias
 if test "x$host_alias" != x; then
   if test "x$build_alias" = x; then
     cross_compiling=maybe
-    $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
-    If a cross compiler is detected then cross compile mode will be used" >&2
   elif test "x$build_alias" != "x$host_alias"; then
     cross_compiling=yes
   fi
@@ -1228,7 +1248,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures taglib-sharp 2.0.4.0 to adapt to many kinds of systems.
+\`configure' configures taglib-sharp 2.1.0.0 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1294,7 +1314,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of taglib-sharp 2.0.4.0:";;
+     short | recursive ) echo "Configuration of taglib-sharp 2.1.0.0:";;
    esac
   cat <<\_ACEOF
 
@@ -1391,10 +1411,10 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-taglib-sharp configure 2.0.4.0
-generated by GNU Autoconf 2.68
+taglib-sharp configure 2.1.0.0
+generated by GNU Autoconf 2.69
 
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
 This configure script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it.
 _ACEOF
@@ -1408,8 +1428,8 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by taglib-sharp $as_me 2.0.4.0, which was
-generated by GNU Autoconf 2.68.  Invocation command line was
+It was created by taglib-sharp $as_me 2.1.0.0, which was
+generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
 
@@ -1824,7 +1844,7 @@ case $as_dir/ in #((
     # by default.
     for ac_prog in ginstall scoinst install; do
       for ac_exec_ext in '' $ac_executable_extensions; do
-	if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
+	if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
 	  if test $ac_prog = install &&
 	    grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
 	    # AIX install.  It has an incompatible calling convention.
@@ -1993,7 +2013,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_STRIP="${ac_tool_prefix}strip"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2033,7 +2053,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_STRIP="strip"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2084,7 +2104,7 @@ do
   test -z "$as_dir" && as_dir=.
     for ac_prog in mkdir gmkdir; do
 	 for ac_exec_ext in '' $ac_executable_extensions; do
-	   { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; } || continue
+	   as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
 	   case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
 	     'mkdir (GNU coreutils) '* | \
 	     'mkdir (coreutils) '* | \
@@ -2137,7 +2157,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_AWK="$ac_prog"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2223,7 +2243,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='taglib-sharp'
- VERSION='2.0.4.0'
+ VERSION='2.1.0.0'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -2253,9 +2273,9 @@ MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
 
 # We need awk for the "check" target.  The system "awk" is bad on
 # some platforms.
-# Always define AMTAR for backward compatibility.
-
-AMTAR=${AMTAR-"${am_missing_run}tar"}
+# Always define AMTAR for backward compatibility.  Yes, it's still used
+# in the wild :-(  We should find a proper way to deprecate it ...
+AMTAR='$${TAR-tar}'
 
 
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to create a ustar tar archive" >&5
@@ -2379,6 +2399,69 @@ POLICY_2_0_VERSIONS="2.0.0.0-$ASSEMBLY_VERSION"
 
 
 
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
+$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
+if ${ac_cv_path_GREP+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  if test -z "$GREP"; then
+  ac_path_GREP_found=false
+  # Loop through the user's path and test for each of PROGNAME-LIST
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_prog in grep ggrep; do
+    for ac_exec_ext in '' $ac_executable_extensions; do
+      ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
+      as_fn_executable_p "$ac_path_GREP" || continue
+# Check for GNU ac_path_GREP and select it if it is found.
+  # Check for GNU $ac_path_GREP
+case `"$ac_path_GREP" --version 2>&1` in
+*GNU*)
+  ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
+*)
+  ac_count=0
+  $as_echo_n 0123456789 >"conftest.in"
+  while :
+  do
+    cat "conftest.in" "conftest.in" >"conftest.tmp"
+    mv "conftest.tmp" "conftest.in"
+    cp "conftest.in" "conftest.nl"
+    $as_echo 'GREP' >> "conftest.nl"
+    "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
+    diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
+    as_fn_arith $ac_count + 1 && ac_count=$as_val
+    if test $ac_count -gt ${ac_path_GREP_max-0}; then
+      # Best one so far, save it but keep looking for a better one
+      ac_cv_path_GREP="$ac_path_GREP"
+      ac_path_GREP_max=$ac_count
+    fi
+    # 10*(2^10) chars as input seems more than enough
+    test $ac_count -gt 10 && break
+  done
+  rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
+esac
+
+      $ac_path_GREP_found && break 3
+    done
+  done
+  done
+IFS=$as_save_IFS
+  if test -z "$ac_cv_path_GREP"; then
+    as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
+  fi
+else
+  ac_cv_path_GREP=$GREP
+fi
+
+fi
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
+$as_echo "$ac_cv_path_GREP" >&6; }
+ GREP="$ac_cv_path_GREP"
+
+
 
 MONODOC_REQUIRED=1.1.9
 
@@ -2406,7 +2489,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_path_MCS="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2450,7 +2533,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_path_MONO="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2504,7 +2587,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_path_AL="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2548,7 +2631,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_path_GACUTIL="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2593,6 +2676,7 @@ 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.
@@ -2613,7 +2697,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2656,7 +2740,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2726,7 +2810,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_path_MONODOCER="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2771,7 +2855,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_path_MDASSEMBLER="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -2822,11 +2906,9 @@ fi
 fi
 
 # checking for ICSharpCode.SharpZipLib.dll
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Mono 2.0 GAC for ICSharpCode.SharpZipLib.dll" >&5
-$as_echo_n "checking for Mono 2.0 GAC for ICSharpCode.SharpZipLib.dll... " >&6; }
-if test \
-	-e "$($PKG_CONFIG --variable=libdir mono)/mono/2.0/ICSharpCode.SharpZipLib.dll" -o \
-	-e "$($PKG_CONFIG --variable=prefix mono)/lib/mono/2.0/ICSharpCode.SharpZipLib.dll"; \
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking Mono GAC for ICSharpCode.SharpZipLib.dll" >&5
+$as_echo_n "checking Mono GAC for ICSharpCode.SharpZipLib.dll... " >&6; }
+if $GACUTIL -l | $GREP -q ICSharpCode.SharpZipLib; \
 	then \
 	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
 $as_echo "found" >&6; }
@@ -2867,6 +2949,7 @@ if test -n "$GNOME_SHARP_CFLAGS"; then
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_GNOME_SHARP_CFLAGS=`$PKG_CONFIG --cflags "gnome-sharp-2.0" 2>/dev/null`
+		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
 fi
@@ -2883,6 +2966,7 @@ if test -n "$GNOME_SHARP_LIBS"; then
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_GNOME_SHARP_LIBS=`$PKG_CONFIG --libs "gnome-sharp-2.0" 2>/dev/null`
+		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
 fi
@@ -2902,9 +2986,9 @@ else
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-	        GNOME_SHARP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "gnome-sharp-2.0" 2>&1`
+	        GNOME_SHARP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gnome-sharp-2.0" 2>&1`
         else
-	        GNOME_SHARP_PKG_ERRORS=`$PKG_CONFIG --print-errors "gnome-sharp-2.0" 2>&1`
+	        GNOME_SHARP_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gnome-sharp-2.0" 2>&1`
         fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$GNOME_SHARP_PKG_ERRORS" >&5
@@ -2957,6 +3041,7 @@ if test -n "$EXIV2_CFLAGS"; then
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_EXIV2_CFLAGS=`$PKG_CONFIG --cflags "exiv2" 2>/dev/null`
+		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
 fi
@@ -2973,6 +3058,7 @@ if test -n "$EXIV2_LIBS"; then
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_EXIV2_LIBS=`$PKG_CONFIG --libs "exiv2" 2>/dev/null`
+		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
 fi
@@ -2992,9 +3078,9 @@ else
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-	        EXIV2_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "exiv2" 2>&1`
+	        EXIV2_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "exiv2" 2>&1`
         else
-	        EXIV2_PKG_ERRORS=`$PKG_CONFIG --print-errors "exiv2" 2>&1`
+	        EXIV2_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "exiv2" 2>&1`
         fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$EXIV2_PKG_ERRORS" >&5
@@ -3047,6 +3133,7 @@ if test -n "$MONO_NUNIT_CFLAGS"; then
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_MONO_NUNIT_CFLAGS=`$PKG_CONFIG --cflags "mono-nunit >= 1.0" 2>/dev/null`
+		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
 fi
@@ -3063,6 +3150,7 @@ if test -n "$MONO_NUNIT_LIBS"; then
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
   pkg_cv_MONO_NUNIT_LIBS=`$PKG_CONFIG --libs "mono-nunit >= 1.0" 2>/dev/null`
+		      test "x$?" != "x0" && pkg_failed=yes
 else
   pkg_failed=yes
 fi
@@ -3082,9 +3170,9 @@ else
         _pkg_short_errors_supported=no
 fi
         if test $_pkg_short_errors_supported = yes; then
-	        MONO_NUNIT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "mono-nunit >= 1.0" 2>&1`
+	        MONO_NUNIT_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "mono-nunit >= 1.0" 2>&1`
         else
-	        MONO_NUNIT_PKG_ERRORS=`$PKG_CONFIG --print-errors "mono-nunit >= 1.0" 2>&1`
+	        MONO_NUNIT_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "mono-nunit >= 1.0" 2>&1`
         fi
 	# Put the nasty error message in config.log where it belongs
 	echo "$MONO_NUNIT_PKG_ERRORS" >&5
@@ -3131,7 +3219,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_path_NUNIT_CMD="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -3711,16 +3799,16 @@ if (echo >conf$$.file) 2>/dev/null; then
     # ... but there are two gotchas:
     # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
     # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-    # In both cases, we have to default to `cp -p'.
+    # In both cases, we have to default to `cp -pR'.
     ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
+      as_ln_s='cp -pR'
   elif ln conf$$.file conf$$ 2>/dev/null; then
     as_ln_s=ln
   else
-    as_ln_s='cp -p'
+    as_ln_s='cp -pR'
   fi
 else
-  as_ln_s='cp -p'
+  as_ln_s='cp -pR'
 fi
 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
 rmdir conf$$.dir 2>/dev/null
@@ -3780,28 +3868,16 @@ else
   as_mkdir_p=false
 fi
 
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-	test -d "$1/.";
-      else
-	case $1 in #(
-	-*)set "./$1";;
-	esac;
-	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
-	???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+  test -f "$1" && test -x "$1"
+} # as_fn_executable_p
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
 
 # Sed expression to map a string onto a valid CPP name.
 as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -3822,8 +3898,8 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by taglib-sharp $as_me 2.0.4.0, which was
-generated by GNU Autoconf 2.68.  Invocation command line was
+This file was extended by taglib-sharp $as_me 2.1.0.0, which was
+generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
   CONFIG_HEADERS  = $CONFIG_HEADERS
@@ -3875,11 +3951,11 @@ _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-taglib-sharp config.status 2.0.4.0
-configured by $0, generated by GNU Autoconf 2.68,
+taglib-sharp config.status 2.1.0.0
+configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
 This config.status script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it."
 
@@ -3959,7 +4035,7 @@ fi
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 if \$ac_cs_recheck; then
-  set X '$SHELL' '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+  set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
   shift
   \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
   CONFIG_SHELL='$SHELL'
diff --git a/configure.ac b/configure.ac
index 59a1b98..698acc6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,4 +1,4 @@
-AC_INIT([taglib-sharp], [2.0.4.0])
+AC_INIT([taglib-sharp], [2.1.0.0])
 AM_INIT_AUTOMAKE([1.9 dist-bzip2 tar-ustar])
 AM_MAINTAINER_MODE
 
@@ -13,6 +13,7 @@ AC_SUBST(ASSEMBLY_VERSION)
 AC_SUBST(ASSEMBLY_NAME)
 
 AC_PROG_INSTALL
+AC_PROG_GREP
 
 MONODOC_REQUIRED=1.1.9
 
@@ -84,10 +85,8 @@ else
 fi
 
 # checking for ICSharpCode.SharpZipLib.dll
-AC_MSG_CHECKING([for Mono 2.0 GAC for ICSharpCode.SharpZipLib.dll])
-if test \
-	-e "$($PKG_CONFIG --variable=libdir mono)/mono/2.0/ICSharpCode.SharpZipLib.dll" -o \
-	-e "$($PKG_CONFIG --variable=prefix mono)/lib/mono/2.0/ICSharpCode.SharpZipLib.dll"; \
+AC_MSG_CHECKING([Mono GAC for ICSharpCode.SharpZipLib.dll])
+if $GACUTIL -l | $GREP -q ICSharpCode.SharpZipLib; \
 	then \
 	AC_MSG_RESULT([found])
 	AM_CONDITIONAL(HAVE_SHARPZIPLIB, true)
diff --git a/debian/changelog b/debian/changelog
index 0b084e5..bd463b5 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,13 @@
+taglib-sharp (2.1.0.0-1) unstable; urgency=low
+
+  * [7de8d49] Imported Upstream version 2.0.5.0
+  * [b1fecd3] Drop upstreamed patches and reexport
+  * [c9a5f65] Imported Upstream version 2.1.0.0
+  * [187b143] Rename package from taglib2.0 to taglib2.1
+  * [be46d9d] Drop trailing whitespaces in debian/rules
+
+ -- Chow Loong Jin <hyperair@debian.org>  Thu, 05 Jul 2012 02:00:02 +0800
+
 taglib-sharp (2.0.4.0-1) unstable; urgency=low
 
   * [758c995] Imported Upstream version 2.0.4.0
diff --git a/debian/control b/debian/control
index 19f1a48..6ee9b24 100644
--- a/debian/control
+++ b/debian/control
@@ -16,7 +16,7 @@ Standards-Version: 3.9.2
 Vcs-Browser: http://git.debian.org/?p=pkg-cli-libs/packages/taglib-sharp.git
 Vcs-Git: git://git.debian.org/git/pkg-cli-libs/packages/taglib-sharp.git
 
-Package: libtaglib2.0-cil
+Package: libtaglib2.1-cil
 Architecture: all
 Depends: ${cli:Depends}, ${misc:Depends}
 Description: CLI library for accessing audio and video files metadata
@@ -27,7 +27,7 @@ Description: CLI library for accessing audio and video files metadata
 
 Package: libtaglib-cil-dev
 Architecture: all
-Depends: libtaglib2.0-cil (= ${binary:Version}), ${misc:Depends}
+Depends: libtaglib2.1-cil (= ${binary:Version}), ${misc:Depends}
 Replaces: libtaglib2.0-cil (<< 2.0.3.3+dfsg-2)
 Description: CLI library for accessing audio and video files metadata
  TagLib# is a CLI library used to read and manipulate metadata
diff --git a/debian/libtaglib2.0-cil.install b/debian/libtaglib2.0-cil.install
deleted file mode 100644
index d7a220b..0000000
--- a/debian/libtaglib2.0-cil.install
+++ /dev/null
@@ -1 +0,0 @@
-usr/lib/cli
diff --git a/debian/libtaglib2.0-cil.installcligac b/debian/libtaglib2.0-cil.installcligac
deleted file mode 100644
index bd5de77..0000000
--- a/debian/libtaglib2.0-cil.installcligac
+++ /dev/null
@@ -1,2 +0,0 @@
-/usr/lib/cli/taglib-sharp-2.0/taglib-sharp.dll
-/usr/lib/cli/taglib-sharp-2.0/policy.2.0.taglib-sharp.dll
diff --git a/debian/libtaglib2.1-cil.install b/debian/libtaglib2.1-cil.install
new file mode 100644
index 0000000..d7a220b
--- /dev/null
+++ b/debian/libtaglib2.1-cil.install
@@ -0,0 +1 @@
+usr/lib/cli
diff --git a/debian/libtaglib2.1-cil.installcligac b/debian/libtaglib2.1-cil.installcligac
new file mode 100644
index 0000000..d01c6be
--- /dev/null
+++ b/debian/libtaglib2.1-cil.installcligac
@@ -0,0 +1 @@
+/usr/lib/cli/taglib-sharp-2.1/taglib-sharp.dll
diff --git a/debian/patches/0001-Fix-build-system-for-building-docs.patch b/debian/patches/0001-Fix-build-system-for-building-docs.patch
deleted file mode 100644
index fbfed4b..0000000
--- a/debian/patches/0001-Fix-build-system-for-building-docs.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <slomo@debian.org>
-Date: Sun, 5 Feb 2012 23:26:01 +0800
-Subject: Fix build system for building docs
-
- - Don't run XmlInjector.cs (fixes FTBFS with newer monodoc)
- - Don't include DESTDIR in monodocdir
-
-Bug-Debian: http://bugs.debian.org/475218
----
- docs/Makefile.am |    9 +--------
- 1 files changed, 1 insertions(+), 8 deletions(-)
-
-diff --git a/docs/Makefile.am b/docs/Makefile.am
-index d719cb9..a95cca9 100644
---- a/docs/Makefile.am
-+++ b/docs/Makefile.am
-@@ -10,7 +10,7 @@ all: XmlInjector.exe
- XmlInjector.exe: XmlInjector.cs
- 	$(MCS) -out:$@ -r:System.Xml $<
- 
--monodocdir = $(DESTDIR)$(DOCDIR)
-+monodocdir = $(DOCDIR)
- monodoc_DATA = \
- 	taglib-sharp-docs.zip \
- 	taglib-sharp-docs.tree \
-@@ -23,7 +23,6 @@ en/index.xml: $(ASSEMBLY) $(SLASHDOC) XmlInjector.exe Package.en.xml
- 		rm -rf en; \
- 	fi
- 	$(DOC_UPDATER) -assembly:$(ASSEMBLY) -importslashdoc:$(SLASHDOC) -path:en > /dev/null
--	$(MONO) XmlInjector.exe Package.en.xml InsertMissingValues
- 
- update-html: en
- 	if [ -d taglib-sharp-web-docs ]; then \
-@@ -37,12 +36,6 @@ taglib-sharp-docs.tree: taglib-sharp-docs.zip
- taglib-sharp-docs.zip: en/index.xml
- 	$(DOC_ASSEMBLER) en
- 
--install-data-hook: XmlInjector.exe Package.en.xml
--	$(MONO) XmlInjector.exe Package.en.xml InjectMenuItem
--
--uninstall-hook: XmlInjector.exe Package.en.xml
--	$(MONO) XmlInjector.exe Package.en.xml RemoveMenuItem
--
- clean-local:
- 	if [ -d en ]; then \
- 		rm -rf en; \
--- 
diff --git a/debian/patches/0002-Amend-taglib-sharp.dll-path-in-pc-file.patch b/debian/patches/0002-Amend-taglib-sharp.dll-path-in-pc-file.patch
deleted file mode 100644
index 6516f0d..0000000
--- a/debian/patches/0002-Amend-taglib-sharp.dll-path-in-pc-file.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <slomo@debian.org>
-Date: Sun, 5 Feb 2012 23:26:01 +0800
-Subject: Amend taglib-sharp.dll path in pc file
-
----
- taglib-sharp.pc.in |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/taglib-sharp.pc.in b/taglib-sharp.pc.in
-index 25d2bd1..f0a8858 100644
---- a/taglib-sharp.pc.in
-+++ b/taglib-sharp.pc.in
-@@ -5,4 +5,4 @@ libdir=${exec_prefix}/lib
- Name: TagLib Sharp
- Description: A library for reading and writing tags to audio files.
- Version: @VERSION@
--Libs: -r:${libdir}/mono/taglib-sharp/taglib-sharp.dll
-+Libs: -r:${libdir}/cli/taglib-sharp-2.0/taglib-sharp.dll
--- 
diff --git a/debian/patches/0003-Use-gacutil-for-ICSharpCode.SharpZipLib-check.patch b/debian/patches/0003-Use-gacutil-for-ICSharpCode.SharpZipLib-check.patch
deleted file mode 100644
index cc709db..0000000
--- a/debian/patches/0003-Use-gacutil-for-ICSharpCode.SharpZipLib-check.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From: Chow Loong Jin <hyperair@debian.org>
-Date: Sun, 5 Feb 2012 23:42:25 +0800
-Subject: Use gacutil for ICSharpCode.SharpZipLib check
-
----
- configure.ac |    7 +++----
- 1 files changed, 3 insertions(+), 4 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 59a1b98..4114783 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -13,6 +13,7 @@ AC_SUBST(ASSEMBLY_VERSION)
- AC_SUBST(ASSEMBLY_NAME)
- 
- AC_PROG_INSTALL
-+AC_PROG_GREP
- 
- MONODOC_REQUIRED=1.1.9
- 
-@@ -84,10 +85,8 @@ else
- fi
- 
- # checking for ICSharpCode.SharpZipLib.dll
--AC_MSG_CHECKING([for Mono 2.0 GAC for ICSharpCode.SharpZipLib.dll])
--if test \
--	-e "$($PKG_CONFIG --variable=libdir mono)/mono/2.0/ICSharpCode.SharpZipLib.dll" -o \
--	-e "$($PKG_CONFIG --variable=prefix mono)/lib/mono/2.0/ICSharpCode.SharpZipLib.dll"; \
-+AC_MSG_CHECKING([Mono GAC for ICSharpCode.SharpZipLib.dll])
-+if $GACUTIL -l | $GREP -q ICSharpCode.SharpZipLib; \
- 	then \
- 	AC_MSG_RESULT([found])
- 	AM_CONDITIONAL(HAVE_SHARPZIPLIB, true)
--- 
diff --git a/debian/patches/0004-Readd-Taglib.Mpeg4.FileParser.UserDataBox-property.patch b/debian/patches/0004-Readd-Taglib.Mpeg4.FileParser.UserDataBox-property.patch
deleted file mode 100644
index 295081d..0000000
--- a/debian/patches/0004-Readd-Taglib.Mpeg4.FileParser.UserDataBox-property.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From: Chow Loong Jin <hyperair@debian.org>
-Date: Mon, 6 Feb 2012 01:06:24 +0800
-Subject: Readd Taglib.Mpeg4.FileParser.UserDataBox property
-
-The UserDataBox property was renamed to UserDataBoxes and its return type
-changed to an array between 2.0.3.7 and 2.0.4.0, resulting in an ABI
-breakage. This patch readds the property for backward compatibility.
----
- src/TagLib/Mpeg4/FileParser.cs |    4 ++++
- 1 files changed, 4 insertions(+), 0 deletions(-)
-
-diff --git a/src/TagLib/Mpeg4/FileParser.cs b/src/TagLib/Mpeg4/FileParser.cs
-index 2043a50..72efde7 100644
---- a/src/TagLib/Mpeg4/FileParser.cs
-+++ b/src/TagLib/Mpeg4/FileParser.cs
-@@ -157,6 +157,10 @@ namespace TagLib.Mpeg4 {
- 			get {return udta_boxes.ToArray ();}
- 		}
- 		
-+		public IsoUserDataBox UserDataBox {
-+			get {return UserDataBoxes.Length == 0 ? null : UserDataBoxes[0];}
-+		}
-+
- 		/// <summary>
- 		///    Gets the audio sample entry read by the current instance.
- 		/// </summary>
--- 
diff --git a/debian/patches/Amend-taglib-sharp.dll-path-in-pc-file.patch b/debian/patches/Amend-taglib-sharp.dll-path-in-pc-file.patch
new file mode 100644
index 0000000..f817d36
--- /dev/null
+++ b/debian/patches/Amend-taglib-sharp.dll-path-in-pc-file.patch
@@ -0,0 +1,19 @@
+From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <slomo@debian.org>
+Date: Sun, 5 Feb 2012 23:26:01 +0800
+Subject: Amend taglib-sharp.dll path in pc file
+
+---
+ taglib-sharp.pc.in |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/taglib-sharp.pc.in b/taglib-sharp.pc.in
+index 25d2bd1..f0a8858 100644
+--- a/taglib-sharp.pc.in
++++ b/taglib-sharp.pc.in
+@@ -5,4 +5,4 @@ libdir=${exec_prefix}/lib
+ Name: TagLib Sharp
+ Description: A library for reading and writing tags to audio files.
+ Version: @VERSION@
+-Libs: -r:${libdir}/mono/taglib-sharp/taglib-sharp.dll
++Libs: -r:${libdir}/cli/taglib-sharp-2.0/taglib-sharp.dll
+-- 
diff --git a/debian/patches/Fix-build-system-for-building-docs.patch b/debian/patches/Fix-build-system-for-building-docs.patch
new file mode 100644
index 0000000..e8b9faf
--- /dev/null
+++ b/debian/patches/Fix-build-system-for-building-docs.patch
@@ -0,0 +1,38 @@
+From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <slomo@debian.org>
+Date: Sun, 5 Feb 2012 23:26:01 +0800
+Subject: Fix build system for building docs
+
+ - Don't run XmlInjector.cs (fixes FTBFS with newer monodoc)
+ - Don't include DESTDIR in monodocdir
+
+Bug-Debian: http://bugs.debian.org/475218
+---
+ docs/Makefile.am |    7 -------
+ 1 file changed, 7 deletions(-)
+
+diff --git a/docs/Makefile.am b/docs/Makefile.am
+index 67cdbb5..d24c2f3 100644
+--- a/docs/Makefile.am
++++ b/docs/Makefile.am
+@@ -23,7 +23,6 @@ en/index.xml: $(ASSEMBLY) $(SLASHDOC) XmlInjector.exe Package.en.xml
+ 		rm -rf en; \
+ 	fi
+ 	$(DOC_UPDATER) -assembly:$(ASSEMBLY) -importslashdoc:$(SLASHDOC) -path:en > /dev/null
+-	$(MONO) XmlInjector.exe Package.en.xml InsertMissingValues
+ 
+ update-html: en
+ 	if [ -d taglib-sharp-web-docs ]; then \
+@@ -37,12 +36,6 @@ taglib-sharp-docs.tree: taglib-sharp-docs.zip
+ taglib-sharp-docs.zip: en/index.xml
+ 	$(DOC_ASSEMBLER) en
+ 
+-install-data-hook: XmlInjector.exe Package.en.xml
+-	$(MONO) XmlInjector.exe Package.en.xml InjectMenuItem
+-
+-uninstall-hook: XmlInjector.exe Package.en.xml
+-	$(MONO) XmlInjector.exe Package.en.xml RemoveMenuItem
+-
+ clean-local:
+ 	if [ -d en ]; then \
+ 		rm -rf en; \
+-- 
diff --git a/debian/patches/series b/debian/patches/series
index 6c9eb62..854c491 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,4 +1,2 @@
-0001-Fix-build-system-for-building-docs.patch
-0002-Amend-taglib-sharp.dll-path-in-pc-file.patch
-0003-Use-gacutil-for-ICSharpCode.SharpZipLib-check.patch
-0004-Readd-Taglib.Mpeg4.FileParser.UserDataBox-property.patch
+Fix-build-system-for-building-docs.patch
+Amend-taglib-sharp.dll-path-in-pc-file.patch
diff --git a/debian/rules b/debian/rules
index ff90ab6..b2bcc43 100755
--- a/debian/rules
+++ b/debian/rules
@@ -8,13 +8,13 @@ MAKEFILE = $(firstword $(MAKEFILE_LIST))
 DEBIAN_DIR = $(dir $(MAKEFILE))
 SOURCE_DIR = $(DEBIAN_DIR)/..
 
-DEB_VERSION = $(shell dpkg-parsechangelog -l$(DEBIAN_DIR)/changelog | grep ^Version | cut -d" " -f2)   
+DEB_VERSION = $(shell dpkg-parsechangelog -l$(DEBIAN_DIR)/changelog | grep ^Version | cut -d" " -f2)
 DEB_SOURCE_NAME = $(shell dpkg-parsechangelog -l$(DEBIAN_DIR)/changelog | grep ^Source | cut -d" " -f2)
 VERSION = $(shell echo $(DEB_VERSION) | cut -d"-" -f1 | sed 's/+dfsg.*//')
 
 PACKAGES = $(shell sed -n 's/^Package: //p' $(DEBIAN_DIR)/control)
 
-DEB_ABI_VERSION = 2.0
+DEB_ABI_VERSION = 2.1
 
 override_dh_auto_configure:
 	dh_auto_configure -- --prefix=/usr MCS=/usr/bin/mono-csc AL=/usr/bin/al2
@@ -24,8 +24,6 @@ override_dh_auto_install:
 	mkdir -p debian/tmp/usr/lib/cli/taglib-sharp-$(DEB_ABI_VERSION) debian/tmp/usr/share/pkgconfig
 	cp src/taglib-sharp.dll debian/tmp/usr/lib/cli/taglib-sharp-$(DEB_ABI_VERSION)/
 	cp src/taglib-sharp.dll.mdb debian/tmp/usr/lib/cli/taglib-sharp-$(DEB_ABI_VERSION)/
-	cp src/policy.2.0.taglib-sharp.dll debian/tmp/usr/lib/cli/taglib-sharp-$(DEB_ABI_VERSION)/
-	cp src/policy.2.0.taglib-sharp.config debian/tmp/usr/lib/cli/taglib-sharp-$(DEB_ABI_VERSION)/
 
 # The -V is there for a reason. Check the changelog for more info. If you dare
 # touch this, prepare for the consequences. Breaking the world is one. Me (or
diff --git a/docs/Makefile.am b/docs/Makefile.am
index d719cb9..67cdbb5 100644
--- a/docs/Makefile.am
+++ b/docs/Makefile.am
@@ -10,7 +10,7 @@ all: XmlInjector.exe
 XmlInjector.exe: XmlInjector.cs
 	$(MCS) -out:$@ -r:System.Xml $<
 
-monodocdir = $(DESTDIR)$(DOCDIR)
+monodocdir = $(DOCDIR)
 monodoc_DATA = \
 	taglib-sharp-docs.zip \
 	taglib-sharp-docs.tree \
@@ -54,7 +54,7 @@ EXTRA_DIST = \
 	taglib-sharp-docs.source \
 	XmlInjector.cs \
 	Package.en.xml.in
-	
+
 DISTCLEANFILES = \
 	taglib-sharp-docs.zip \
 	taglib-sharp-docs.tree
diff --git a/docs/Makefile.in b/docs/Makefile.in
index 9856c1e..9d8beb2 100644
--- a/docs/Makefile.in
+++ b/docs/Makefile.in
@@ -1,9 +1,9 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.5 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -16,6 +16,23 @@
 @SET_MAKE@
 
 VPATH = @srcdir@
+am__make_dryrun = \
+  { \
+    am__dry=no; \
+    case $$MAKEFLAGS in \
+      *\\[\ \	]*) \
+        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
+          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+      *) \
+        for am__flg in $$MAKEFLAGS; do \
+          case $$am__flg in \
+            *=*|--*) ;; \
+            *n*) am__dry=yes; break;; \
+          esac; \
+        done;; \
+    esac; \
+    test $$am__dry = yes; \
+  }
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -44,6 +61,11 @@ CONFIG_CLEAN_FILES = Package.en.xml
 CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
 am__vpath_adj = case $$p in \
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
@@ -65,6 +87,12 @@ am__nobase_list = $(am__nobase_strip_setup); \
 am__base_list = \
   sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
   sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+  test -z "$$files" \
+    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+         $(am__cd) "$$dir" && rm -f $$files; }; \
+  }
 am__installdirs = "$(DESTDIR)$(monodocdir)"
 DATA = $(monodoc_DATA)
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
@@ -91,6 +119,7 @@ GACUTIL_FLAGS = @GACUTIL_FLAGS@
 GACUTIL_POLICY_FLAGS = @GACUTIL_POLICY_FLAGS@
 GNOME_SHARP_CFLAGS = @GNOME_SHARP_CFLAGS@
 GNOME_SHARP_LIBS = @GNOME_SHARP_LIBS@
+GREP = @GREP@
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -171,7 +200,7 @@ DOC_UPDATER = @MONODOCER@ -delete -pretty
 DOC_ASSEMBLER = @MDASSEMBLER@ --out taglib-sharp-docs --ecma
 ASSEMBLY = $(top_builddir)/src/$(ASSEMBLY_NAME).dll
 SLASHDOC = $(ASSEMBLY).xml
-@BUILD_DOCS_TRUE@monodocdir = $(DESTDIR)$(DOCDIR)
+@BUILD_DOCS_TRUE@monodocdir = $(DOCDIR)
 @BUILD_DOCS_TRUE@monodoc_DATA = \
 @BUILD_DOCS_TRUE@	taglib-sharp-docs.zip \
 @BUILD_DOCS_TRUE@	taglib-sharp-docs.tree \
@@ -229,8 +258,11 @@ Package.en.xml: $(top_builddir)/config.status $(srcdir)/Package.en.xml.in
 	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
 install-monodocDATA: $(monodoc_DATA)
 	@$(NORMAL_INSTALL)
-	test -z "$(monodocdir)" || $(MKDIR_P) "$(DESTDIR)$(monodocdir)"
 	@list='$(monodoc_DATA)'; test -n "$(monodocdir)" || list=; \
+	if test -n "$$list"; then \
+	  echo " $(MKDIR_P) '$(DESTDIR)$(monodocdir)'"; \
+	  $(MKDIR_P) "$(DESTDIR)$(monodocdir)" || exit 1; \
+	fi; \
 	for p in $$list; do \
 	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
 	  echo "$$d$$p"; \
@@ -244,9 +276,7 @@ uninstall-monodocDATA:
 	@$(NORMAL_UNINSTALL)
 	@list='$(monodoc_DATA)'; test -n "$(monodocdir)" || list=; \
 	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
-	test -n "$$files" || exit 0; \
-	echo " ( cd '$(DESTDIR)$(monodocdir)' && rm -f" $$files ")"; \
-	cd "$(DESTDIR)$(monodocdir)" && rm -f $$files
+	dir='$(DESTDIR)$(monodocdir)'; $(am__uninstall_files_from_dir)
 tags: TAGS
 TAGS:
 
@@ -301,10 +331,15 @@ install-am: all-am
 
 installcheck: installcheck-am
 install-strip:
-	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	  `test -z '$(STRIP)' || \
-	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+	if test -z '$(STRIP)'; then \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	      install; \
+	else \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+	fi
 mostlyclean-generic:
 
 clean-generic:
diff --git a/examples/Makefile.in b/examples/Makefile.in
index 09eec07..fdf6dcf 100644
--- a/examples/Makefile.in
+++ b/examples/Makefile.in
@@ -1,9 +1,9 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.5 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,6 +15,23 @@
 
 @SET_MAKE@
 VPATH = @srcdir@
+am__make_dryrun = \
+  { \
+    am__dry=no; \
+    case $$MAKEFLAGS in \
+      *\\[\ \	]*) \
+        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
+          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+      *) \
+        for am__flg in $$MAKEFLAGS; do \
+          case $$am__flg in \
+            *=*|--*) ;; \
+            *n*) am__dry=yes; break;; \
+          esac; \
+        done;; \
+    esac; \
+    test $$am__dry = yes; \
+  }
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -44,6 +61,11 @@ CONFIG_CLEAN_FILES =
 CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AL = @AL@
@@ -68,6 +90,7 @@ GACUTIL_FLAGS = @GACUTIL_FLAGS@
 GACUTIL_POLICY_FLAGS = @GACUTIL_POLICY_FLAGS@
 GNOME_SHARP_CFLAGS = @GNOME_SHARP_CFLAGS@
 GNOME_SHARP_LIBS = @GNOME_SHARP_LIBS@
+GREP = @GREP@
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -245,10 +268,15 @@ install-am: all-am
 
 installcheck: installcheck-am
 install-strip:
-	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	  `test -z '$(STRIP)' || \
-	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+	if test -z '$(STRIP)'; then \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	      install; \
+	else \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+	fi
 mostlyclean-generic:
 
 clean-generic:
diff --git a/install-sh b/install-sh
index 6781b98..a9244eb 100755
--- a/install-sh
+++ b/install-sh
@@ -1,7 +1,7 @@
 #!/bin/sh
 # install - install a program, script, or datafile
 
-scriptversion=2009-04-28.21; # UTC
+scriptversion=2011-01-19.21; # UTC
 
 # This originates from X11R5 (mit/util/scripts/install.sh), which was
 # later released in X11R6 (xc/config/util/install.sh) with the
@@ -156,6 +156,10 @@ while test $# -ne 0; do
     -s) stripcmd=$stripprog;;
 
     -t) dst_arg=$2
+	# Protect names problematic for `test' and other utilities.
+	case $dst_arg in
+	  -* | [=\(\)!]) dst_arg=./$dst_arg;;
+	esac
 	shift;;
 
     -T) no_target_directory=true;;
@@ -186,6 +190,10 @@ if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
     fi
     shift # arg
     dst_arg=$arg
+    # Protect names problematic for `test' and other utilities.
+    case $dst_arg in
+      -* | [=\(\)!]) dst_arg=./$dst_arg;;
+    esac
   done
 fi
 
@@ -200,7 +208,11 @@ if test $# -eq 0; then
 fi
 
 if test -z "$dir_arg"; then
-  trap '(exit $?); exit' 1 2 13 15
+  do_exit='(exit $ret); exit $ret'
+  trap "ret=129; $do_exit" 1
+  trap "ret=130; $do_exit" 2
+  trap "ret=141; $do_exit" 13
+  trap "ret=143; $do_exit" 15
 
   # Set umask so as not to create temps with too-generous modes.
   # However, 'strip' requires both read and write access to temps.
@@ -228,9 +240,9 @@ fi
 
 for src
 do
-  # Protect names starting with `-'.
+  # Protect names problematic for `test' and other utilities.
   case $src in
-    -*) src=./$src;;
+    -* | [=\(\)!]) src=./$src;;
   esac
 
   if test -n "$dir_arg"; then
@@ -252,12 +264,7 @@ do
       echo "$0: no destination specified." >&2
       exit 1
     fi
-
     dst=$dst_arg
-    # Protect names starting with `-'.
-    case $dst in
-      -*) dst=./$dst;;
-    esac
 
     # If destination is a directory, append the input filename; won't work
     # if double slashes aren't ignored.
@@ -385,7 +392,7 @@ do
 
       case $dstdir in
 	/*) prefix='/';;
-	-*) prefix='./';;
+	[-=\(\)!]*) prefix='./';;
 	*)  prefix='';;
       esac
 
@@ -403,7 +410,7 @@ do
 
       for d
       do
-	test -z "$d" && continue
+	test X"$d" = X && continue
 
 	prefix=$prefix$d
 	if test -d "$prefix"; then
diff --git a/missing b/missing
index 28055d2..86a8fc3 100755
--- a/missing
+++ b/missing
@@ -1,10 +1,10 @@
 #! /bin/sh
 # Common stub for a few missing GNU programs while installing.
 
-scriptversion=2009-04-28.21; # UTC
+scriptversion=2012-01-06.13; # UTC
 
 # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
-# 2008, 2009 Free Software Foundation, Inc.
+# 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
 # Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
@@ -84,7 +84,6 @@ Supported PROGRAM values:
   help2man     touch the output file
   lex          create \`lex.yy.c', if possible, from existing .c
   makeinfo     touch the output file
-  tar          try tar, gnutar, gtar, then tar without non-portable flags
   yacc         create \`y.tab.[ch]', if possible, from existing .[ch]
 
 Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
@@ -122,15 +121,6 @@ case $1 in
     # Not GNU programs, they don't have --version.
     ;;
 
-  tar*)
-    if test -n "$run"; then
-       echo 1>&2 "ERROR: \`tar' requires --run"
-       exit 1
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
-       exit 1
-    fi
-    ;;
-
   *)
     if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
        # We have it, but it failed.
@@ -226,7 +216,7 @@ WARNING: \`$1' $msg.  You should only need it if
          \`Bison' from any GNU archive site."
     rm -f y.tab.c y.tab.h
     if test $# -ne 1; then
-        eval LASTARG="\${$#}"
+        eval LASTARG=\${$#}
 	case $LASTARG in
 	*.y)
 	    SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
@@ -256,7 +246,7 @@ WARNING: \`$1' is $msg.  You should only need it if
          \`Flex' from any GNU archive site."
     rm -f lex.yy.c
     if test $# -ne 1; then
-        eval LASTARG="\${$#}"
+        eval LASTARG=\${$#}
 	case $LASTARG in
 	*.l)
 	    SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
@@ -318,41 +308,6 @@ WARNING: \`$1' is $msg.  You should only need it if
     touch $file
     ;;
 
-  tar*)
-    shift
-
-    # We have already tried tar in the generic part.
-    # Look for gnutar/gtar before invocation to avoid ugly error
-    # messages.
-    if (gnutar --version > /dev/null 2>&1); then
-       gnutar "$@" && exit 0
-    fi
-    if (gtar --version > /dev/null 2>&1); then
-       gtar "$@" && exit 0
-    fi
-    firstarg="$1"
-    if shift; then
-	case $firstarg in
-	*o*)
-	    firstarg=`echo "$firstarg" | sed s/o//`
-	    tar "$firstarg" "$@" && exit 0
-	    ;;
-	esac
-	case $firstarg in
-	*h*)
-	    firstarg=`echo "$firstarg" | sed s/h//`
-	    tar "$firstarg" "$@" && exit 0
-	    ;;
-	esac
-    fi
-
-    echo 1>&2 "\
-WARNING: I can't seem to be able to run \`tar' with the given arguments.
-         You may want to install GNU tar or Free paxutils, or check the
-         command line arguments."
-    exit 1
-    ;;
-
   *)
     echo 1>&2 "\
 WARNING: \`$1' is needed, and is $msg.
diff --git a/src/AssemblyInfo.cs b/src/AssemblyInfo.cs
new file mode 100644
index 0000000..a9f4828
--- /dev/null
+++ b/src/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+//
+// AssemblyInfo.cs.in: Contains flags to use for the assembly.
+//
+// Author:
+//   Brian Nickel (brian.nickel@gmail.com)
+//
+// Copyright (C) 2006-2007 Brian Nickel
+// 
+// This library is free software; you can redistribute it and/or modify
+// it  under the terms of the GNU Lesser General Public License version
+// 2.1 as published by the Free Software Foundation.
+//
+// This library 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 library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
+// USA
+//
+
+using System;
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+[assembly:AssemblyVersion("2.1.0.0")]
+[assembly:AssemblyTitle ("TagLib#")]
+[assembly:AssemblyDescription ("A library for reading and writing audio metatags.")]
+[assembly:AssemblyCopyright ("Copyright (c) 2006-2007 Brian Nickel.  Copyright (c) 2009-2010 Other contributors")]
+[assembly:AssemblyCompany ("")]
+[assembly:AssemblyDelaySign(false)]
+[assembly:AssemblyKeyFile("taglib-sharp.snk")]
+[assembly:CLSCompliant(false)]
diff --git a/src/Makefile.in b/src/Makefile.in
index ce3ca59..b4804f7 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -1,9 +1,9 @@
-# Makefile.in generated by automake 1.11.1 from Makefile.am.
+# Makefile.in generated by automake 1.11.5 from Makefile.am.
 # @configure_input@
 
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
-# Inc.
+# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software
+# Foundation, Inc.
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -15,6 +15,23 @@
 
 @SET_MAKE@
 VPATH = @srcdir@
+am__make_dryrun = \
+  { \
+    am__dry=no; \
+    case $$MAKEFLAGS in \
+      *\\[\ \	]*) \
+        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
+          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
+      *) \
+        for am__flg in $$MAKEFLAGS; do \
+          case $$am__flg in \
+            *=*|--*) ;; \
+            *n*) am__dry=yes; break;; \
+          esac; \
+        done;; \
+    esac; \
+    test $$am__dry = yes; \
+  }
 pkgdatadir = $(datadir)/@PACKAGE@
 pkgincludedir = $(includedir)/@PACKAGE@
 pkglibdir = $(libdir)/@PACKAGE@
@@ -44,6 +61,11 @@ CONFIG_CLEAN_FILES = AssemblyInfo.cs policy.2.0.taglib-sharp.config
 CONFIG_CLEAN_VPATH_FILES =
 SOURCES =
 DIST_SOURCES =
+am__can_run_installinfo = \
+  case $$AM_UPDATE_INFO_DIR in \
+    n|no|NO) false;; \
+    *) (install-info --version) >/dev/null 2>&1;; \
+  esac
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 ACLOCAL = @ACLOCAL@
 AL = @AL@
@@ -68,6 +90,7 @@ GACUTIL_FLAGS = @GACUTIL_FLAGS@
 GACUTIL_POLICY_FLAGS = @GACUTIL_POLICY_FLAGS@
 GNOME_SHARP_CFLAGS = @GNOME_SHARP_CFLAGS@
 GNOME_SHARP_LIBS = @GNOME_SHARP_LIBS@
+GREP = @GREP@
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
@@ -154,232 +177,10 @@ TARGET = $(ASSEMBLY)
 @HAVE_SHARPZIPLIB_TRUE@SHARPZIPLIB_FLAGS = -r:ICSharpCode.SharpZipLib.dll -define:HAVE_SHARPZIPLIB
 CSC = $(MCS) $(MCS_FLAGS) $(CSFLAGS)
 TAGLIB_CSFILES = \
-	$(srcdir)/TagLib/Aac/AudioHeader.cs \
-	$(srcdir)/TagLib/Aac/BitStream.cs \
-	$(srcdir)/TagLib/Aac/File.cs \
-	$(srcdir)/TagLib/Aiff/File.cs \
-	$(srcdir)/TagLib/Aiff/StreamHeader.cs \
-	$(srcdir)/TagLib/Ape/Tag.cs \
-	$(srcdir)/TagLib/Ape/Item.cs \
-	$(srcdir)/TagLib/Ape/Footer.cs \
-	$(srcdir)/TagLib/Ape/File.cs \
-	$(srcdir)/TagLib/Ape/StreamHeader.cs \
-	$(srcdir)/TagLib/Asf/Guid.cs \
-	$(srcdir)/TagLib/Asf/StreamPropertiesObject.cs \
-	$(srcdir)/TagLib/Asf/UnknownObject.cs \
-	$(srcdir)/TagLib/Asf/Tag.cs \
-	$(srcdir)/TagLib/Asf/Object.cs \
-	$(srcdir)/TagLib/Asf/ExtendedContentDescriptionObject.cs \
-	$(srcdir)/TagLib/Asf/ContentDescriptionObject.cs \
-	$(srcdir)/TagLib/Asf/MetadataLibraryObject.cs \
-	$(srcdir)/TagLib/Asf/HeaderObject.cs \
-	$(srcdir)/TagLib/Asf/HeaderExtensionObject.cs \
-	$(srcdir)/TagLib/Asf/File.cs \
-	$(srcdir)/TagLib/Asf/FilePropertiesObject.cs \
-	$(srcdir)/TagLib/Asf/PaddingObject.cs \
-	$(srcdir)/TagLib/Asf/ContentDescriptor.cs \
-	$(srcdir)/TagLib/Asf/DescriptionRecord.cs \
-	$(srcdir)/TagLib/Mpc/StreamHeader.cs \
-	$(srcdir)/TagLib/Mpc/File.cs \
-	$(srcdir)/TagLib/Ogg/GroupedComment.cs \
-	$(srcdir)/TagLib/Ogg/Bitstream.cs \
-	$(srcdir)/TagLib/Ogg/Paginator.cs \
-	$(srcdir)/TagLib/Ogg/Codec.cs \
-	$(srcdir)/TagLib/Ogg/Codecs/Vorbis.cs \
-	$(srcdir)/TagLib/Ogg/Codecs/Theora.cs \
-	$(srcdir)/TagLib/Ogg/Page.cs \
-	$(srcdir)/TagLib/Ogg/XiphComment.cs \
-	$(srcdir)/TagLib/Ogg/PageHeader.cs \
-	$(srcdir)/TagLib/Ogg/File.cs \
-	$(srcdir)/TagLib/Png/Codec.cs \
-	$(srcdir)/TagLib/Png/File.cs \
-	$(srcdir)/TagLib/Png/PngTag.cs \
-	$(srcdir)/TagLib/Flac/Block.cs \
-	$(srcdir)/TagLib/Flac/BlockHeader.cs \
-	$(srcdir)/TagLib/Flac/StreamHeader.cs \
-	$(srcdir)/TagLib/Flac/Picture.cs \
-	$(srcdir)/TagLib/Flac/File.cs \
-	$(srcdir)/TagLib/Gif/Codec.cs \
-	$(srcdir)/TagLib/Gif/File.cs \
-	$(srcdir)/TagLib/Gif/GifCommentTag.cs \
-	$(srcdir)/TagLib/Image/Codec.cs \
-	$(srcdir)/TagLib/Image/CombinedImageTag.cs \
-	$(srcdir)/TagLib/Image/File.cs \
-	$(srcdir)/TagLib/Image/ImageBlockFile.cs \
-	$(srcdir)/TagLib/Image/ImageTag.cs \
-	$(srcdir)/TagLib/Image/ImageOrientation.cs \
-	$(srcdir)/TagLib/Image/NoMetadata/File.cs \
-	$(srcdir)/TagLib/Jpeg/Codec.cs \
-	$(srcdir)/TagLib/Jpeg/File.cs \
-	$(srcdir)/TagLib/Jpeg/JpegCommentTag.cs \
-	$(srcdir)/TagLib/Jpeg/Marker.cs \
-	$(srcdir)/TagLib/Jpeg/Table.cs \
-	$(srcdir)/TagLib/Matroska/AudioTrack.cs \
-	$(srcdir)/TagLib/Matroska/EBMLElement.cs \
-	$(srcdir)/TagLib/Matroska/EBMLIDs.cs \
-	$(srcdir)/TagLib/Matroska/File.cs \
-	$(srcdir)/TagLib/Matroska/MatroskaIDs.cs \
-	$(srcdir)/TagLib/Matroska/SubtitleTrack.cs \
-	$(srcdir)/TagLib/Matroska/Tag.cs \
-	$(srcdir)/TagLib/Matroska/Track.cs \
-	$(srcdir)/TagLib/Matroska/VideoTrack.cs \
-	$(srcdir)/TagLib/Mpeg/XingHeader.cs \
-	$(srcdir)/TagLib/Mpeg/VBRIHeader.cs \
-	$(srcdir)/TagLib/Mpeg/File.cs \
-	$(srcdir)/TagLib/Mpeg/AudioFile.cs \
-	$(srcdir)/TagLib/Mpeg/AudioHeader.cs \
-	$(srcdir)/TagLib/Mpeg/VideoHeader.cs \
-	$(srcdir)/TagLib/NonContainer/EndTag.cs \
-	$(srcdir)/TagLib/NonContainer/File.cs \
-	$(srcdir)/TagLib/NonContainer/StartTag.cs \
-	$(srcdir)/TagLib/NonContainer/Tag.cs \
-	$(srcdir)/TagLib/Id3v1/Tag.cs \
-	$(srcdir)/TagLib/Id3v1/StringHandler.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/PopularimeterFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/PlayCountFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/PrivateFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/RelativeVolumeFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/UniqueFileIdentifierFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/UnknownFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/CommentsFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/TextIdentificationFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/AttachedPictureFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/GeneralEncapsulatedObjectFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/UnsynchronisedLyricsFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/SynchronizedLyricsFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/MusicCdIdentifierFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/TermsOfUseFrame.cs \
-	$(srcdir)/TagLib/Id3v2/FrameFactory.cs \
-	$(srcdir)/TagLib/Id3v2/Frame.cs \
-	$(srcdir)/TagLib/Id3v2/FrameTypes.cs \
-	$(srcdir)/TagLib/Id3v2/Tag.cs \
-	$(srcdir)/TagLib/Id3v2/FrameHeader.cs \
-	$(srcdir)/TagLib/Id3v2/ExtendedHeader.cs \
-	$(srcdir)/TagLib/Id3v2/SynchData.cs \
-	$(srcdir)/TagLib/Id3v2/Header.cs \
-	$(srcdir)/TagLib/Id3v2/Footer.cs \
-	$(srcdir)/TagLib/IFD/Entries/ByteIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/ByteVectorIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/LongArrayIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/LongIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/MakernoteIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/RationalArrayIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/RationalIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/Rational.cs \
-	$(srcdir)/TagLib/IFD/Entries/SByteIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/ShortArrayIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/ShortIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SLongArrayIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SLongIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SRationalArrayIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SRationalIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SShortArrayIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SShortIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SRational.cs \
-	$(srcdir)/TagLib/IFD/Entries/StringIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/StripOffsetsIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SubIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SubIFDArrayEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/ThumbnailDataIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/UserCommentIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/UndefinedIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/IFDEntry.cs \
-	$(srcdir)/TagLib/IFD/IFDEntryType.cs \
-	$(srcdir)/TagLib/IFD/IFDTag.cs \
-	$(srcdir)/TagLib/IFD/IFDDirectory.cs \
-	$(srcdir)/TagLib/IFD/IFDStructure.cs \
-	$(srcdir)/TagLib/IFD/IFDReader.cs \
-	$(srcdir)/TagLib/IFD/IFDRenderer.cs \
-	$(srcdir)/TagLib/IFD/Makernotes/Nikon3MakernoteReader.cs \
-	$(srcdir)/TagLib/IFD/Tags/CanonFileInfoEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/CanonMakerNoteEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/CanonPictureInfoEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/ExifEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/GPSEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/IFDEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/IOPEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/PentaxMakerNoteEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/OlympusMakerNoteEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/Nikon3MakerNoteEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/NikonLensData3EntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/NikonIsoInfoEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/NikonPreviewMakerNoteEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/NikonPictureControlEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/NikonShotInfoEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/NikonVibrationReductionEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/NikonWorldTimeEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/PanasonicMakerNoteEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/SonyMakerNoteEntryTag.cs \
-	$(srcdir)/TagLib/Mpeg4/AppleTag.cs \
-	$(srcdir)/TagLib/Mpeg4/Box.cs \
-	$(srcdir)/TagLib/Mpeg4/BoxFactory.cs \
-	$(srcdir)/TagLib/Mpeg4/BoxHeader.cs \
-	$(srcdir)/TagLib/Mpeg4/BoxTypes.cs \
-	$(srcdir)/TagLib/Mpeg4/File.cs \
-	$(srcdir)/TagLib/Mpeg4/FileParser.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoFreeSpaceBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/UnknownBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoUserDataBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoChunkOffsetBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoChunkLargeOffsetBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/AppleItemListBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/AppleAnnotationBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoSampleTableBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoSampleEntry.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoAudioSampleEntry.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoVisualSampleEntry.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoMetaBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoSampleDescriptionBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/AppleAdditionalInfoBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoHandlerBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoMovieHeaderBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/FullBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/AppleElementaryStreamDescriptor.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/AppleDataBox.cs \
-	$(srcdir)/TagLib/Riff/AviHeaderList.cs \
-	$(srcdir)/TagLib/Riff/AviStream.cs \
-	$(srcdir)/TagLib/Riff/WaveFormatEx.cs \
-	$(srcdir)/TagLib/Riff/BitmapInfoHeader.cs \
-	$(srcdir)/TagLib/Riff/DivXTag.cs \
-	$(srcdir)/TagLib/Riff/File.cs \
-	$(srcdir)/TagLib/Riff/InfoTag.cs \
-	$(srcdir)/TagLib/Riff/List.cs \
-	$(srcdir)/TagLib/Riff/ListTag.cs \
-	$(srcdir)/TagLib/Riff/MovieIdTag.cs \
-	$(srcdir)/TagLib/Tiff/BaseTiffFile.cs \
-	$(srcdir)/TagLib/Tiff/Codec.cs \
-	$(srcdir)/TagLib/Tiff/File.cs \
-	$(srcdir)/TagLib/Tiff/Arw/File.cs \
-	$(srcdir)/TagLib/Tiff/Cr2/File.cs \
-	$(srcdir)/TagLib/Tiff/Dng/File.cs \
-	$(srcdir)/TagLib/Tiff/Nef/File.cs \
-	$(srcdir)/TagLib/Tiff/Pef/File.cs \
-	$(srcdir)/TagLib/Tiff/Rw2/File.cs \
-	$(srcdir)/TagLib/Tiff/Rw2/IFDReader.cs \
-	$(srcdir)/TagLib/Tiff/Rw2/IFDTag.cs \
-	$(srcdir)/TagLib/WavPack/File.cs \
-	$(srcdir)/TagLib/WavPack/StreamHeader.cs \
-	$(srcdir)/TagLib/Xmp/XmlNodeExtensions.cs \
-	$(srcdir)/TagLib/Xmp/XmpTag.cs \
-	$(srcdir)/TagLib/Xmp/XmpNode.cs \
-	$(srcdir)/TagLib/Xmp/XmpNodeType.cs \
-	$(srcdir)/TagLib/Xmp/XmpNodeVisitor.cs \
-	$(srcdir)/TagLib/ICodec.cs \
-	$(srcdir)/TagLib/Tag.cs \
-	$(srcdir)/TagLib/ReadOnlyByteVector.cs \
-	$(srcdir)/TagLib/ByteVector.cs \
-	$(srcdir)/TagLib/ByteVectorList.cs \
-	$(srcdir)/TagLib/CombinedTag.cs \
-	$(srcdir)/TagLib/Genres.cs \
-	$(srcdir)/TagLib/Properties.cs \
-	$(srcdir)/TagLib/File.cs \
-	$(srcdir)/TagLib/StringList.cs \
-	$(srcdir)/TagLib/SupportedMimeType.cs \
-	$(srcdir)/TagLib/UnsupportedFormatException.cs \
-	$(srcdir)/TagLib/Picture.cs \
-	$(srcdir)/TagLib/ListBase.cs \
-	$(srcdir)/TagLib/FileTypes.cs \
-	$(srcdir)/TagLib/CorruptFileException.cs
+	$(wildcard *.cs)	\
+	$(wildcard */*.cs)	\
+	$(wildcard */*/*.cs)	\
+	$(wildcard */*/*/*.cs)
 
 taglib_sources_in = AssemblyInfo.cs.in
 taglib_generated_sources = $(taglib_sources_in:.in=)
@@ -414,6 +215,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
 	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
 	esac;
+$(srcdir)/TagLib/TagLib.sources:
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
 	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
@@ -478,10 +280,15 @@ install-am: all-am
 
 installcheck: installcheck-am
 install-strip:
-	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
-	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
-	  `test -z '$(STRIP)' || \
-	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+	if test -z '$(STRIP)'; then \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	      install; \
+	else \
+	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+	fi
 mostlyclean-generic:
 
 clean-generic:
diff --git a/src/TagLib/Audible/File.cs b/src/TagLib/Audible/File.cs
new file mode 100644
index 0000000..1b55842
--- /dev/null
+++ b/src/TagLib/Audible/File.cs
@@ -0,0 +1,270 @@
+//
+// File.cs:
+//
+// Author:
+//   Guy Taylor (s0700260@sms.ed.ac.uk) (thebigguy.co.uk@gmail.com)
+//
+// Original Source:
+//   Ogg/File.cs from TagLib-sharp
+//
+// Copyright (C) 2009 Guy Taylor (Original Implementation)
+//
+// This library is free software; you can redistribute it and/or modify
+// it  under the terms of the GNU Lesser General Public License version
+// 2.1 as published by the Free Software Foundation.
+//
+// This library 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 library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
+// USA
+//
+using System;
+
+namespace TagLib.Audible
+{
+	/// <summary>
+	///    This class extends <see cref="TagLib.File" /> to provide tagging
+	///    and properties support for Audible inc's aa file format.
+	/// </summary>
+	[SupportedMimeType("audio/x-audible")]
+	[SupportedMimeType("taglib/aa", "aa")]
+	[SupportedMimeType("taglib/aax", "aax")]
+	public class File : TagLib.File
+	{
+		
+		#region Private Fields
+		
+		/// <summary>
+		///   Contains the tags for the file.
+		/// </summary>
+		private TagLib.Tag tag;
+		
+		/// <summary>
+		///    Contains the media properties.
+		/// </summary>
+		private Properties properties = new Properties();
+		
+		#endregion	
+		
+		#region Public Static Fields
+		
+		/// <summary>
+		///    The offset to the tag block.
+		/// </summary>
+		public const short TagBlockOffset = 0xBD;
+		
+		/// <summary>
+		///    The offset to the end of tag pointer.
+		/// </summary>
+		public const short OffsetToEndTagPointer = 0x38;
+
+		#endregion
+		
+		#region Constructors
+		
+		/// <summary>
+		///    Constructs and initializes a new instance of <see
+		///    cref="File" /> for a specified path in the local file
+		///    system and specified read style.
+		/// </summary>
+		/// <param name="path">
+		///    A <see cref="string" /> object containing the path of the
+		///    file to use in the new instance.
+		/// </param>
+		/// <param name="propertiesStyle">
+		///    A <see cref="ReadStyle" /> value specifying at what level
+		///    of accuracy to read the media properties, or <see
+		///    cref="ReadStyle.None" /> to ignore the properties.
+		/// </param>
+		/// <exception cref="ArgumentNullException">
+		///    <paramref name="path" /> is <see langword="null" />.
+		/// </exception>
+		public File (string path, ReadStyle propertiesStyle)
+			: this (new File.LocalFileAbstraction (path),
+				propertiesStyle)
+		{
+		}
+
+		/// <summary>
+		///    Constructs and initializes a new instance of <see
+		///    cref="File" /> for a specified path in the local file
+		///    system with an average read style.
+		/// </summary>
+		/// <param name="path">
+		///    A <see cref="string" /> object containing the path of the
+		///    file to use in the new instance.
+		/// </param>
+		/// <exception cref="ArgumentNullException">
+		///    <paramref name="path" /> is <see langword="null" />.
+		/// </exception>
+		public File (string path) : this (path, ReadStyle.Average)
+		{
+		}
+		
+		/// <summary>
+		///    Constructs and initializes a new instance of <see
+		///    cref="File" /> for a specified file abstraction and
+		///    specified read style.
+		/// </summary>
+		/// <param name="abstraction">
+		///    A <see cref="IFileAbstraction" /> object to use when
+		///    reading from and writing to the file.
+		/// </param>
+		/// <param name="propertiesStyle">
+		///    A <see cref="ReadStyle" /> value specifying at what level
+		///    of accuracy to read the media properties, or <see
+		///    cref="ReadStyle.None" /> to ignore the properties.
+		/// </param>
+		/// <exception cref="ArgumentNullException">
+		///    <paramref name="abstraction" /> is <see langword="null"
+		///    />.
+		/// </exception>
+		/// <exception cref="CorruptFileException">
+		///    The file is not the write length.
+		/// </exception>
+		public File (File.IFileAbstraction abstraction,
+		             ReadStyle propertiesStyle) : base (abstraction)
+		{			
+			
+			Mode = AccessMode.Read;
+			
+			try {
+				// get the pointer to the end of the tag block
+				// and calculate the tag block length
+				Seek (OffsetToEndTagPointer);
+				int tagLen = ( (int) ReadBlock(4).ToUInt(true) ) - TagBlockOffset;
+				
+				// read the whole tag and send to Tag class
+				Seek (TagBlockOffset);
+				ByteVector bv = ReadBlock(tagLen);
+				
+				tag = new  TagLib.Audible.Tag( bv );
+				
+			} finally {
+				Mode = AccessMode.Closed;
+			}
+			
+			// ??
+			TagTypesOnDisk = TagTypes;
+			
+		}
+		
+		/// <summary>
+		///    Constructs and initializes a new instance of <see
+		///    cref="File" /> for a specified file abstraction with an
+		///    average read style.
+		/// </summary>
+		/// <param name="abstraction">
+		///    A <see cref="IFileAbstraction" /> object to use when
+		///    reading from and writing to the file.
+		/// </param>
+		/// <exception cref="ArgumentNullException">
+		///    <paramref name="abstraction" /> is <see langword="null"
+		///    />.
+		/// </exception>
+		public File (File.IFileAbstraction abstraction)
+			: this (abstraction, ReadStyle.Average)
+		{
+		}
+		
+		#endregion
+		
+		#region Public Methods
+		
+		/// <summary>
+		///    Saves the changes made in the current instance to the
+		///    file it represents.
+		/// </summary>
+		/// <remarks>
+		/// 	Currently this does not work as there is not enough
+		/// 	information about the file format
+		/// </remarks>
+		public override void Save ()
+		{
+		}
+		
+		/// <summary>
+		///    Removes a set of tag types from the current instance.
+		/// </summary>
+		/// <param name="types">
+		///    A bitwise combined <see cref="TagLib.TagTypes" /> value
+		///    containing tag types to be removed from the file.
+		/// </param>
+		/// <remarks>
+		///    In order to remove all tags from a file, pass <see
+		///    cref="TagTypes.AllTags" /> as <paramref name="types" />.
+		/// </remarks>
+		/// <remarks>
+		/// 	Currently this does not work as there is not enough
+		/// 	information about the file format
+		/// </remarks>
+		public override void RemoveTags (TagLib.TagTypes types)
+		{
+		}
+		
+		/// <summary>
+		///    Gets a tag of a specified type from the current instance,
+		///    optionally creating a new tag if possible.
+		/// </summary>
+		/// <param name="type">
+		///    A <see cref="TagLib.TagTypes" /> value indicating the
+		///    type of tag to read.
+		/// </param>
+		/// <param name="create">
+		///    A <see cref="bool" /> value specifying whether or not to
+		///    try and create the tag if one is not found.
+		/// </param>
+		/// <returns>
+		///    A <see cref="Tag" /> object containing the tag that was
+		///    found in or added to the current instance. If no
+		///    matching tag was found and none was created, <see
+		///    langword="null" /> is returned.
+		/// </returns>
+		public override TagLib.Tag GetTag (TagTypes type, bool create)
+		{
+			if (type == TagTypes.AudibleMetadata)
+				return tag;
+			
+			return null;
+
+		}
+#endregion
+		
+		
+		
+		#region Public Properties
+		
+		/// <summary>
+		///    Gets a abstract representation of all tags stored in the
+		///    current instance.
+		/// </summary>
+		/// <value>
+		///    A <see cref="TagLib.Tag" /> object representing all tags
+		///    stored in the current instance.
+		/// </value>
+		public override TagLib.Tag Tag {
+			get {return tag;}
+		}
+		
+		/// <summary>
+		///    Gets the media properties of the file represented by the
+		///    current instance.
+		/// </summary>
+		/// <value>
+		///    A <see cref="TagLib.Properties" /> object containing the
+		///    media properties of the file represented by the current
+		///    instance.
+		/// </value>
+		public override TagLib.Properties Properties {
+			get {return properties;}
+		}
+		
+		#endregion
+		
+	}
+}
diff --git a/src/TagLib/Audible/Tag.cs b/src/TagLib/Audible/Tag.cs
new file mode 100644
index 0000000..508d55c
--- /dev/null
+++ b/src/TagLib/Audible/Tag.cs
@@ -0,0 +1,307 @@
+//
+// Tag.cs:
+//
+// Author:
+//   Guy Taylor (s0700260@sms.ed.ac.uk) (thebigguy.co.uk@gmail.com)
+//
+// Original Source:
+//   Id3v1/Tag.cs from TagLib-sharp
+//
+// Copyright (C) 2009 Guy Taylor (Original Implementation)
+//
+// This library is free software; you can redistribute it and/or modify
+// it  under the terms of the GNU Lesser General Public License version
+// 2.1 as published by the Free Software Foundation.
+//
+// This library 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 library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
+// USA
+//
+using System;
+using System.Collections.Generic;
+
+namespace TagLib.Audible
+{
+	
+	/// <summary>
+	///    This class extends <see cref="Tag" /> to provide support for
+	///    reading tags stored in the Audible Metadata format.
+	/// </summary>
+	public class Tag : TagLib.Tag
+	{
+		#region Private Fields
+		
+		private List<KeyValuePair<string, string>> tags;
+		
+		#endregion
+		
+		#region Constructors
+		
+		/// <summary>
+		///    Constructs and initializes a new instance of <see
+		///    cref="Tag" /> with no contents.
+		/// </summary>
+		public Tag ()
+		{
+			Clear ();
+		}
+		
+		/// <summary>
+		///    Constructs and initializes a new instance of <see
+		///    cref="Tag" /> by reading the contents from a specified
+		///    position in a specified file.
+		/// </summary>
+		/// <param name="file">
+		///    A <see cref="File" /> object containing the file from
+		///    which the contents of the new instance is to be read.
+		/// </param>
+		/// <param name="position">
+		///    A <see cref="long" /> value specify at what position to
+		///    read the tag.
+		/// </param>
+		/// <exception cref="ArgumentNullException">
+		///    <paramref name="file" /> is <see langword="null" />.
+		/// </exception>
+		/// <exception cref="ArgumentOutOfRangeException">
+		///    <paramref name="position" /> is less than zero or greater
+		///    than the size of the file.
+		/// </exception>
+		/// <exception cref="CorruptFileException">
+		///    The file does not contain <see cref="FileIdentifier" />
+		///    at the given position.
+		/// </exception>
+		public Tag (File file, long position)
+		{
+			// TODO: can we read from file
+		}
+		
+		/// <summary>
+		///    Constructs and initializes a new instance of <see
+		///    cref="Tag" /> by reading the contents from a specified
+		///    <see cref="ByteVector" /> object.
+		/// </summary>
+		/// <param name="data">
+		///    A <see cref="ByteVector" /> object to read the tag from.
+		/// </param>
+		/// <exception cref="ArgumentNullException">
+		///    <paramref name="data" /> is <see langword="null" />.
+		/// </exception>
+		/// <exception cref="CorruptFileException">
+		///    <paramref name="data" /> is less than 128 bytes or does
+		///    not start with <see cref="FileIdentifier" />.
+		/// </exception>
+		public Tag (ByteVector data)
+		{
+			
+			if (data == null)
+				throw new ArgumentNullException ("data");
+			
+			Clear ();
+			Parse (data);
+		}
+		
+		#endregion
+		
+		#region Private Methods
+		
+		/// <summary>
+		///    Populates the current instance by parsing the contents of
+		///    a raw AudibleMetadata tag.
+		/// </summary>
+		/// <param name="data">
+		///    	A <see cref="ByteVector" /> object containing the whole tag
+		/// 	object
+		/// </param>
+		/// <exception cref="CorruptFileException">
+		///    <paramref name="data" /> is less than 128 bytes or does
+		///    not start with <see cref="FileIdentifier" />.
+		/// </exception>
+		private void Parse (ByteVector data)
+		{
+			String currentKey, currentValue;
+			int keyLen, valueLen;
+			
+			try
+			{
+				do
+				{
+					keyLen = (int) data.ToUInt(true);
+					data.RemoveRange (0, 4);
+					valueLen = (int) data.ToUInt(true);
+					data.RemoveRange (0, 4);
+					currentKey = data.ToString ( TagLib.StringType.UTF8, 0, keyLen );
+					data.RemoveRange (0, keyLen);
+					currentValue = data.ToString ( TagLib.StringType.UTF8, 0, valueLen );
+					data.RemoveRange (0, valueLen);
+					
+					tags.Add( new KeyValuePair<string, string>(currentKey, currentValue) );
+					
+					//StringHandle (currentKey, currentValue);
+					
+					// if it is not the last item remove the end byte (null terminated)
+					if (data.Count != 0)
+						data.RemoveRange(0,1);
+				}
+				while (data.Count >= 4);
+			}
+			catch (Exception e)
+			{
+				//
+			}
+			
+			if (data.Count != 0)
+				throw new CorruptFileException();
+		}
+
+		void setTag (string tagName, string value) {
+			for (int i = 0; i < tags.Count; i ++) {
+				if(tags[i].Key == tagName)
+					tags [i] = new KeyValuePair<string, string> (tags [i].Key, value);
+			}
+		}
+
+		private string getTag(string tagName){
+			foreach( KeyValuePair<string, string> tag in tags) {
+				if(tag.Key == tagName)
+					return tag.Value;
+			}
+			return null;
+		}
+
+		/*
+		/// <summary>
+		///		Given a key and value pair it will update the
+		///		present metadata.
+		/// </summary>
+		/// <param name="key">
+		///    A <see cref="String" /> containing the key.
+		/// </param>
+		/// <param name="strValue">
+		///    A <see cref="String" /> containing the value.
+		/// </param>
+		private void StringHandle (String key, String strValue)
+		{
+			switch (key)
+			{
+			case "title":
+				title = strValue;
+				break;
+			case "author":
+				artist = strValue;
+				break;
+			case "provider":
+				album = strValue;
+				break;
+			}
+			
+		}
+		*/
+		
+		#endregion	
+		
+		#region TagLib.Tag
+		
+		/// <summary>
+		///    Gets the tag types contained in the current instance.
+		/// </summary>
+		/// <value>
+		///    Always <see cref="TagTypes.AudibleMetadata" />.
+		/// </value>
+		public override TagTypes TagTypes {
+			get {return TagTypes.AudibleMetadata;}
+		}
+
+		public string Author {
+			get {
+				return getTag ("author");
+			}
+		}
+
+		public override string Copyright {
+			get {
+				return getTag ("copyright");
+			}
+			set {
+				setTag ("copyright", value);
+			}
+		}
+
+		public string Description {
+			get { return getTag ("description"); }
+		}
+
+		public string Narrator {
+			get {
+				return getTag ("narrator");
+			}
+		}
+		
+		/// <summary>
+		///    Gets the title for the media described by the
+		///    current instance.
+		/// </summary>
+		/// <value>
+		///    A <see cref="string" /> object containing the title for
+		///    the media described by the current instance or <see
+		///    langword="null" /> if no value is present.
+		/// </value>
+		public override string Title {
+			get {
+				return getTag("title");
+			}
+		}
+
+		/// <summary>
+		///    Gets the album for the media described by the
+		///    current instance.
+		/// </summary>
+		/// <value>
+		///    A <see cref="string" /> object containing the album for
+		///    the media described by the current instance or <see
+		///    langword="null" /> if no value is present.
+		/// </value>
+		public override string Album {
+			get {
+				return getTag("provider");
+				//return string.IsNullOrEmpty (album) ?
+				//	null : album;
+			}
+		}
+		
+		/// <summary>
+		///    Gets the album artist for the media described by the
+		///    current instance.
+		/// </summary>
+		/// <value>
+		///    	A <see cref="string[]" /> object containing a single 
+		/// 	artist described by the current instance or <see
+		///    langword="null" /> if no value is present.
+		/// </value>
+		public override string[] AlbumArtists {
+			get {
+				String artist = getTag("provider");
+				
+				return string.IsNullOrEmpty (artist) ?
+					null : new string[] {artist};
+			}
+		}
+		
+		/// <summary>
+		///    Clears the values stored in the current instance.
+		/// </summary>
+		public override void Clear ()
+		{
+			tags = new List<KeyValuePair<string, string>>();
+		}
+		
+		#endregion
+		
+	}
+}
+
diff --git a/src/TagLib/Debugger.cs b/src/TagLib/Debugger.cs
new file mode 100644
index 0000000..9825cc8
--- /dev/null
+++ b/src/TagLib/Debugger.cs
@@ -0,0 +1,144 @@
+//
+// Debugger.cs:
+//
+// Author:
+//   Brian Nickel (brian.nickel@gmail.com)
+//
+// Copyright (C) 2006-2007 Brian Nickel
+// 
+// This library is free software; you can redistribute it and/or modify
+// it  under the terms of the GNU Lesser General Public License version
+// 2.1 as published by the Free Software Foundation.
+//
+// This library 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 library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307
+// USA
+//
+
+using System;
+using System.Collections.Generic;
+
+namespace TagLib {
+	internal static class Debugger
+	{
+		public delegate void DebugMessageSentHandler (string message);
+
+		public static event DebugMessageSentHandler DebugMessageSent;
+
+		public static void Debug (string message)
+		{
+			if (DebugMessageSent != null)
+				DebugMessageSent (message);
+		}
+
+		public static void DumpHex (ByteVector data)
+		{
+			DumpHex (data.Data);
+		}
+		
+		public static void DumpHex (byte [] data)
+		{
+		        int cols = 16;
+		        int rows = data.Length / cols +
+		        	(data.Length % cols != 0 ? 1 : 0);
+			
+			for (int row = 0; row < rows; row ++) {
+				for (int col = 0; col < cols; col ++) {
+					if (row == rows - 1 &&
+						data.Length % cols != 0 &&
+						col >= data.Length % cols)
+						Console.Write ("   ");
+					else
+						Console.Write (" {0:x2}",
+							data [row * cols + col]);
+				}
+				
+				Console.Write (" | ");
+				
+				for (int col = 0; col < cols; col ++) {
+					if (row == rows - 1 &&
+						data.Length % cols != 0 &&
+						col >= data.Length % cols)
+						Console.Write (" ");
+					else
+						WriteByte2 (
+							data [row * cols + col]);
+				}
+				
+				Console.WriteLine ();
+			}
+			Console.WriteLine ();
+		}
+
+		private static void WriteByte2 (byte data)
+		{
+			foreach (char c in allowed)
+				if (c == data) {
+					Console.Write (c);
+					return;
+				}
+			
+			Console.Write (".");
+		}
+		
+		private static string allowed = "0123456789abcdefghijklmnopqr" +
+			"stuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ`~!@#$%^&*()_+-={}" +
+			"[];:'\",.<>?/\\|";
+
+
+		private static Dictionary <object, Dictionary <object, DebugTimeData>>
+			debug_times = new Dictionary <object, Dictionary <object, DebugTimeData>> ();
+
+		public static void AddDebugTime (object o1, object o2, DateTime start)
+		{
+			DebugTimeData data = new DebugTimeData (DateTime.Now - start, 1);
+			if (debug_times.ContainsKey (o1) && debug_times [o1].ContainsKey (o2)) {
+				data.time       += debug_times [o1][o2].time;
+				data.occurances += debug_times [o1][o2].occurances;
+			}
+
+			if (!debug_times.ContainsKey (o1))
+				debug_times.Add (o1, new Dictionary <object, DebugTimeData> ());
+
+			if (!debug_times [o1].ContainsKey (o2))
+				debug_times [o1].Add (o2, data);
+			else
+				debug_times [o1][o2] = data;
+		}
+
+		public static void DumpDebugTime (object o1)
+		{
+			Console.WriteLine (o1.ToString ());
+			if (!debug_times.ContainsKey (o1))
+				return;
+
+			foreach (KeyValuePair <object, DebugTimeData> pair in debug_times [o1]) {
+				Console.WriteLine ("  {0}", pair.Key.ToString ());
+				Console.WriteLine ("    Objects: {0}", pair.Value.time);
+				Console.WriteLine ("    Total:   {0}", pair.Value.occurances);
+				Console.WriteLine ("    Average: {0}", new TimeSpan (pair.Value.time.Ticks / pair.Value.occurances));
+				Console.WriteLine (String.Empty);
+			}
+			
+			debug_times.Remove (o1);
+		}
+
+		private struct DebugTimeData
+		{
+			public TimeSpan time;
+			public long occurances;
+
+			public DebugTimeData (TimeSpan time, int occurances)
+			{
+				this.time = time;
+				this.occurances = occurances;
+			}
+		}
+	}
+}
diff --git a/src/TagLib/File.cs b/src/TagLib/File.cs
index 0f359aa..df0b7fc 100644
--- a/src/TagLib/File.cs
+++ b/src/TagLib/File.cs
@@ -744,119 +744,34 @@ namespace TagLib {
 			// starts at.
 			
 			long buffer_offset = startPosition;
-			ByteVector buffer;
-			
-			// These variables are used to keep track of a partial
-			// match that happens at the end of a buffer.
-			
-			int previous_partial_match = -1;
-			int before_previous_partial_match = -1;
-			
-			// Save the location of the current read pointer.  We
-			// will restore the position using Seek() before all
-			// returns.
-			
 			long original_position = file_stream.Position;
-			
-			// Start the search at the offset.
-			
-			file_stream.Position = startPosition;
-			
-			// This loop is the crux of the find method.  There are
-			// three cases that we want to account for:
-			//
-			// (1) The previously searched buffer contained a
-			//     partial match of the search pattern and we want
-			//     to see if the next one starts with the remainder
-			//     of that pattern.
-			//
-			// (2) The search pattern is wholly contained within the
-			//     current buffer.
-			//
-			// (3) The current buffer ends with a partial match of
-			//     the pattern.  We will note this for use in the 
-			//     next iteration, where we will check for the rest 
-			//     of the pattern.
-			//
-			// All three of these are done in two steps.  First we
-			// check for the pattern and do things appropriately if
-			// a match (or partial match) is found.  We then check 
-			// for "before".  The order is important because it 
-			// gives priority to "real" matches.
-			
-			for (buffer = ReadBlock (buffer_size); 
-				buffer.Count > 0;
-				buffer = ReadBlock(buffer_size)) {
-				
-				// (1) previous partial match
-				
-				if (previous_partial_match >= 0 &&
-					buffer_size > previous_partial_match) {
-					int pattern_offset = buffer_size -
-						previous_partial_match;
-					
-					if (buffer.ContainsAt (pattern, 0,
-						pattern_offset)) {
-						
-						file_stream.Position =
-							original_position;
-						
-						return buffer_offset -
-							buffer_size +
-							previous_partial_match;
-					}
-				}
-				
-				if (before != null &&
-					before_previous_partial_match >= 0 &&
-					buffer_size >
-					before_previous_partial_match) {
-					
-					int before_offset = buffer_size -
-						before_previous_partial_match;
-					
-					if (buffer.ContainsAt (before, 0,
-						before_offset)) {
-						
-						file_stream.Position =
-							original_position;
-						
-						return -1;
+
+			try {
+				// Start the search at the offset.
+				file_stream.Position = startPosition;
+				for (var buffer = ReadBlock (buffer_size); buffer.Count > 0; buffer = ReadBlock(buffer_size)) {
+					var location = buffer.Find (pattern);
+					if (before != null) {
+						var beforeLocation = buffer.Find (before);
+						if (beforeLocation < location)
+							return -1;
 					}
+
+					if (location >= 0)
+						return buffer_offset + location;
+
+					// Ensure that we always rewind the stream a little so we never have a partial
+					// match where our data exists between the end of read A and the start of read B.
+					buffer_offset += buffer_size - pattern.Count;
+					if (before != null && before.Count > pattern.Count)
+						buffer_offset -= before.Count - pattern.Count;
+					file_stream.Position = buffer_offset;
 				}
 				
-				// (2) pattern contained in current buffer
-				
-				long location = buffer.Find (pattern);
-				
-				if (location >= 0) {
-					file_stream.Position = original_position;
-					return buffer_offset + location;
-				}
-				
-				if (before != null && buffer.Find (before) >= 0) {
-					file_stream.Position = original_position;
-					return -1;
-				}
-				
-				// (3) partial match
-				
-				previous_partial_match =
-					buffer.EndsWithPartialMatch (pattern);
-				
-				if (before != null)
-					before_previous_partial_match =
-						buffer.EndsWithPartialMatch (
-							before);
-				
-				buffer_offset += buffer_size;
+				return -1;
+			} finally {
+				file_stream.Position = original_position;
 			}
-			
-			// Since we hit the end of the file, reset the status
-			// before continuing.
-			
-			file_stream.Position = original_position;
-			return -1;
 		}
 		
 		/// <summary>
@@ -938,7 +853,7 @@ namespace TagLib {
 				throw new ArgumentNullException ("pattern");
 			
 			Mode = AccessMode.Read;
-			
+
 			if (pattern.Count > buffer_size)
 				return -1;
 			
@@ -991,11 +906,10 @@ namespace TagLib {
 					return -1;
 				}
 				
-				// TODO: (3) partial match
-
-				
 				read_size = (int) Math.Min (buffer_offset, buffer_size);
 				buffer_offset -= read_size;
+				if (read_size + pattern.Count > buffer_size)
+					buffer_offset += pattern.Count;
 
 				file_stream.Position = buffer_offset;
 			}
@@ -1079,7 +993,7 @@ namespace TagLib {
 				throw new ArgumentNullException ("data");
 			
 			Mode = AccessMode.Write;
-			
+
 			if (data.Count == replace) {
 				file_stream.Position = start;
 				WriteBlock (data);
diff --git a/src/TagLib/FileTypes.cs b/src/TagLib/FileTypes.cs
index 8a24135..1b6fef8 100644
--- a/src/TagLib/FileTypes.cs
+++ b/src/TagLib/FileTypes.cs
@@ -62,6 +62,7 @@ namespace TagLib {
 			typeof(TagLib.Aiff.File),
 			typeof(TagLib.Ape.File),
 			typeof(TagLib.Asf.File),
+			typeof(TagLib.Audible.File),
 			typeof(TagLib.Flac.File),
 			typeof(TagLib.Matroska.File),
 			typeof(TagLib.Gif.File),
diff --git a/src/TagLib/IFD/IFDReader.cs b/src/TagLib/IFD/IFDReader.cs
index 52e064a..30e20e7 100644
--- a/src/TagLib/IFD/IFDReader.cs
+++ b/src/TagLib/IFD/IFDReader.cs
@@ -803,11 +803,15 @@ namespace TagLib.IFD
 				length = 1073741824L * 4;
 			}
 
-			if (makernote_offset > length)
-			    throw new Exception ("offset to makernote is beyond file size");
+			if (makernote_offset > length) {
+				file.MarkAsCorrupt ("offset to makernote is beyond file size");
+				return null;
+			}
 
-			if (makernote_offset + header_size > length)
-				throw new Exception ("data is to short to contain a maker note ifd");
+			if (makernote_offset + header_size > length) {
+				file.MarkAsCorrupt ("data is to short to contain a maker note ifd");
+				return null;
+			}
 
 			// read header
 			file.Seek (makernote_offset, SeekOrigin.Begin);
diff --git a/src/TagLib/IIM/IIMReader.cs b/src/TagLib/IIM/IIMReader.cs
new file mode 100644
index 0000000..478fd29
--- /dev/null
+++ b/src/TagLib/IIM/IIMReader.cs
@@ -0,0 +1,84 @@
+//
+//  IIMReader.cs
+//
+//  Author:
+//       Eberhard Beilharz <eb1@sil.org>
+//
+//  Copyright (c) 2012 Eberhard Beilharz
+//
+//  This library 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 library 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 library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+using System;
+
+namespace TagLib.IIM
+{
+	/// <summary>
+	/// Processes all IPTC-IIM segments
+	/// </summary>
+	public class IIMReader
+	{
+		/// <summary>
+		/// The magic bytes that start a new IPTC-IIM segment
+		/// </summary>
+		private static readonly byte[] IPTC_IIM_SEGMENT = new byte[] { 0x1C, 0x02};
+
+		private IIMTag Tag { get; set; }
+		private ByteVector Data { get; set; }
+
+		public IIMReader (ByteVector data)
+		{
+			Data = data;
+			Tag = new IIMTag ();
+		}
+
+		public IIMTag Process ()
+		{
+			// now process the IIM segments which all start with 0x1C 0x02 followed by the type
+			// of the IIM segment
+			int findOffset = 0;
+			int count = 0;
+			for (int i = Data.Find (IPTC_IIM_SEGMENT, findOffset); i >= findOffset; i = Data.Find (IPTC_IIM_SEGMENT, findOffset)) {
+				count++;
+				// skip over segment marker
+				i += IPTC_IIM_SEGMENT.Length;
+
+				int len = Data.Mid (i + 1).ToUShort ();
+
+				// ENHANCE: enhance encoding used for string conversion. Unfortunately this is
+				// not detectable from IIM data.
+				switch (Data [i]) {
+					case 5: // Object Name
+						Tag.Title = Data.ToString (StringType.Latin1, i + 3, len);
+						break;
+					case 25: // Keywords
+						Tag.AddKeyword (Data.ToString (StringType.Latin1, i + 3, len));
+						break;
+					case 80: // By-line
+						Tag.Creator = Data.ToString (StringType.Latin1, i + 3, len);
+						break;
+					case 116: // Copyright notice
+						Tag.Copyright = Data.ToString (StringType.Latin1, i + 3, len);
+						break;
+					case 120: // Caption/Abstract
+						Tag.Comment = Data.ToString (StringType.Latin1, i + 3, len);
+						break;
+				}
+				findOffset = i + 3 + len;
+			}
+			if (count == 0)
+				return null;
+			return Tag;
+		}
+	}
+}
diff --git a/src/TagLib/IIM/IIMTag.cs b/src/TagLib/IIM/IIMTag.cs
new file mode 100644
index 0000000..19e7af7
--- /dev/null
+++ b/src/TagLib/IIM/IIMTag.cs
@@ -0,0 +1,76 @@
+//
+//  IIMTag.cs
+//
+//  Author:
+//       Eberhard Beilharz <eb1@sil.org>
+//
+//  Copyright (c) 2012 Eberhard Beilharz
+//
+//  This library 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 library 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 library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+using System;
+using System.Collections.Generic;
+
+using TagLib.Image;
+using TagLib.IFD.Entries;
+
+namespace TagLib.IIM
+{
+	public class IIMTag: Xmp.XmpTag
+	{
+		private List<string> m_Keywords;
+
+		public IIMTag ()
+		{
+		}
+
+		public override TagLib.TagTypes TagTypes
+		{
+			get
+			{
+				return TagLib.TagTypes.IPTCIIM;
+			}
+		}
+
+		public override void Clear ()
+		{
+			Title = null;
+			m_Keywords = null;
+			Creator = null;
+			Copyright = null;
+			Comment = null;
+		}
+
+		public override string Title { get; set; }
+		public override string Creator { get; set; }
+		public override string Copyright { get; set; }
+		public override string Comment { get; set; }
+
+		public override string[] Keywords
+		{
+			get {
+				if (m_Keywords == null)
+					return null;
+				return m_Keywords.ToArray ();
+			}
+		}
+
+		internal void AddKeyword (string keyword)
+		{
+			if (m_Keywords == null)
+				m_Keywords = new List<string> ();
+			m_Keywords.Add (keyword);
+		}
+	}
+}
diff --git a/src/TagLib/Id3v2/Frames/PopularimeterFrame.cs b/src/TagLib/Id3v2/Frames/PopularimeterFrame.cs
index 3a154a2..db1473d 100644
--- a/src/TagLib/Id3v2/Frames/PopularimeterFrame.cs
+++ b/src/TagLib/Id3v2/Frames/PopularimeterFrame.cs
@@ -240,7 +240,9 @@ namespace TagLib.Id3v2
 			if (index < 0)
 				throw new CorruptFileException (
 					"Popularimeter frame does not contain a text delimiter");
-			
+			if (index + 2 > data.Count)
+				throw new CorruptFileException("Popularimeter is too short");
+
 			user = data.ToString (StringType.Latin1, 0, index);
 			rating = data [index + 1];
 			play_count = data.Mid (index + 2).ToULong ();
diff --git a/src/TagLib/Id3v2/SynchData.cs b/src/TagLib/Id3v2/SynchData.cs
index e3124d7..d95cc64 100644
--- a/src/TagLib/Id3v2/SynchData.cs
+++ b/src/TagLib/Id3v2/SynchData.cs
@@ -133,12 +133,22 @@ namespace TagLib.Id3v2 {
 		/// </exception>
 		public static void ResynchByteVector (ByteVector data)
 		{
-			if (data == null)
+			if (data == null) {
 				throw new ArgumentNullException ("data");
-			
-			for (int i = data.Count - 2; i >= 0; i --)
-				if (data [i] == 0xFF && data [i+1] == 0)
-					data.RemoveAt (i+1);
+			}
+
+			int i = 0, j = 0;
+			while (i < data.Count - 1) {
+				if (i != j) {
+					data[j] = data[i];
+				}
+				i += data[i] == 0xFF && data[i + 1] == 0 ? 2 : 1;
+				j++;
+			}
+			if (i < data.Count) {
+				data[j++] = data[i++];
+			}
+			data.Resize (j);
 		}
 	}
 }
diff --git a/src/TagLib/Id3v2/Tag.cs b/src/TagLib/Id3v2/Tag.cs
index bd26e97..359efc7 100644
--- a/src/TagLib/Id3v2/Tag.cs
+++ b/src/TagLib/Id3v2/Tag.cs
@@ -873,18 +873,21 @@ namespace TagLib.Id3v2 {
 				// frame data.
 				if(data [frame_data_position] == 0)
 					break;
-				
+
 				Frame frame = null;
-				
+
 				try {
-					frame = FrameFactory.CreateFrame (data,
+					frame = FrameFactory.CreateFrame(
+						data,
 						ref frame_data_position,
 						header.MajorVersion,
 						fullTagUnsynch);
 				} catch (NotImplementedException) {
 					continue;
+				} catch (CorruptFileException) {
+					continue;
 				}
-				
+
 				if(frame == null)
 					break;
 
diff --git a/src/TagLib/Image/CombinedImageTag.cs b/src/TagLib/Image/CombinedImageTag.cs
index b7d79ed..0ca8e2a 100644
--- a/src/TagLib/Image/CombinedImageTag.cs
+++ b/src/TagLib/Image/CombinedImageTag.cs
@@ -114,7 +114,30 @@ namespace TagLib.Image
 			if (tag is IFDTag)
 				Exif = tag as IFDTag;
 			else if (tag is XmpTag)
-				Xmp = tag as XmpTag;
+			{
+				// we treat a IPTC-IIM tag as a XMP tag. However, we prefer the real XMP tag.
+				// See comments in Jpeg/File.cs for what we should do to deal with this properly.
+				if (Xmp != null && (tag is IIM.IIMTag || Xmp is IIM.IIMTag)) {
+					var iimTag = tag as IIM.IIMTag;
+					if (iimTag == null) {
+						iimTag = Xmp as IIM.IIMTag;
+						Xmp = tag as XmpTag;
+					}
+
+					if (string.IsNullOrEmpty (Xmp.Title))
+						Xmp.Title = iimTag.Title;
+					if (string.IsNullOrEmpty (Xmp.Creator))
+						Xmp.Creator = iimTag.Creator;
+					if (string.IsNullOrEmpty (Xmp.Copyright))
+						Xmp.Copyright = iimTag.Copyright;
+					if (string.IsNullOrEmpty (Xmp.Comment))
+						Xmp.Comment = iimTag.Comment;
+					if (Xmp.Keywords == null)
+						Xmp.Keywords = iimTag.Keywords;
+				} else {
+					Xmp = tag as XmpTag;
+				}
+			}
 			else
 				OtherTags.Add (tag);
 
diff --git a/src/TagLib/Jpeg/File.cs b/src/TagLib/Jpeg/File.cs
index 4d19fe0..f782ee7 100644
--- a/src/TagLib/Jpeg/File.cs
+++ b/src/TagLib/Jpeg/File.cs
@@ -57,6 +57,11 @@ namespace TagLib.Jpeg
 		private static readonly string EXIF_IDENTIFIER = "Exif\0\0";
 
 		/// <summary>
+		/// The magic strings used to identifiy an IPTC-IIM section
+		/// </summary>
+		private static readonly string IPTC_IIM_IDENTIFIER = "Photoshop 3.0\u00008BIM\u0004\u0004";
+
+		/// <summary>
 		///    Standard (empty) JFIF header to add, if no one is contained
 		/// </summary>
 		private static readonly byte [] BASIC_JFIF_HEADER = new byte [] {
@@ -206,6 +211,21 @@ namespace TagLib.Jpeg
 #region Public Methods
 
 		/// <summary>
+		///  Gets a tag of a specified type from the current instance, optionally creating a
+		/// new tag if possible.
+		/// </summary>
+		public override TagLib.Tag GetTag (TagLib.TagTypes type, bool create)
+		{
+			if (type == TagTypes.XMP) {
+				foreach (Tag tag in ImageTag.AllTags) {
+					if ((tag.TagTypes & type) == type || (tag.TagTypes & TagTypes.IPTCIIM) != 0)
+						return tag;
+				}
+			}
+			return base.GetTag (type, create);
+		}
+
+		/// <summary>
 		///    Saves the changes made in the current instance to the
 		///    file it represents.
 		/// </summary>
@@ -240,7 +260,7 @@ namespace TagLib.Jpeg
 		{
 			Mode = AccessMode.Read;
 			try {
-				ImageTag = new CombinedImageTag (TagTypes.XMP | TagTypes.TiffIFD | TagTypes.JpegComment);
+				ImageTag = new CombinedImageTag (TagTypes.XMP | TagTypes.TiffIFD | TagTypes.JpegComment | TagTypes.IPTCIIM);
 
 				ValidateHeader ();
 				ReadMetadata ();
@@ -374,6 +394,10 @@ namespace TagLib.Jpeg
 					ReadAPP1Segment (data_size);
 					break;
 
+				case Marker.APP13: // possibly IPTC-IIM
+					ReadAPP13Segment (data_size);
+					break;
+
 				case Marker.COM:	// Comment segment found
 					ReadCOMSegment (data_size);
 					break;
@@ -490,6 +514,55 @@ namespace TagLib.Jpeg
 			}
 		}
 
+		/// <summary>
+		///    Reads an APP13 segment to find IPTC-IIM metadata.
+		/// </summary>
+		/// <param name="length">
+		///    The length of the segment that will be read.
+		/// </param>
+		/// <remarks>More info and specs for IPTC-IIM:
+		/// - Guidelines for Handling Image Metadata (http://www.metadataworkinggroup.org/specs/)
+		/// - IPTC Standard Photo Metadata (July 2010) (http://www.iptc.org/std/photometadata/specification/IPTC-PhotoMetadata-201007_1.pdf)
+		/// - Extracting IPTC header information from JPEG images (http://www.codeproject.com/KB/graphics/iptc.aspx?fid=2301&df=90&mpp=25&noise=3&prof=False&sort=Position&view=Quick&fr=51#xx0xx)
+		/// - Reading IPTC APP14 Segment Header Information from JPEG Images (http://www.codeproject.com/KB/graphics/ReadingIPTCAPP14.aspx?q=iptc)
+		/// </remarks>
+		private void ReadAPP13Segment (ushort length)
+		{
+			// TODO: if both IPTC-IIM and XMP metadata is contained in a file, we should read
+			// a IPTC-IIM checksum and compare that with the checksum built over the IIM block.
+			// Depending on the result we should prefer the information from XMP or IIM.
+			// Right now we always prefer XMP.
+
+			var data = ReadBlock (length);
+
+			// The APP13 segment consists of:
+			// - the string "Photoshop 3.0\u0000"
+			// - followed by "8BIM"
+			// - and then the section type "\u0004\u0004".
+			// There might be multiple 8BIM sections with different types, but we're following
+			// YAGNI for now and only deal with the one we're interested in (and hope that it's
+			// the first one).
+			var iptc_iim_length = IPTC_IIM_IDENTIFIER.Length;
+			if (length < iptc_iim_length || data.Mid (0, iptc_iim_length) != IPTC_IIM_IDENTIFIER)
+				return;
+
+			// PS6 introduced a new header with variable length text
+			var headerInfoLen = data.Mid (iptc_iim_length, 1).ToUShort();
+			int lenToSkip;
+			if (headerInfoLen > 0) {
+				// PS6 header: 1 byte headerinfolen + headerinfo + 2 bytes 00 padding (?) + 2 bytes length
+				lenToSkip = 1 + headerInfoLen + 4;
+			} else {
+				//old style: 4 bytes 00 padding (?) + 2 bytes length
+				lenToSkip = 6;
+			}
+			data.RemoveRange (0, iptc_iim_length + lenToSkip);
+
+			var reader = new IIM.IIMReader (data);
+			var tag = reader.Process ();
+			if (tag != null)
+				ImageTag.AddTag (tag);
+		}
 
 		/// <summary>
 		///    Writes the metadata back to file. All metadata is stored in the first segments
diff --git a/src/TagLib/Mpeg/AudioHeader.cs b/src/TagLib/Mpeg/AudioHeader.cs
index adf8575..09eed4e 100644
--- a/src/TagLib/Mpeg/AudioHeader.cs
+++ b/src/TagLib/Mpeg/AudioHeader.cs
@@ -243,34 +243,13 @@ namespace TagLib.Mpeg {
 		{
 			this.duration = TimeSpan.Zero;
 			stream_length = 0;
-			
-			if (data.Count < 4)
-				throw new CorruptFileException (
-					"Insufficient header length.");
-			
-			if (data [0] != 0xFF)
-				throw new CorruptFileException (
-					"First byte did not match MPEG synch.");
-			
-			// Checking bits from high to low:
-			//
-			// First 3 bits MUST be set. Bits 4 and 5 can
-			// be 00, 10, or 11 but not 01. One or more of
-			// bits 6 and 7 must be set. Bit 8 can be
-			// anything.
-			if ((data [1] & 0xE6) <= 0xE0 || (data [1] & 0x18) == 0x08)
-				throw new CorruptFileException (
-					"Second byte did not match MPEG synch.");
+
+			string error = GetHeaderError(data);
+			if (error != null) {
+				throw new CorruptFileException (error);
+			}
 			
 			flags = data.ToUInt ();
-			
-			if (((flags >> 12) & 0x0F) == 0x0F)
-				throw new CorruptFileException (
-					"Header uses invalid bitrate index.");
-			
-			if (((flags >> 10) & 0x03) == 0x03)
-				throw new CorruptFileException (
-					"Invalid sample rate.");
 
 			xing_header = XingHeader.Unknown;
 			
@@ -732,14 +711,18 @@ namespace TagLib.Mpeg {
 				for (int i = 0; i < buffer.Count - 3 &&
 					(length < 0 || position + i < end); i++)
 					if (buffer [i] == 0xFF &&
-						buffer [i + 1] > 0xE0)
-						try {
-							header = new AudioHeader (
-								buffer.Mid (i, 4),
-								file, position + i);
-							return true;
-						} catch (CorruptFileException) {
+						buffer [i + 1] > 0xE0) {
+						ByteVector data = buffer.Mid(i, 4);
+						if (GetHeaderError(data) == null) {
+							try {
+								header = new AudioHeader(
+									data,
+									file, position + i);
+								return true;
+							} catch (CorruptFileException) {
+							}
 						}
+					}
 				
 				position += File.BufferSize;
 			} while (buffer.Count > 3 && (length < 0 || position < end));
@@ -779,7 +762,35 @@ namespace TagLib.Mpeg {
 		{
 			return Find (out header, file, position, -1);
 		}
+
+		private static string GetHeaderError(ByteVector data)
+		{
+			if (data.Count < 4)
+				return "Insufficient header length.";
+
+			if (data [0] != 0xFF)
+				return "First byte did not match MPEG synch.";
+
+			// Checking bits from high to low:
+			//
+			// First 3 bits MUST be set. Bits 4 and 5 can
+			// be 00, 10, or 11 but not 01. One or more of
+			// bits 6 and 7 must be set. Bit 8 can be
+			// anything.
+			if ((data [1] & 0xE6) <= 0xE0 || (data [1] & 0x18) == 0x08)
+				return "Second byte did not match MPEG synch.";
+
+			uint flags = data.ToUInt ();
+
+			if (((flags >> 12) & 0x0F) == 0x0F)
+				return "Header uses invalid bitrate index.";
+
+			if (((flags >> 10) & 0x03) == 0x03)
+				return "Invalid sample rate.";
+
+			return null;
+		}
 		
 		#endregion
 	}
-}
+}
diff --git a/src/TagLib/Mpeg4/AppleTag.cs b/src/TagLib/Mpeg4/AppleTag.cs
index 29e7e6c..604fcb0 100644
--- a/src/TagLib/Mpeg4/AppleTag.cs
+++ b/src/TagLib/Mpeg4/AppleTag.cs
@@ -447,8 +447,8 @@ namespace TagLib.Mpeg4 {
 				data_box.Text = datastring;
 			} else {
 				//Create the new boxes, should use 1 for text as a flag
-				AppleAdditionalInfoBox amean_box = new AppleAdditionalInfoBox(BoxType.Mean, 0, 1);
-				AppleAdditionalInfoBox aname_box = new AppleAdditionalInfoBox(BoxType.Name, 0, 1);
+				AppleAdditionalInfoBox amean_box = new AppleAdditionalInfoBox(BoxType.Mean);
+				AppleAdditionalInfoBox aname_box = new AppleAdditionalInfoBox(BoxType.Name);
 				AppleDataBox adata_box = new AppleDataBox(BoxType.Data, 1);
 				amean_box.Text = meanstring;
 				aname_box.Text = namestring;
diff --git a/src/TagLib/Mpeg4/BoxFactory.cs b/src/TagLib/Mpeg4/BoxFactory.cs
index b28dc57..32d2385 100644
--- a/src/TagLib/Mpeg4/BoxFactory.cs
+++ b/src/TagLib/Mpeg4/BoxFactory.cs
@@ -67,17 +67,18 @@ namespace TagLib.Mpeg4 {
 			if (parent.BoxType == BoxType.Stsd &&
 				parent.Box is IsoSampleDescriptionBox &&
 				index < (parent.Box as IsoSampleDescriptionBox).EntryCount) {
-				if (handler != null &&
-					handler.HandlerType == BoxType.Soun)
-					return new IsoAudioSampleEntry (header,
-						file, handler);
+				if (handler != null && handler.HandlerType == BoxType.Soun)
+					return new IsoAudioSampleEntry (header, file, handler);
 				else if (handler != null && handler.HandlerType == BoxType.Vide)
-					return new IsoVisualSampleEntry (header,
-						file, handler);
-				else if (handler != null && handler.HandlerType == BoxType.Alis)
-					return new IsoAudioSampleEntry (header,
-						file, handler);
-				else
+					return new IsoVisualSampleEntry (header, file, handler);
+				else if (handler != null && handler.HandlerType == BoxType.Alis) {
+					if (header.BoxType == BoxType.Text)
+						return new TextBox (header, file, handler);
+					else if (header.BoxType == BoxType.Url)
+						return new UrlBox (header, file, handler);
+					// This could be anything, so just parse it
+					return new UnknownBox (header, file, handler);
+				} else
 					return new IsoSampleEntry (header,
 						file, handler);
 			}
diff --git a/src/TagLib/Mpeg4/BoxHeader.cs b/src/TagLib/Mpeg4/BoxHeader.cs
index aa344b3..776ad22 100644
--- a/src/TagLib/Mpeg4/BoxHeader.cs
+++ b/src/TagLib/Mpeg4/BoxHeader.cs
@@ -149,6 +149,10 @@ namespace TagLib.Mpeg4 {
 				extended_type = data.Mid (offset, 16);
 			} else
 				extended_type = null;
+
+			if (box_size > (ulong) (file.Length - position)) {
+				throw new CorruptFileException ("Box header specified a size of {0} bytes but only {1} bytes left in the file");
+			}
 		}
 		
 		/// <summary>
diff --git a/src/TagLib/Mpeg4/BoxTypes.cs b/src/TagLib/Mpeg4/BoxTypes.cs
index 3d83f4a..9027803 100644
--- a/src/TagLib/Mpeg4/BoxTypes.cs
+++ b/src/TagLib/Mpeg4/BoxTypes.cs
@@ -77,10 +77,12 @@ namespace TagLib.Mpeg4 {
 		public static readonly ReadOnlyByteVector Stbl = "stbl";
 		public static readonly ReadOnlyByteVector Stco = "stco";
 		public static readonly ReadOnlyByteVector Stsd = "stsd";
+		public static readonly ReadOnlyByteVector Text = "text";
 		public static readonly ReadOnlyByteVector Tmpo = "tmpo";
 		public static readonly ReadOnlyByteVector Trak = "trak";
 		public static readonly ReadOnlyByteVector Trkn = "trkn";
 		public static readonly ReadOnlyByteVector Udta = "udta";
+		public static readonly ReadOnlyByteVector Url = AppleTag.FixId ("url");
 		public static readonly ReadOnlyByteVector Uuid = "uuid";
 		public static readonly ReadOnlyByteVector Wrt  = AppleTag.FixId ("wrt");
 		public static readonly ReadOnlyByteVector DASH = "----";
diff --git a/src/TagLib/Mpeg4/Boxes/AppleAdditionalInfoBox.cs b/src/TagLib/Mpeg4/Boxes/AppleAdditionalInfoBox.cs
index cadedda..626c66c 100644
--- a/src/TagLib/Mpeg4/Boxes/AppleAdditionalInfoBox.cs
+++ b/src/TagLib/Mpeg4/Boxes/AppleAdditionalInfoBox.cs
@@ -26,10 +26,10 @@ using System;
 
 namespace TagLib.Mpeg4 {
 	/// <summary>
-	///    This class extends <see cref="FullBox" /> to provide an
+	///    This class extends <see cref="Box" /> to provide an
 	///    implementation of an Apple AdditionalInfoBox.
 	/// </summary>
-	public class AppleAdditionalInfoBox : FullBox
+	public class AppleAdditionalInfoBox : Box
 	{
 		#region Private Fields
 		
@@ -65,9 +65,11 @@ namespace TagLib.Mpeg4 {
 		/// <exception cref="ArgumentNullException">
 		///    <paramref name="file" /> is <see langword="null" />.
 		/// </exception>
-		public AppleAdditionalInfoBox (BoxHeader header, TagLib.File file, IsoHandlerBox handler) : base (header, file, handler)
+		public AppleAdditionalInfoBox (BoxHeader header, TagLib.File file, IsoHandlerBox handler) : base (header, handler)
 		{
-			Data = file.ReadBlock (DataSize);
+			// We do not care what is in this custom data section
+			// see: https://developer.apple.com/library/mac/#documentation/QuickTime/QTFF/QTFFChap2/qtff2.html
+			Data = LoadData (file);
 		}
 		
 		/// <summary>
@@ -77,7 +79,7 @@ namespace TagLib.Mpeg4 {
 		/// <param name="header"></param>
 		/// <param name="version"></param>
 		/// <param name="flags"></param>
-		public AppleAdditionalInfoBox (ByteVector header, byte version, uint flags) : base (header, version, flags)
+		public AppleAdditionalInfoBox (ByteVector header) : base (header)
 		{
 		}
 		
diff --git a/src/TagLib/Mpeg4/Boxes/TextBox.cs b/src/TagLib/Mpeg4/Boxes/TextBox.cs
new file mode 100644
index 0000000..164553d
--- /dev/null
+++ b/src/TagLib/Mpeg4/Boxes/TextBox.cs
@@ -0,0 +1,94 @@
+//
+//  TextBox.cs
+//
+//  Author:
+//       Alan McGovern <alan.mcgovern@gmail.com>
+//
+//  Copyright (c) 2012 Alan McGovern
+//
+//  This library 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 library 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 library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+using System;
+using TagLib.Mpeg4;
+
+namespace TagLib
+{
+	public class TextBox : Box
+	{
+#region Private Fields
+		
+		/// <summary>
+		///    Contains the box's data.
+		/// </summary>
+		private ByteVector data;
+		
+#endregion
+		
+		
+		
+		#region Constructors
+		
+		/// <summary>
+		///    Constructs and initializes a new instance of <see
+		///    cref="UnknownBox" /> with a provided header and handler
+		///    by reading the contents from a specified file.
+		/// </summary>
+		/// <param name="header">
+		///    A <see cref="BoxHeader" /> object containing the header
+		///    to use for the new instance.
+		/// </param>
+		/// <param name="file">
+		///    A <see cref="TagLib.File" /> object to read the contents
+		///    of the box from.
+		/// </param>
+		/// <param name="handler">
+		///    A <see cref="IsoHandlerBox" /> object containing the
+		///    handler that applies to the new instance.
+		/// </param>
+		/// <exception cref="ArgumentNullException">
+		///    <paramref name="file" /> is <see langword="null" />.
+		/// </exception>
+		public TextBox (BoxHeader header, TagLib.File file,
+		                   IsoHandlerBox handler)
+			: base (header, handler)
+		{
+			if (file == null)
+				throw new ArgumentNullException ("file");
+			
+			this.data = LoadData (file);
+		}
+		
+#endregion
+		
+		
+		
+		#region Public Properties
+		
+		/// <summary>
+		///    Gets and sets the box data contained in the current
+		///    instance.
+		/// </summary>
+		/// <value>
+		///    A <see cref="ByteVector" /> object containing the box
+		///    data contained in the current instance.
+		/// </value>
+		public override ByteVector Data {
+			get {return data;}
+			set {data = value;}
+		}
+		
+#endregion
+	}
+}
+
diff --git a/src/TagLib/Mpeg4/Boxes/UrlBox.cs b/src/TagLib/Mpeg4/Boxes/UrlBox.cs
new file mode 100644
index 0000000..0b8c18d
--- /dev/null
+++ b/src/TagLib/Mpeg4/Boxes/UrlBox.cs
@@ -0,0 +1,94 @@
+//
+//  UrlBox.cs
+//
+//  Author:
+//       Alan McGovern <alan.mcgovern@gmail.com>
+//
+//  Copyright (c) 2012 Alan McGovern
+//
+//  This library 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 library 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 library; if not, write to the Free Software
+//  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+using System;
+using TagLib.Mpeg4;
+
+namespace TagLib
+{
+	public class UrlBox : Box
+	{
+		#region Private Fields
+		
+		/// <summary>
+		///    Contains the box's data.
+		/// </summary>
+		private ByteVector data;
+		
+#endregion
+		
+		
+		
+		#region Constructors
+		
+		/// <summary>
+		///    Constructs and initializes a new instance of <see
+		///    cref="UnknownBox" /> with a provided header and handler
+		///    by reading the contents from a specified file.
+		/// </summary>
+		/// <param name="header">
+		///    A <see cref="BoxHeader" /> object containing the header
+		///    to use for the new instance.
+		/// </param>
+		/// <param name="file">
+		///    A <see cref="TagLib.File" /> object to read the contents
+		///    of the box from.
+		/// </param>
+		/// <param name="handler">
+		///    A <see cref="IsoHandlerBox" /> object containing the
+		///    handler that applies to the new instance.
+		/// </param>
+		/// <exception cref="ArgumentNullException">
+		///    <paramref name="file" /> is <see langword="null" />.
+		/// </exception>
+		public UrlBox (BoxHeader header, TagLib.File file,
+		                IsoHandlerBox handler)
+			: base (header, handler)
+		{
+			if (file == null)
+				throw new ArgumentNullException ("file");
+			
+			this.data = LoadData (file);
+		}
+		
+#endregion
+		
+		
+		
+		#region Public Properties
+		
+		/// <summary>
+		///    Gets and sets the box data contained in the current
+		///    instance.
+		/// </summary>
+		/// <value>
+		///    A <see cref="ByteVector" /> object containing the box
+		///    data contained in the current instance.
+		/// </value>
+		public override ByteVector Data {
+			get {return data;}
+			set {data = value;}
+		}
+		
+#endregion
+	}
+}
+
diff --git a/src/TagLib/Mpeg4/File.cs b/src/TagLib/Mpeg4/File.cs
index 08de8bf..c6b552d 100644
--- a/src/TagLib/Mpeg4/File.cs
+++ b/src/TagLib/Mpeg4/File.cs
@@ -23,6 +23,7 @@
 
 using System;
 using System.Collections.Generic;
+using System.Linq;
 
 namespace TagLib.Mpeg4 {
 	/// <summary>
@@ -183,7 +184,11 @@ namespace TagLib.Mpeg4 {
 		public override TagLib.Properties Properties {
 			get {return properties;}
 		}
-		
+
+		protected List<IsoUserDataBox> UdtaBoxes {
+			get { return udta_boxes; }
+		}
+
 		#endregion
 		
 		
@@ -446,15 +451,13 @@ namespace TagLib.Mpeg4 {
 			if (udta_boxes.Count == 1)
 				return udta_boxes[0];	//Single udta - just return it
 
-			foreach (IsoUserDataBox udtaBox in udta_boxes) {
-				if (udtaBox.GetChild (BoxType.Meta)
-					!= null && udtaBox.GetChild (BoxType.Meta
-					).GetChild (BoxType.Ilst) != null)
+			// multiple udta : pick out the shallowest node which has an ILst tag
+			var udtaBox = udta_boxes
+				.Where (box => box.GetChildRecursively (BoxType.Ilst) != null)
+				.OrderBy (box => box.ParentTree.Length)
+				.FirstOrDefault ();
 
-					return udtaBox;
-			}
-
-			return null;
+			return udtaBox;
 		}
 
 		/// <summary>
diff --git a/src/TagLib/Mpeg4/FileParser.cs b/src/TagLib/Mpeg4/FileParser.cs
index 2043a50..0691f02 100644
--- a/src/TagLib/Mpeg4/FileParser.cs
+++ b/src/TagLib/Mpeg4/FileParser.cs
@@ -157,6 +157,10 @@ namespace TagLib.Mpeg4 {
 			get {return udta_boxes.ToArray ();}
 		}
 		
+		public IsoUserDataBox UserDataBox {
+			get {return UserDataBoxes.Length == 0 ? null : UserDataBoxes[0];}
+		}
+
 		/// <summary>
 		///    Gets the audio sample entry read by the current instance.
 		/// </summary>
@@ -309,9 +313,13 @@ namespace TagLib.Mpeg4 {
 		/// </summary>
 		public void ParseBoxHeaders ()
 		{
-			ResetFields ();
-			ParseBoxHeaders (first_header.TotalBoxSize,
-				file.Length, null);
+			try {
+				ResetFields ();
+				ParseBoxHeaders (first_header.TotalBoxSize,
+				                 file.Length, null);
+			} catch (CorruptFileException e) {
+				file.MarkAsCorrupt (e.Message);
+			}
 		}
 		
 		/// <summary>
@@ -320,8 +328,12 @@ namespace TagLib.Mpeg4 {
 		/// </summary>
 		public void ParseTag ()
 		{
-			ResetFields ();
-			ParseTag (first_header.TotalBoxSize, file.Length, null);
+			try {
+				ResetFields ();
+				ParseTag (first_header.TotalBoxSize, file.Length, null);
+			} catch (CorruptFileException e) {
+				file.MarkAsCorrupt (e.Message);
+			}
 		}
 		
 		/// <summary>
@@ -330,9 +342,13 @@ namespace TagLib.Mpeg4 {
 		/// </summary>
 		public void ParseTagAndProperties ()
 		{
-			ResetFields ();
-			ParseTagAndProperties (first_header.TotalBoxSize,
-				file.Length, null, null);
+			try {
+				ResetFields ();
+				ParseTagAndProperties (first_header.TotalBoxSize,
+				                       file.Length, null, null);
+			} catch (CorruptFileException e) {
+				file.MarkAsCorrupt (e.Message);
+			}
 		}
 		
 		/// <summary>
@@ -341,9 +357,13 @@ namespace TagLib.Mpeg4 {
 		/// </summary>
 		public void ParseChunkOffsets ()
 		{
-			ResetFields ();
-			ParseChunkOffsets (first_header.TotalBoxSize,
-				file.Length);
+			try {
+				ResetFields ();
+				ParseChunkOffsets (first_header.TotalBoxSize,
+				                   file.Length);
+			} catch (CorruptFileException e) {
+				file.MarkAsCorrupt (e.Message);
+			}
 		}
 		
 		#endregion
diff --git a/src/TagLib/NonContainer/StartTag.cs b/src/TagLib/NonContainer/StartTag.cs
index e2873ae..88b8706 100644
--- a/src/TagLib/NonContainer/StartTag.cs
+++ b/src/TagLib/NonContainer/StartTag.cs
@@ -265,18 +265,13 @@ namespace TagLib.NonContainer {
 			TagTypes type = ReadTagInfo (ref end);
 			TagLib.Tag tag = null;
 			
-			try {
-				switch (type)
-				{
+			switch (type) {
 				case TagTypes.Ape:
 					tag = new TagLib.Ape.Tag (file, start);
 					break;
 				case TagTypes.Id3v2:
 					tag = new TagLib.Id3v2.Tag (file, start);
 					break;
-				}
-			} catch (CorruptFileException e) {
-                Console.Error.WriteLine ("taglib-sharp caught exception creating tag: {0}", e);
 			}
 
 			start = end;
diff --git a/src/TagLib/Tag.cs b/src/TagLib/Tag.cs
index e155cd2..81f9c2b 100644
--- a/src/TagLib/Tag.cs
+++ b/src/TagLib/Tag.cs
@@ -116,6 +116,16 @@ namespace TagLib {
 		Png = 0x00004000,
 
 		/// <summary>
+		/// IPTC-IIM tag
+		/// </summary>
+		IPTCIIM = 0x00008000,
+
+		/// <summary>
+		///    Audible Metadata Blocks Tag
+		/// </summary>
+		AudibleMetadata = 0x00000400,
+		
+		/// <summary>
 		///    All tag types.
 		/// </summary>
 		AllTags      = 0xFFFFFFFF
diff --git a/src/TagLib/TagLib.sources b/src/TagLib/TagLib.sources
index 2f02a8c..75c4b6d 100644
--- a/src/TagLib/TagLib.sources
+++ b/src/TagLib/TagLib.sources
@@ -1,228 +1,5 @@
 TAGLIB_CSFILES = \
-	$(srcdir)/TagLib/Aac/AudioHeader.cs \
-	$(srcdir)/TagLib/Aac/BitStream.cs \
-	$(srcdir)/TagLib/Aac/File.cs \
-	$(srcdir)/TagLib/Aiff/File.cs \
-	$(srcdir)/TagLib/Aiff/StreamHeader.cs \
-	$(srcdir)/TagLib/Ape/Tag.cs \
-	$(srcdir)/TagLib/Ape/Item.cs \
-	$(srcdir)/TagLib/Ape/Footer.cs \
-	$(srcdir)/TagLib/Ape/File.cs \
-	$(srcdir)/TagLib/Ape/StreamHeader.cs \
-	$(srcdir)/TagLib/Asf/Guid.cs \
-	$(srcdir)/TagLib/Asf/StreamPropertiesObject.cs \
-	$(srcdir)/TagLib/Asf/UnknownObject.cs \
-	$(srcdir)/TagLib/Asf/Tag.cs \
-	$(srcdir)/TagLib/Asf/Object.cs \
-	$(srcdir)/TagLib/Asf/ExtendedContentDescriptionObject.cs \
-	$(srcdir)/TagLib/Asf/ContentDescriptionObject.cs \
-	$(srcdir)/TagLib/Asf/MetadataLibraryObject.cs \
-	$(srcdir)/TagLib/Asf/HeaderObject.cs \
-	$(srcdir)/TagLib/Asf/HeaderExtensionObject.cs \
-	$(srcdir)/TagLib/Asf/File.cs \
-	$(srcdir)/TagLib/Asf/FilePropertiesObject.cs \
-	$(srcdir)/TagLib/Asf/PaddingObject.cs \
-	$(srcdir)/TagLib/Asf/ContentDescriptor.cs \
-	$(srcdir)/TagLib/Asf/DescriptionRecord.cs \
-	$(srcdir)/TagLib/Mpc/StreamHeader.cs \
-	$(srcdir)/TagLib/Mpc/File.cs \
-	$(srcdir)/TagLib/Ogg/GroupedComment.cs \
-	$(srcdir)/TagLib/Ogg/Bitstream.cs \
-	$(srcdir)/TagLib/Ogg/Paginator.cs \
-	$(srcdir)/TagLib/Ogg/Codec.cs \
-	$(srcdir)/TagLib/Ogg/Codecs/Vorbis.cs \
-	$(srcdir)/TagLib/Ogg/Codecs/Theora.cs \
-	$(srcdir)/TagLib/Ogg/Page.cs \
-	$(srcdir)/TagLib/Ogg/XiphComment.cs \
-	$(srcdir)/TagLib/Ogg/PageHeader.cs \
-	$(srcdir)/TagLib/Ogg/File.cs \
-	$(srcdir)/TagLib/Png/Codec.cs \
-	$(srcdir)/TagLib/Png/File.cs \
-	$(srcdir)/TagLib/Png/PngTag.cs \
-	$(srcdir)/TagLib/Flac/Block.cs \
-	$(srcdir)/TagLib/Flac/BlockHeader.cs \
-	$(srcdir)/TagLib/Flac/StreamHeader.cs \
-	$(srcdir)/TagLib/Flac/Picture.cs \
-	$(srcdir)/TagLib/Flac/File.cs \
-	$(srcdir)/TagLib/Gif/Codec.cs \
-	$(srcdir)/TagLib/Gif/File.cs \
-	$(srcdir)/TagLib/Gif/GifCommentTag.cs \
-	$(srcdir)/TagLib/Image/Codec.cs \
-	$(srcdir)/TagLib/Image/CombinedImageTag.cs \
-	$(srcdir)/TagLib/Image/File.cs \
-	$(srcdir)/TagLib/Image/ImageBlockFile.cs \
-	$(srcdir)/TagLib/Image/ImageTag.cs \
-	$(srcdir)/TagLib/Image/ImageOrientation.cs \
-	$(srcdir)/TagLib/Image/NoMetadata/File.cs \
-	$(srcdir)/TagLib/Jpeg/Codec.cs \
-	$(srcdir)/TagLib/Jpeg/File.cs \
-	$(srcdir)/TagLib/Jpeg/JpegCommentTag.cs \
-	$(srcdir)/TagLib/Jpeg/Marker.cs \
-	$(srcdir)/TagLib/Jpeg/Table.cs \
-	$(srcdir)/TagLib/Matroska/AudioTrack.cs \
-	$(srcdir)/TagLib/Matroska/EBMLElement.cs \
-	$(srcdir)/TagLib/Matroska/EBMLIDs.cs \
-	$(srcdir)/TagLib/Matroska/File.cs \
-	$(srcdir)/TagLib/Matroska/MatroskaIDs.cs \
-	$(srcdir)/TagLib/Matroska/SubtitleTrack.cs \
-	$(srcdir)/TagLib/Matroska/Tag.cs \
-	$(srcdir)/TagLib/Matroska/Track.cs \
-	$(srcdir)/TagLib/Matroska/VideoTrack.cs \
-	$(srcdir)/TagLib/Mpeg/XingHeader.cs \
-	$(srcdir)/TagLib/Mpeg/VBRIHeader.cs \
-	$(srcdir)/TagLib/Mpeg/File.cs \
-	$(srcdir)/TagLib/Mpeg/AudioFile.cs \
-	$(srcdir)/TagLib/Mpeg/AudioHeader.cs \
-	$(srcdir)/TagLib/Mpeg/VideoHeader.cs \
-	$(srcdir)/TagLib/NonContainer/EndTag.cs \
-	$(srcdir)/TagLib/NonContainer/File.cs \
-	$(srcdir)/TagLib/NonContainer/StartTag.cs \
-	$(srcdir)/TagLib/NonContainer/Tag.cs \
-	$(srcdir)/TagLib/Id3v1/Tag.cs \
-	$(srcdir)/TagLib/Id3v1/StringHandler.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/PopularimeterFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/PlayCountFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/PrivateFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/RelativeVolumeFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/UniqueFileIdentifierFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/UnknownFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/CommentsFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/TextIdentificationFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/AttachedPictureFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/GeneralEncapsulatedObjectFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/UnsynchronisedLyricsFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/SynchronizedLyricsFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/MusicCdIdentifierFrame.cs \
-	$(srcdir)/TagLib/Id3v2/Frames/TermsOfUseFrame.cs \
-	$(srcdir)/TagLib/Id3v2/FrameFactory.cs \
-	$(srcdir)/TagLib/Id3v2/Frame.cs \
-	$(srcdir)/TagLib/Id3v2/FrameTypes.cs \
-	$(srcdir)/TagLib/Id3v2/Tag.cs \
-	$(srcdir)/TagLib/Id3v2/FrameHeader.cs \
-	$(srcdir)/TagLib/Id3v2/ExtendedHeader.cs \
-	$(srcdir)/TagLib/Id3v2/SynchData.cs \
-	$(srcdir)/TagLib/Id3v2/Header.cs \
-	$(srcdir)/TagLib/Id3v2/Footer.cs \
-	$(srcdir)/TagLib/IFD/Entries/ByteIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/ByteVectorIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/LongArrayIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/LongIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/MakernoteIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/RationalArrayIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/RationalIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/Rational.cs \
-	$(srcdir)/TagLib/IFD/Entries/SByteIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/ShortArrayIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/ShortIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SLongArrayIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SLongIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SRationalArrayIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SRationalIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SShortArrayIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SShortIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SRational.cs \
-	$(srcdir)/TagLib/IFD/Entries/StringIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/StripOffsetsIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SubIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/SubIFDArrayEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/ThumbnailDataIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/UserCommentIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/Entries/UndefinedIFDEntry.cs \
-	$(srcdir)/TagLib/IFD/IFDEntry.cs \
-	$(srcdir)/TagLib/IFD/IFDEntryType.cs \
-	$(srcdir)/TagLib/IFD/IFDTag.cs \
-	$(srcdir)/TagLib/IFD/IFDDirectory.cs \
-	$(srcdir)/TagLib/IFD/IFDStructure.cs \
-	$(srcdir)/TagLib/IFD/IFDReader.cs \
-	$(srcdir)/TagLib/IFD/IFDRenderer.cs \
-	$(srcdir)/TagLib/IFD/Makernotes/Nikon3MakernoteReader.cs \
-	$(srcdir)/TagLib/IFD/Tags/CanonFileInfoEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/CanonMakerNoteEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/CanonPictureInfoEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/ExifEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/GPSEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/IFDEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/IOPEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/PentaxMakerNoteEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/OlympusMakerNoteEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/Nikon3MakerNoteEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/NikonLensData3EntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/NikonIsoInfoEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/NikonPreviewMakerNoteEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/NikonPictureControlEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/NikonShotInfoEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/NikonVibrationReductionEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/NikonWorldTimeEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/PanasonicMakerNoteEntryTag.cs \
-	$(srcdir)/TagLib/IFD/Tags/SonyMakerNoteEntryTag.cs \
-	$(srcdir)/TagLib/Mpeg4/AppleTag.cs \
-	$(srcdir)/TagLib/Mpeg4/Box.cs \
-	$(srcdir)/TagLib/Mpeg4/BoxFactory.cs \
-	$(srcdir)/TagLib/Mpeg4/BoxHeader.cs \
-	$(srcdir)/TagLib/Mpeg4/BoxTypes.cs \
-	$(srcdir)/TagLib/Mpeg4/File.cs \
-	$(srcdir)/TagLib/Mpeg4/FileParser.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoFreeSpaceBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/UnknownBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoUserDataBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoChunkOffsetBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoChunkLargeOffsetBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/AppleItemListBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/AppleAnnotationBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoSampleTableBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoSampleEntry.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoAudioSampleEntry.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoVisualSampleEntry.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoMetaBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoSampleDescriptionBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/AppleAdditionalInfoBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoHandlerBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/IsoMovieHeaderBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/FullBox.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/AppleElementaryStreamDescriptor.cs \
-	$(srcdir)/TagLib/Mpeg4/Boxes/AppleDataBox.cs \
-	$(srcdir)/TagLib/Riff/AviHeaderList.cs \
-	$(srcdir)/TagLib/Riff/AviStream.cs \
-	$(srcdir)/TagLib/Riff/WaveFormatEx.cs \
-	$(srcdir)/TagLib/Riff/BitmapInfoHeader.cs \
-	$(srcdir)/TagLib/Riff/DivXTag.cs \
-	$(srcdir)/TagLib/Riff/File.cs \
-	$(srcdir)/TagLib/Riff/InfoTag.cs \
-	$(srcdir)/TagLib/Riff/List.cs \
-	$(srcdir)/TagLib/Riff/ListTag.cs \
-	$(srcdir)/TagLib/Riff/MovieIdTag.cs \
-	$(srcdir)/TagLib/Tiff/BaseTiffFile.cs \
-	$(srcdir)/TagLib/Tiff/Codec.cs \
-	$(srcdir)/TagLib/Tiff/File.cs \
-	$(srcdir)/TagLib/Tiff/Arw/File.cs \
-	$(srcdir)/TagLib/Tiff/Cr2/File.cs \
-	$(srcdir)/TagLib/Tiff/Dng/File.cs \
-	$(srcdir)/TagLib/Tiff/Nef/File.cs \
-	$(srcdir)/TagLib/Tiff/Pef/File.cs \
-	$(srcdir)/TagLib/Tiff/Rw2/File.cs \
-	$(srcdir)/TagLib/Tiff/Rw2/IFDReader.cs \
-	$(srcdir)/TagLib/Tiff/Rw2/IFDTag.cs \
-	$(srcdir)/TagLib/WavPack/File.cs \
-	$(srcdir)/TagLib/WavPack/StreamHeader.cs \
-	$(srcdir)/TagLib/Xmp/XmlNodeExtensions.cs \
-	$(srcdir)/TagLib/Xmp/XmpTag.cs \
-	$(srcdir)/TagLib/Xmp/XmpNode.cs \
-	$(srcdir)/TagLib/Xmp/XmpNodeType.cs \
-	$(srcdir)/TagLib/Xmp/XmpNodeVisitor.cs \
-	$(srcdir)/TagLib/ICodec.cs \
-	$(srcdir)/TagLib/Tag.cs \
-	$(srcdir)/TagLib/ReadOnlyByteVector.cs \
-	$(srcdir)/TagLib/ByteVector.cs \
-	$(srcdir)/TagLib/ByteVectorList.cs \
-	$(srcdir)/TagLib/CombinedTag.cs \
-	$(srcdir)/TagLib/Genres.cs \
-	$(srcdir)/TagLib/Properties.cs \
-	$(srcdir)/TagLib/File.cs \
-	$(srcdir)/TagLib/StringList.cs \
-	$(srcdir)/TagLib/SupportedMimeType.cs \
-	$(srcdir)/TagLib/UnsupportedFormatException.cs \
-	$(srcdir)/TagLib/Picture.cs \
-	$(srcdir)/TagLib/ListBase.cs \
-	$(srcdir)/TagLib/FileTypes.cs \
-	$(srcdir)/TagLib/CorruptFileException.cs
-
+	$(wildcard *.cs)	\
+	$(wildcard */*.cs)	\
+	$(wildcard */*/*.cs)	\
+	$(wildcard */*/*/*.cs)
diff --git a/src/taglib-sharp.csproj b/src/taglib-sharp.csproj
index 68b9c92..f28d7f0 100644
--- a/src/taglib-sharp.csproj
+++ b/src/taglib-sharp.csproj
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="3.5" xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
+<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003";>
   <PropertyGroup>
     <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
@@ -10,18 +10,18 @@
     <RootNamespace>TagLib</RootNamespace>
     <ApplicationIcon>.</ApplicationIcon>
     <AssemblyName>taglib-sharp</AssemblyName>
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
     <ReleaseVersion>2.0.4.0</ReleaseVersion>
+    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
+    <DebugSymbols>True</DebugSymbols>
     <DebugType>full</DebugType>
-    <Optimize>true</Optimize>
+    <Optimize>True</Optimize>
     <OutputPath>.</OutputPath>
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
-    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
-    <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
+    <AllowUnsafeBlocks>True</AllowUnsafeBlocks>
+    <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
     <AssemblyOriginatorKeyFile>.</AssemblyOriginatorKeyFile>
     <Execution>
       <Execution clr-version="Net_2_0" />
@@ -30,12 +30,12 @@
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
     <DebugType>none</DebugType>
-    <Optimize>true</Optimize>
+    <Optimize>True</Optimize>
     <OutputPath>.</OutputPath>
     <ErrorReport>prompt</ErrorReport>
     <WarningLevel>4</WarningLevel>
-    <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
-    <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
+    <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
+    <AllowUnsafeBlocks>True</AllowUnsafeBlocks>
     <Execution>
       <Execution clr-version="Net_2_0" />
     </Execution>
@@ -268,6 +268,12 @@
     <Compile Include="TagLib\Xmp\XmpNodeType.cs" />
     <Compile Include="TagLib\Xmp\XmpNodeVisitor.cs" />
     <Compile Include="TagLib\Xmp\XmpTag.cs" />
+    <Compile Include="TagLib\Mpeg4\Boxes\TextBox.cs" />
+    <Compile Include="TagLib\Mpeg4\Boxes\UrlBox.cs" />
+    <Compile Include="TagLib\IIM\IIMTag.cs" />
+    <Compile Include="TagLib\IIM\IIMReader.cs" />
+    <Compile Include="TagLib\Audible\File.cs" />
+    <Compile Include="TagLib\Audible\Tag.cs" />
   </ItemGroup>
   <ItemGroup>
     <Folder Include="TagLib\NonContainer\" />
@@ -276,6 +282,8 @@
     <Folder Include="TagLib\Id3v2\" />
     <Folder Include="TagLib\Mpeg4\" />
     <Folder Include="TagLib\Ogg\" />
+    <Folder Include="TagLib\IIM\" />
+    <Folder Include="TagLib\Audible\" />
   </ItemGroup>
   <ItemGroup>
     <Reference Include="System" />
diff --git a/taglib-sharp.sln b/taglib-sharp.sln
index 5b801d5..d037898 100644
--- a/taglib-sharp.sln
+++ b/taglib-sharp.sln
@@ -1,9 +1,9 @@
 
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual Studio 2010
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "taglib-sharp", "src\taglib-sharp.csproj", "{6B143A39-C7B2-4743-9917-92262C60E9A6}"
 EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "tests", "tests\tests.csproj", "{4D1C6110-D6F2-496E-BD7E-E45B7217D458}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "tests", "tests\tests.csproj", "{4D1C6110-D6F2-496E-BD7E-E45B7217D458}"
 EndProject
 Global
 	GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -11,27 +11,41 @@ Global
 		Release|Any CPU = Release|Any CPU
 	EndGlobalSection
 	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{6B143A39-C7B2-4743-9917-92262C60E9A6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6B143A39-C7B2-4743-9917-92262C60E9A6}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6B143A39-C7B2-4743-9917-92262C60E9A6}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6B143A39-C7B2-4743-9917-92262C60E9A6}.Release|Any CPU.Build.0 = Release|Any CPU
-		{4D1C6110-D6F2-496E-BD7E-E45B7217D458}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{4D1C6110-D6F2-496E-BD7E-E45B7217D458}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{4D1C6110-D6F2-496E-BD7E-E45B7217D458}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{4D1C6110-D6F2-496E-BD7E-E45B7217D458}.Release|Any CPU.Build.0 = Release|Any CPU
+		{4D1C6110-D6F2-496E-BD7E-E45B7217D458}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{4D1C6110-D6F2-496E-BD7E-E45B7217D458}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{4D1C6110-D6F2-496E-BD7E-E45B7217D458}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{4D1C6110-D6F2-496E-BD7E-E45B7217D458}.Release|Any CPU.Build.0 = Release|Any CPU
+		{6B143A39-C7B2-4743-9917-92262C60E9A6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{6B143A39-C7B2-4743-9917-92262C60E9A6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{6B143A39-C7B2-4743-9917-92262C60E9A6}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{6B143A39-C7B2-4743-9917-92262C60E9A6}.Release|Any CPU.Build.0 = Release|Any CPU
 	EndGlobalSection
 	GlobalSection(MonoDevelopProperties) = preSolution
-		StartupItem = tests\tests.csproj
-		Policies = $0
-		$0.TextStylePolicy = $1
-		$1.inheritsSet = null
-		$1.scope = application/x-mdp
-		$0.StandardHeader = $2
-		$2.inheritsSet = LGPLv2License
-		$0.DotNetNamingPolicy = $3
-		$3.DirectoryNamespaceAssociation = None
-		$3.ResourceNamePolicy = FileFormatDefault
-		version = 2.0.4.0
-		outputpath = build
-	EndGlobalSection
-EndGlobal
+		StartupItem = tests\tests.csproj
+		Policies = $0
+		$0.TextStylePolicy = $1
+		$1.inheritsSet = null
+		$1.scope = application/x-mdp
+		$0.StandardHeader = $2
+		$2.Text = @\n ${FileName}\n \n Author:\n      ${AuthorName} <${AuthorEmail}>\n\n Copyright (c) ${Year} ${CopyrightHolder}\n\n This library is free software; you can redistribute it and/or modify\n it under the terms of the GNU Lesser General Public License as\n published by the Free Software Foundation; either version 2.1 of the\n License, or (at your option) any later version.\n\n This library is distributed in the hope that it will be useful, but\n WITHOUT ANY WARRANTY; without even the implied warranty of\n MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\n Lesser General Public License for more details.\n\n You should have received a copy of the GNU Lesser General Public\n License along with this library; if not, write to the Free Software\n Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+		$2.IncludeInNewFiles = True
+		$0.DotNetNamingPolicy = $3
+		$3.DirectoryNamespaceAssociation = None
+		$3.ResourceNamePolicy = FileFormatDefault
+		$0.TextStylePolicy = $4
+		$4.inheritsSet = null
+		$4.scope = text/x-csharp
+		$0.CSharpFormattingPolicy = $5
+		$5.inheritsSet = Mono
+		$5.inheritsScope = text/x-csharp
+		$5.scope = text/x-csharp
+		$0.TextStylePolicy = $6
+		$6.FileWidth = 120
+		$6.TabWidth = 4
+		$6.inheritsSet = Mono
+		$6.inheritsScope = text/plain
+		$6.scope = text/plain
+		version = 2.0.4.0
+		outputpath = build
+	EndGlobalSection
+EndGlobal

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: