Do not require exclusive read access when reading files under windows
Fix overflow checking in archive_entry_sparse_add_entry()

gcc will optimize the overflow check x + y < 0 (assuming x, y >= 0)
into false, since signed integer overflow is undefined behavior in C.
Use a safe precondition check instead.
Merge pull request #33 from xiw/overflow

Fix overflow checking in archive_entry_sparse_add_entry()
Do not overwrite file size if the local file header has valid file size.
This allows us to extract index.xml from Apple iWork '09 format files.
If seek fails, fail the xar read.  We should be able to do better than this.
Expose the generic archive_free hook
Issue 314:  A tar archive containing only a single 'g' record
should be treated as a valid empty tar archive.
(Such archives are generated by 'git archive' from an empty
repository.)

http://thread.gmane.org/gmane.comp.version-control.git/220485
http://code.google.com/p/libarchive/issues/detail?id=314
Merge pull request #40 from juikim/master

Do not overwrite file size if the local file header has valid file size.
Merge pull request #32 from bamiaux/fix_win32_exclusive_read_access

Do not require exclusive read access when reading files under windows