File easytag-taglib-2.0.patch of Package easytag
diff --git a/src/tags/gio_wrapper.cc b/src/tags/gio_wrapper.cc
index 8716331..8772d52 100644
--- a/src/tags/gio_wrapper.cc
+++ b/src/tags/gio_wrapper.cc
@@ -47,11 +47,11 @@ GIO_InputStream::name () const
}
TagLib::ByteVector
-GIO_InputStream::readBlock (TagLib::ulong len)
+GIO_InputStream::readBlock (ulong len)
{
if (error)
{
- return TagLib::ByteVector::null;
+ return TagLib::ByteVector();
}
TagLib::ByteVector rv (len, 0);
@@ -70,14 +70,14 @@ GIO_InputStream::writeBlock (TagLib::ByteVector const &data)
void
GIO_InputStream::insert (TagLib::ByteVector const &data,
- TagLib::ulong start,
- TagLib::ulong replace)
+ TagLib::offset_t start,
+ size_t replace)
{
g_warning ("%s", "Trying to write to read-only file!");
}
void
-GIO_InputStream::removeBlock (TagLib::ulong start, TagLib::ulong len)
+GIO_InputStream::removeBlock (TagLib::offset_t start, size_t len)
{
g_warning ("%s", "Trying to write to read-only file!");
}
@@ -200,11 +200,11 @@ GIO_IOStream::name () const
}
TagLib::ByteVector
-GIO_IOStream::readBlock (TagLib::ulong len)
+GIO_IOStream::readBlock (ulong len)
{
if (error)
{
- return TagLib::ByteVector::null;
+ return TagLib::ByteVector();
}
gsize bytes = 0;
@@ -239,8 +239,8 @@ GIO_IOStream::writeBlock (TagLib::ByteVector const &data)
void
GIO_IOStream::insert (TagLib::ByteVector const &data,
- TagLib::ulong start,
- TagLib::ulong replace)
+ TagLib::offset_t start,
+ size_t replace)
{
if (error)
{
@@ -351,9 +351,9 @@ GIO_IOStream::insert (TagLib::ByteVector const &data,
}
void
-GIO_IOStream::removeBlock (TagLib::ulong start, TagLib::ulong len)
+GIO_IOStream::removeBlock (TagLib::offset_t start, size_t len)
{
- if (start + len >= (TagLib::ulong)length ())
+ if (start + len >= (ulong)length ())
{
truncate (start);
return;
diff --git a/src/tags/gio_wrapper.h b/src/tags/gio_wrapper.h
index e49e54d..4f99b24 100644
--- a/src/tags/gio_wrapper.h
+++ b/src/tags/gio_wrapper.h
@@ -33,10 +33,10 @@ public:
GIO_InputStream (GFile *file_);
virtual ~GIO_InputStream ();
virtual TagLib::FileName name () const;
- virtual TagLib::ByteVector readBlock (TagLib::ulong length);
+ virtual TagLib::ByteVector readBlock (ulong length);
virtual void writeBlock (TagLib::ByteVector const &data);
- virtual void insert (TagLib::ByteVector const &data, TagLib::ulong start = 0, TagLib::ulong replace = 0);
- virtual void removeBlock (TagLib::ulong start = 0, TagLib::ulong length = 0);
+ virtual void insert (TagLib::ByteVector const &data, TagLib::offset_t start = 0, size_t replace = 0);
+ virtual void removeBlock (TagLib::offset_t start = 0, size_t length = 0);
virtual bool readOnly () const;
virtual bool isOpen () const;
virtual void seek (long int offset, TagLib::IOStream::Position p = TagLib::IOStream::Beginning);
@@ -61,10 +61,10 @@ public:
GIO_IOStream (GFile *file_);
virtual ~GIO_IOStream ();
virtual TagLib::FileName name () const;
- virtual TagLib::ByteVector readBlock (TagLib::ulong length);
+ virtual TagLib::ByteVector readBlock (ulong length);
virtual void writeBlock (TagLib::ByteVector const &data);
- virtual void insert (TagLib::ByteVector const &data, TagLib::ulong start = 0, TagLib::ulong replace = 0);
- virtual void removeBlock (TagLib::ulong start = 0, TagLib::ulong len = 0);
+ virtual void insert (TagLib::ByteVector const &data, TagLib::offset_t start = 0, size_t replace = 0);
+ virtual void removeBlock (TagLib::offset_t start = 0, size_t len = 0);
virtual bool readOnly () const;
virtual bool isOpen () const;
virtual void seek (long int offset, TagLib::IOStream::Position p = TagLib::IOStream::Beginning);
diff --git a/src/tags/mp4_tag.cc b/src/tags/mp4_tag.cc
index d24695c..1728189 100644
--- a/src/tags/mp4_tag.cc
+++ b/src/tags/mp4_tag.cc
@@ -222,7 +222,7 @@ mp4tag_read_file_tag (GFile *file,
FileTag->encoded_by = g_strdup (encodedbys.front ().toCString (true));
}
- const TagLib::MP4::ItemListMap &extra_items = tag->itemListMap ();
+ const TagLib::MP4::ItemMap &extra_items = tag->itemMap ();
/* Album Artist */
#if (TAGLIB_MAJOR_VERSION == 1) && (TAGLIB_MINOR_VERSION < 10)
@@ -437,25 +437,12 @@ mp4tag_write_file_tag (const ET_File *ETFile,
fields.insert ("ENCODEDBY", string);
}
- TagLib::MP4::ItemListMap &extra_items = tag->itemListMap ();
-
/* Album artist. */
if (!et_str_empty (FileTag->album_artist))
{
TagLib::String string (FileTag->album_artist, TagLib::String::UTF8);
-#if (TAGLIB_MAJOR_VERSION == 1) && (TAGLIB_MINOR_VERSION < 10)
- /* No "ALBUMARTIST" support in TagLib until 1.10; use atom directly. */
- extra_items.insert ("aART", TagLib::MP4::Item (string));
-#else
fields.insert ("ALBUMARTIST", string);
-#endif
}
-#if (TAGLIB_MAJOR_VERSION == 1) && (TAGLIB_MINOR_VERSION < 10)
- else
- {
- extra_items.erase ("aART");
- }
-#endif
/***********
* Picture *
@@ -491,12 +478,12 @@ mp4tag_write_file_tag (const ET_File *ETFile,
TagLib::MP4::CoverArt art (f, TagLib::ByteVector((char *)data,
data_size));
- extra_items.insert ("covr",
+ tag->setItem("covr",
TagLib::MP4::Item (TagLib::MP4::CoverArtList ().append (art)));
}
else
{
- extra_items.erase ("covr");
+ tag->removeItem("covr");
}
tag->setProperties (fields);