[arch-commits] Commit in id3lib/repos (15 files)

Evangelos Foutras foutrelis at archlinux.org
Sat May 16 09:09:11 UTC 2020


    Date: Saturday, May 16, 2020 @ 09:09:11
  Author: foutrelis
Revision: 383774

archrelease: copy trunk to staging-x86_64

Added:
  id3lib/repos/staging-x86_64/
  id3lib/repos/staging-x86_64/00-add-libz-to-compilation.patch
    (from rev 383773, id3lib/trunk/00-add-libz-to-compilation.patch)
  id3lib/repos/staging-x86_64/05-create-m4-directory.patch
    (from rev 383773, id3lib/trunk/05-create-m4-directory.patch)
  id3lib/repos/staging-x86_64/10-fix-compilation-with-cpp-headers.patch
    (from rev 383773, id3lib/trunk/10-fix-compilation-with-cpp-headers.patch)
  id3lib/repos/staging-x86_64/15-fix-headers-of-main-functions.patch
    (from rev 383773, id3lib/trunk/15-fix-headers-of-main-functions.patch)
  id3lib/repos/staging-x86_64/20-create-manpages.patch
    (from rev 383773, id3lib/trunk/20-create-manpages.patch)
  id3lib/repos/staging-x86_64/30-fix-utf16.patch
    (from rev 383773, id3lib/trunk/30-fix-utf16.patch)
  id3lib/repos/staging-x86_64/40-deal-with-mkstemp.patch
    (from rev 383773, id3lib/trunk/40-deal-with-mkstemp.patch)
  id3lib/repos/staging-x86_64/50-remove-outdated-check.patch
    (from rev 383773, id3lib/trunk/50-remove-outdated-check.patch)
  id3lib/repos/staging-x86_64/60-add-c-wrapper-functions.patch
    (from rev 383773, id3lib/trunk/60-add-c-wrapper-functions.patch)
  id3lib/repos/staging-x86_64/60-fix_make_check.patch
    (from rev 383773, id3lib/trunk/60-fix_make_check.patch)
  id3lib/repos/staging-x86_64/60-id3lib-missing-nullpointer-check.patch
    (from rev 383773, id3lib/trunk/60-id3lib-missing-nullpointer-check.patch)
  id3lib/repos/staging-x86_64/60-spelling.patch
    (from rev 383773, id3lib/trunk/60-spelling.patch)
  id3lib/repos/staging-x86_64/61-fix_vbr_stack_smash.patch
    (from rev 383773, id3lib/trunk/61-fix_vbr_stack_smash.patch)
  id3lib/repos/staging-x86_64/PKGBUILD
    (from rev 383773, id3lib/trunk/PKGBUILD)

-------------------------------------------+
 00-add-libz-to-compilation.patch          |   14 +
 05-create-m4-directory.patch              |   12 +
 10-fix-compilation-with-cpp-headers.patch |   22 +++
 15-fix-headers-of-main-functions.patch    |   45 ++++++
 20-create-manpages.patch                  |  198 ++++++++++++++++++++++++++++
 30-fix-utf16.patch                        |   38 +++++
 40-deal-with-mkstemp.patch                |   54 +++++++
 50-remove-outdated-check.patch            |   11 +
 60-add-c-wrapper-functions.patch          |   58 ++++++++
 60-fix_make_check.patch                   |   50 +++++++
 60-id3lib-missing-nullpointer-check.patch |   12 +
 60-spelling.patch                         |  107 +++++++++++++++
 61-fix_vbr_stack_smash.patch              |   19 ++
 PKGBUILD                                  |   83 +++++++++++
 14 files changed, 723 insertions(+)

Copied: id3lib/repos/staging-x86_64/00-add-libz-to-compilation.patch (from rev 383773, id3lib/trunk/00-add-libz-to-compilation.patch)
===================================================================
--- staging-x86_64/00-add-libz-to-compilation.patch	                        (rev 0)
+++ staging-x86_64/00-add-libz-to-compilation.patch	2020-05-16 09:09:11 UTC (rev 383774)
@@ -0,0 +1,14 @@
+This patch was first introduced in version 3.8.3-3
+
+It fixes http://bugs.debian.org/208672
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -74,6 +74,8 @@
+ 
+ if ID3_NEEDZLIB
+ LDADD        = $(top_builddir)/zlib/src/libz.la
++else
++libid3_la_LIBADD  = -lz
+ endif
+ 
+ libid3_la_LDFLAGS = \

Copied: id3lib/repos/staging-x86_64/05-create-m4-directory.patch (from rev 383773, id3lib/trunk/05-create-m4-directory.patch)
===================================================================
--- staging-x86_64/05-create-m4-directory.patch	                        (rev 0)
+++ staging-x86_64/05-create-m4-directory.patch	2020-05-16 09:09:11 UTC (rev 383774)
@@ -0,0 +1,12 @@
+Create a local m4 subdirectory
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -12,6 +12,8 @@
+ # require automake 1.5
+ AUTOMAKE_OPTIONS = 1.5
+ 
++ACLOCAL_AMFLAGS = -I m4
++
+ EXTRA_DIST =                    \
+         HISTORY                 \
+         config.h.win32          \

Copied: id3lib/repos/staging-x86_64/10-fix-compilation-with-cpp-headers.patch (from rev 383773, id3lib/trunk/10-fix-compilation-with-cpp-headers.patch)
===================================================================
--- staging-x86_64/10-fix-compilation-with-cpp-headers.patch	                        (rev 0)
+++ staging-x86_64/10-fix-compilation-with-cpp-headers.patch	2020-05-16 09:09:11 UTC (rev 383774)
@@ -0,0 +1,22 @@
+This patch imports the proper C++ headers
+--- a/include/id3/id3lib_strings.h
++++ b/include/id3/id3lib_strings.h
+@@ -30,6 +30,7 @@
+ #define _ID3LIB_STRINGS_H_
+ 
+ #include <string>
++#include <cstring>
+ 
+ #if (defined(__GNUC__) && (__GNUC__ >= 3) || (defined(_MSC_VER) && _MSC_VER > 1000))
+ namespace std
+--- a/include/id3/writers.h
++++ b/include/id3/writers.h
+@@ -30,7 +30,7 @@
+ 
+ #include "id3/writer.h"
+ #include "id3/id3lib_streams.h"
+-//#include <string.h>
++#include <cstring>
+ 
+ class ID3_CPP_EXPORT ID3_OStreamWriter : public ID3_Writer
+ {

Copied: id3lib/repos/staging-x86_64/15-fix-headers-of-main-functions.patch (from rev 383773, id3lib/trunk/15-fix-headers-of-main-functions.patch)
===================================================================
--- staging-x86_64/15-fix-headers-of-main-functions.patch	                        (rev 0)
+++ staging-x86_64/15-fix-headers-of-main-functions.patch	2020-05-16 09:09:11 UTC (rev 383774)
@@ -0,0 +1,45 @@
+This patch fixes some function headers in demo code used during 'make check'
+--- a/examples/demo_info.cpp
++++ b/examples/demo_info.cpp
+@@ -309,7 +309,7 @@
+ 
+ #define DEBUG
+ 
+-int main( unsigned int argc, char * const argv[])
++int main(int argc, char * const argv[])
+ {
+   ID3D_INIT_DOUT();
+ 
+--- a/examples/demo_convert.cpp
++++ b/examples/demo_convert.cpp
+@@ -84,7 +84,7 @@
+   }
+ }
+ 
+-int main( unsigned int argc, char * const argv[])
++int main(int argc, char * const argv[])
+ {
+   flags_t ulFlag = ID3TT_ALL;
+   gengetopt_args_info args;
+--- a/examples/demo_copy.cpp
++++ b/examples/demo_copy.cpp
+@@ -81,7 +81,7 @@
+   }
+ }
+ 
+-int main( unsigned int argc, char * const argv[])
++int main(int argc, char * const argv[])
+ {
+   int ulFlag = ID3TT_ID3;
+   ID3D_INIT_DOUT();
+--- a/examples/demo_tag.cpp
++++ b/examples/demo_tag.cpp
+@@ -46,7 +46,7 @@
+     os << "v2";
+ }
+ 
+-int main( unsigned int argc, char * const argv[])
++int main(int argc, char * const argv[])
+ {
+   int ulFlag = ID3TT_ID3;
+   ID3D_INIT_DOUT();

Copied: id3lib/repos/staging-x86_64/20-create-manpages.patch (from rev 383773, id3lib/trunk/20-create-manpages.patch)
===================================================================
--- staging-x86_64/20-create-manpages.patch	                        (rev 0)
+++ staging-x86_64/20-create-manpages.patch	2020-05-16 09:09:11 UTC (rev 383774)
@@ -0,0 +1,198 @@
+This patch adds debian-made man pages
+--- /dev/null
++++ b/doc/man/id3info.1
+@@ -0,0 +1,31 @@
++.TH ID3INFO 1 "May 2000" local "User Command"
++.SH NAME
++id3info \- Display id3 tag information.
++.SH SYNOPSIS
++.B id3info
++.RB [
++.I OPTION
++.RB ]
++.RB [
++.I FILE
++.RB ]
++.br
++.SH DESCRIPTION
++.B Id3info
++displays both the id3v1 and id3v2 tag information for a file.
++Id3info will not differentiate between the two types of tags.
++.SH OPTIONS
++.TP
++.B \-h, \-\-help
++Display help and exit
++.TP
++.B \-v, \-\-version
++Display version information and exit
++.SH SEE ALSO
++id3convert(1), id3tag(1), id3v2(1)
++.SH AUTHOR
++.B id3lib
++was originally designed and implemented by Dirk Mahoney and is
++maintained by Scott Thomas Haug <sth2 at cs.wustl.edu>. Manual page written for
++Debian GNU/Linux by Robert Woodcock <rcw at debian.org>.
++
+--- /dev/null
++++ b/doc/man/id3tag.1
+@@ -0,0 +1,69 @@
++.TH ID3TAG 1 "May 2000" local "User Command"
++.SH NAME
++id3tag \- Tags an mp3 file with id3v1 and/or id3v2 tags.
++.SH SYNOPSIS
++.B id3tag
++.RB [
++.I OPTION
++.RB ] ...
++.RB [
++.I FILE
++.RB ] ...
++.br
++.SH DESCRIPTION
++.B Id3tag
++will render both types of tag by default.  Only the last
++tag type indicated in the option list will be used.  Non-
++rendered will remain unchanged in the original file.  Will
++also parse and convert Lyrics3 v2.0 frames, but will not
++render them.
++
++.SH OPTIONS
++.TP
++.B \-1, \-\-v1tag
++Render only the id3v1 tag
++.TP
++.B \-2, \-\-v2tag
++Render only the id3v2 tag
++.TP
++.B \-h, \-\-help
++Display help and exit
++.TP
++.B \-v, \-\-version
++Display version information and exit
++.TP
++.B \-a, \-\-artist ARTIST
++Set the artist information
++.TP
++.B \-s, \-\-song SONG
++Set the song title information
++.TP
++.B \-A, \-\-album ALBUM
++Set the album title information
++.TP
++.B \-c, \-\-comment COMMENT
++Set the comment information
++.TP
++.B \-C, \-\-desc DESCRIPTION
++Set the comment description
++.TP
++.B \-g, \-\-genre num
++Set the genre number
++.TP
++.B \-y, \-\-year num
++Set the year
++.TP
++.B \-t, \-\-track num
++Set the track number
++.TP
++.B \-T, \-\-total num
++Set the total number of tracks on the album
++
++.SH SEE ALSO
++id3convert(1), id3info(1), id3v2(1)
++.SH AUTHOR
++.B id3lib
++was originally designed and implemented by Dirk Mahoney and is
++maintained by Scott Thomas Haug <sth2 at cs.wustl.edu>. Manual page written for
++Debian GNU/Linux by Robert Woodcock <rcw at debian.org>.
++
+--- /dev/null
++++ b/doc/man/id3convert.1
+@@ -0,0 +1,47 @@
++.TH ID3CONVERT 1 "May 2000" local "User Command"
++.SH NAME
++id3convert \- Converts between id3v1 and id3v2 tags of an mp3 file.
++.SH SYNOPSIS
++.B id3convert
++.RB [
++.I OPTION
++.RB ]
++.RB [
++.I FILE
++.RB ]
++.br
++.SH DESCRIPTION
++.B Id3convert
++converts between id3v1 and id3v2 tags of an mp3 file. Id3convert will render
++both types of tag by default. Only the last tag type indicated in the option
++list will be used. Non-rendered tags will remain unchanged in the original
++file. Id3convert will also parse and convert Lyrics3 v2.0 frames, but will
++not render them.
++
++.SH OPTIONS
++.TP
++.B \-1, \-\-v1tag
++Render only the id3v1 tag
++.TP
++.B \-2, \-\-v2tag
++Render only the id3v2 tag
++.TP
++.B \-s, \-\-strip
++Strip, rather than render, the tags
++.TP
++.B \-p, \-\-padding
++Use padding in the tag
++.TP
++.B \-h, \-\-help
++Display help and exit
++.TP
++.B \-v, \-\-version
++Display version information and exit
++
++.SH SEE ALSO
++id3tag(1), id3info(1), id3v2(1)
++.SH AUTHOR
++.B id3lib
++was originally designed and implemented by Dirk Mahoney and is
++maintained by Scott Thomas Haug <sth2 at cs.wustl.edu>. Manual page written for
++Debian GNU/Linux by Robert Woodcock <rcw at debian.org>.
+--- /dev/null
++++ b/doc/man/id3cp.1
+@@ -0,0 +1,38 @@
++.TH ID3CP 1 "July 2001" local "User Command"
++.SH NAME
++id3cp \- Copies tags from one file to another.
++.SH SYNOPSIS
++.B id3cp
++.RB [
++.I OPTION
++.RB ] ...
++.RB [
++.I SOURCE
++.RB ]
++.RB [
++.I DEST
++.RB ]
++.br
++.SH DESCRIPTION
++.B Id3cp
++copies tags from SOURCE to DEST.
++.SH OPTIONS
++.TP
++.B \-1, \-\-v1tag
++Render only the id3v1 tag
++.TP
++.B \-2, \-\-v2tag
++Render only the id3v2 tag
++.TP
++.B \-h, \-\-help
++Display help and exit
++.TP
++.B \-v, \-\-version
++Display version information and exit
++.SH SEE ALSO
++id3convert(1), id3info(1), id3v2(1)
++.SH AUTHOR
++.B id3lib
++was originally designed and implemented by Dirk Mahoney and is
++maintained by Scott Thomas Haug <sth2 at cs.wustl.edu>. Manual page written for
++Debian GNU/Linux by Robert Woodcock <rcw at debian.org>.

Copied: id3lib/repos/staging-x86_64/30-fix-utf16.patch (from rev 383773, id3lib/trunk/30-fix-utf16.patch)
===================================================================
--- staging-x86_64/30-fix-utf16.patch	                        (rev 0)
+++ staging-x86_64/30-fix-utf16.patch	2020-05-16 09:09:11 UTC (rev 383774)
@@ -0,0 +1,38 @@
+Patch from 'Spoon' to fix issues with writing certain unicode characters
+--- a/ChangeLog
++++ b/ChangeLog
+@@ -1,3 +1,8 @@
++2006-02-17  Jerome Couderc
++
++    * Patch from Spoon to fix UTF-16 writing bug
++      http://sourceforge.net/tracker/index.php?func=detail&aid=1016290&group_id=979&atid=300979
++
+ 2003-03-02 Sunday 17:38   Thijmen Klok <thijmen at id3lib.org>
+ 
+ 	* THANKS (1.20): added more people 
+--- a/src/io_helpers.cpp
++++ b/src/io_helpers.cpp
+@@ -363,11 +363,22 @@
+     // Write the BOM: 0xFEFF
+     unicode_t BOM = 0xFEFF;
+     writer.writeChars((const unsigned char*) &BOM, 2);
++    // Patch from Spoon : 2004-08-25 14:17
++    //   http://sourceforge.net/tracker/index.php?func=detail&aid=1016290&group_id=979&atid=300979
++    // Wrong code
++    //for (size_t i = 0; i < size; i += 2)
++    //{
++    //  unicode_t ch = (data[i] << 8) | data[i+1];
++    //  writer.writeChars((const unsigned char*) &ch, 2);
++    //}
++    // Right code
++    unsigned char *pdata = (unsigned char *) data.c_str();
+     for (size_t i = 0; i < size; i += 2)
+     {
+-      unicode_t ch = (data[i] << 8) | data[i+1];
++      unicode_t ch = (pdata[i] << 8) | pdata[i+1];
+       writer.writeChars((const unsigned char*) &ch, 2);
+     }
++    // End patch
+   }
+   return writer.getCur() - beg;
+ }

Copied: id3lib/repos/staging-x86_64/40-deal-with-mkstemp.patch (from rev 383773, id3lib/trunk/40-deal-with-mkstemp.patch)
===================================================================
--- staging-x86_64/40-deal-with-mkstemp.patch	                        (rev 0)
+++ staging-x86_64/40-deal-with-mkstemp.patch	2020-05-16 09:09:11 UTC (rev 383774)
@@ -0,0 +1,54 @@
+This patch fixes an issues where temporary files were created in an insecure
+way.
+
+It was first intruduced in version 3.8.3-7 and fixes
+http://bugs.debian.org/438540
+--- a/src/tag_file.cpp
++++ b/src/tag_file.cpp
+@@ -242,8 +242,8 @@
+     strcpy(sTempFile, filename.c_str());
+     strcat(sTempFile, sTmpSuffix.c_str());
+ 
+-#if ((defined(__GNUC__) && __GNUC__ >= 3  ) || !defined(HAVE_MKSTEMP))
+-    // This section is for Windows folk && gcc 3.x folk
++#if !defined(HAVE_MKSTEMP)
++    // This section is for Windows folk
+     fstream tmpOut;
+     createFile(sTempFile, tmpOut);
+ 
+@@ -257,7 +257,7 @@
+       tmpOut.write((char *)tmpBuffer, nBytes);
+     }
+ 
+-#else //((defined(__GNUC__) && __GNUC__ >= 3  ) || !defined(HAVE_MKSTEMP))
++#else //!defined(HAVE_MKSTEMP)
+ 
+     // else we gotta make a temp file, copy the tag into it, copy the
+     // rest of the old file after the tag, delete the old file, rename
+@@ -270,7 +270,7 @@
+       //ID3_THROW_DESC(ID3E_NoFile, "couldn't open temp file");
+     }
+ 
+-    ofstream tmpOut(fd);
++    ofstream tmpOut(sTempFile);
+     if (!tmpOut)
+     {
+       tmpOut.close();
+@@ -285,14 +285,14 @@
+     uchar tmpBuffer[BUFSIZ];
+     while (file)
+     {
+-      file.read(tmpBuffer, BUFSIZ);
++      file.read((char *)tmpBuffer, BUFSIZ);
+       size_t nBytes = file.gcount();
+-      tmpOut.write(tmpBuffer, nBytes);
++      tmpOut.write((char *)tmpBuffer, nBytes);
+     }
+ 
+     close(fd); //closes the file
+ 
+-#endif ////((defined(__GNUC__) && __GNUC__ >= 3  ) || !defined(HAVE_MKSTEMP))
++#endif ////!defined(HAVE_MKSTEMP)
+ 
+     tmpOut.close();
+     file.close();

Copied: id3lib/repos/staging-x86_64/50-remove-outdated-check.patch (from rev 383773, id3lib/trunk/50-remove-outdated-check.patch)
===================================================================
--- staging-x86_64/50-remove-outdated-check.patch	                        (rev 0)
+++ staging-x86_64/50-remove-outdated-check.patch	2020-05-16 09:09:11 UTC (rev 383774)
@@ -0,0 +1,11 @@
+We don't actually need iomanip.h
+--- a/configure.in
++++ b/configure.in
+@@ -227,7 +227,6 @@
+ )
+ AC_CHECK_HEADERS(               \
+   string                        \
+-  iomanip.h                     \
+   ,,AC_MSG_ERROR([Missing a vital header file for id3lib])
+ )
+ 

Copied: id3lib/repos/staging-x86_64/60-add-c-wrapper-functions.patch (from rev 383773, id3lib/trunk/60-add-c-wrapper-functions.patch)
===================================================================
--- staging-x86_64/60-add-c-wrapper-functions.patch	                        (rev 0)
+++ staging-x86_64/60-add-c-wrapper-functions.patch	2020-05-16 09:09:11 UTC (rev 383774)
@@ -0,0 +1,58 @@
+This patch adds C wrapper functions for field encoding.
+
+It was first introduced in version 3.8.3-8 and fixes
+http://bugs.debian.org/281292
+--- a/include/id3.h
++++ b/include/id3.h
+@@ -104,6 +104,9 @@
+   ID3_C_EXPORT void                 CCONV ID3Field_GetBINARY          (const ID3Field *field, uchar *buffer, size_t buffLength);
+   ID3_C_EXPORT void                 CCONV ID3Field_FromFile           (ID3Field *field, const char *fileName);
+   ID3_C_EXPORT void                 CCONV ID3Field_ToFile             (const ID3Field *field, const char *fileName);
++  ID3_C_EXPORT bool                 CCONV ID3Field_SetEncoding        (ID3Field *field, ID3_TextEnc enc);
++  ID3_C_EXPORT ID3_TextEnc          CCONV ID3Field_GetEncoding        (const ID3Field *field);
++  ID3_C_EXPORT bool                 CCONV ID3Field_IsEncodable        (const ID3Field *field);
+ 
+   /* field-info wrappers */
+   ID3_C_EXPORT char*                CCONV ID3FrameInfo_ShortName     (ID3_FrameID frameid);
+--- a/src/c_wrapper.cpp
++++ b/src/c_wrapper.cpp
+@@ -681,6 +681,39 @@
+     }
+   }
+ 
++  ID3_C_EXPORT bool CCONV
++  ID3Field_SetEncoding(ID3Field *field, ID3_TextEnc enc)
++  {
++    bool changed = false;
++    if (field)
++    {
++      ID3_CATCH(changed = reinterpret_cast<ID3_Field *>(field)->SetEncoding(enc));
++    }
++    return changed;
++  }
++
++  ID3_C_EXPORT ID3_TextEnc CCONV
++  ID3Field_GetEncoding(const ID3Field *field)
++  {
++    ID3_TextEnc enc = ID3TE_NONE;
++    if (field)
++    {
++      ID3_CATCH(enc = reinterpret_cast<const ID3_Field *>(field)->GetEncoding());
++    }
++    return enc;
++  }
++
++  ID3_C_EXPORT bool CCONV
++  ID3Field_IsEncodable(const ID3Field *field)
++  {
++    bool isEncodable = false;
++    if (field)
++    {
++      ID3_CATCH(isEncodable = reinterpret_cast<const ID3_Field *>(field)->IsEncodable());
++    }
++    return isEncodable;
++  }
++
+ #ifdef __cplusplus
+ }
+ #endif /* __cplusplus */

Copied: id3lib/repos/staging-x86_64/60-fix_make_check.patch (from rev 383773, id3lib/trunk/60-fix_make_check.patch)
===================================================================
--- staging-x86_64/60-fix_make_check.patch	                        (rev 0)
+++ staging-x86_64/60-fix_make_check.patch	2020-05-16 09:09:11 UTC (rev 383774)
@@ -0,0 +1,50 @@
+This patch fixes some function headers and imports in order for 'make check'
+to work.
+
+It was first introduced in version 3.8.3-9
+diff -Naur id3lib-3.8.3.orig/examples/findeng.cpp id3lib-3.8.3/examples/findeng.cpp
+--- id3lib-3.8.3.orig/examples/findeng.cpp	2003-03-02 01:23:00.000000000 +0100
++++ id3lib-3.8.3/examples/findeng.cpp	2009-12-10 00:58:12.173795997 +0100
+@@ -9,7 +9,7 @@
+ using std::cout;
+ using std::endl;
+ 
+-int main(unsigned argc, char* argv[])
++int main(int argc, char* argv[])
+ {
+   ID3D_INIT_DOUT();
+   ID3D_INIT_WARNING();
+diff -Naur id3lib-3.8.3.orig/examples/findstr.cpp id3lib-3.8.3/examples/findstr.cpp
+--- id3lib-3.8.3.orig/examples/findstr.cpp	2003-03-02 01:23:00.000000000 +0100
++++ id3lib-3.8.3/examples/findstr.cpp	2009-12-10 00:57:48.036819825 +0100
+@@ -9,7 +9,7 @@
+ using std::cout;
+ using std::endl;
+ 
+-int main(unsigned argc, char* argv[])
++int main(int argc, char* argv[])
+ {
+   ID3D_INIT_DOUT();
+   ID3D_INIT_WARNING();
+diff -Naur id3lib-3.8.3.orig/examples/test_io.cpp id3lib-3.8.3/examples/test_io.cpp
+--- id3lib-3.8.3.orig/examples/test_io.cpp	2003-03-02 01:23:00.000000000 +0100
++++ id3lib-3.8.3/examples/test_io.cpp	2009-12-10 00:57:03.612111640 +0100
+@@ -11,6 +11,9 @@
+ #include <id3/io_strings.h>
+ #include <id3/utils.h>
+ 
++using std::cin;
++using std::hex;
++using std::dec;
+ using std::cout;
+ using std::endl;
+ using std::cerr;
+@@ -18,7 +21,7 @@
+ using namespace dami;
+ 
+ int
+-main(size_t argc, const char** argv)
++main(int argc, const char** argv)
+ {
+   ID3D_INIT_DOUT();
+   ID3D_INIT_WARNING();

Copied: id3lib/repos/staging-x86_64/60-id3lib-missing-nullpointer-check.patch (from rev 383773, id3lib/trunk/60-id3lib-missing-nullpointer-check.patch)
===================================================================
--- staging-x86_64/60-id3lib-missing-nullpointer-check.patch	                        (rev 0)
+++ staging-x86_64/60-id3lib-missing-nullpointer-check.patch	2020-05-16 09:09:11 UTC (rev 383774)
@@ -0,0 +1,12 @@
+This patch adds a check for a null pointer
+--- a/src/header_tag.cpp
++++ b/src/header_tag.cpp
+@@ -54,7 +54,7 @@
+ {
+   size_t bytesUsed = ID3_TagHeader::SIZE;
+ 
+-  if (_info->is_extended)
++  if (_info && _info->is_extended)
+   {
+     bytesUsed += _info->extended_bytes;
+   }

Copied: id3lib/repos/staging-x86_64/60-spelling.patch (from rev 383773, id3lib/trunk/60-spelling.patch)
===================================================================
--- staging-x86_64/60-spelling.patch	                        (rev 0)
+++ staging-x86_64/60-spelling.patch	2020-05-16 09:09:11 UTC (rev 383774)
@@ -0,0 +1,107 @@
+This patch fixes some minor spelling mistakes
+diff -Naur id3lib-3.8.3.orig//ChangeLog id3lib-3.8.3//ChangeLog
+--- id3lib-3.8.3.orig//ChangeLog	2010-06-08 05:21:47.817061336 +0200
++++ id3lib-3.8.3//ChangeLog	2010-06-08 05:21:05.320811354 +0200
+@@ -2266,7 +2266,7 @@
+ 	* examples/demo_info.cpp (1.19): 
+ 	(PrintInformation): When printing synced lyrics info, now uses a 
+ 	MemoryReader, BinaryNumberReader, and TextReader to extract the 
+-	infromation from the binary field.  This is a cheat, since these 
++	information from the binary field.  This is a cheat, since these 
+ 	classes aren't normally exposed to folks using the library. 
+ 	Hopefully they will be exposed soon enough for the next major
+ 	release.  
+diff -Naur id3lib-3.8.3.orig//doc/id3v2.3.0.html id3lib-3.8.3//doc/id3v2.3.0.html
+--- id3lib-3.8.3.orig//doc/id3v2.3.0.html	2010-06-08 05:21:47.859810543 +0200
++++ id3lib-3.8.3//doc/id3v2.3.0.html	2010-06-08 05:21:05.373811128 +0200
+@@ -2157,7 +2157,7 @@
+  64.Native American
+  65.Cabaret
+  66.New Wave
+- 67.Psychadelic
++ 67.Psychedelic
+  68.Rave
+  69.Showtunes
+  70.Trailer
+@@ -2254,4 +2254,4 @@
+ Email: <a href="mailto:johan at id3.org">johan at id3.org</a>
+ </p>
+ 
+-</body></html>
+\ No newline at end of file
++</body></html>
+diff -Naur id3lib-3.8.3.orig//doc/id3v2.3.0.txt id3lib-3.8.3//doc/id3v2.3.0.txt
+--- id3lib-3.8.3.orig//doc/id3v2.3.0.txt	2010-06-08 05:21:47.860810639 +0200
++++ id3lib-3.8.3//doc/id3v2.3.0.txt	2010-06-08 05:21:05.374811307 +0200
+@@ -1929,7 +1929,7 @@
+      64.Native American
+      65.Cabaret
+      66.New Wave
+-     67.Psychadelic
++     67.Psychedelic
+      68.Rave
+      69.Showtunes
+      70.Trailer
+diff -Naur id3lib-3.8.3.orig//id3com/id3com.idl id3lib-3.8.3//id3com/id3com.idl
+--- id3lib-3.8.3.orig//id3com/id3com.idl	2010-06-08 05:21:47.818060988 +0200
++++ id3lib-3.8.3//id3com/id3com.idl	2010-06-08 05:21:05.355061546 +0200
+@@ -179,7 +179,7 @@
+       /* USER */ ID3_TERMSOFUSE,        /**< Terms of use */
+       /* USLT */ ID3_UNSYNCEDLYRICS,    /**< Unsynchronized lyric/text transcription */
+       /* WCOM */ ID3_WWWCOMMERCIALINFO, /**< Commercial information */
+-      /* WCOP */ ID3_WWWCOPYRIGHT,      /**< Copyright/Legal infromation */
++      /* WCOP */ ID3_WWWCOPYRIGHT,      /**< Copyright/Legal information */
+       /* WOAF */ ID3_WWWAUDIOFILE,      /**< Official audio file webpage */
+       /* WOAR */ ID3_WWWARTIST,         /**< Official artist/performer webpage */
+       /* WOAS */ ID3_WWWAUDIOSOURCE,    /**< Official audio source webpage */
+diff -Naur id3lib-3.8.3.orig//include/id3/globals.h id3lib-3.8.3//include/id3/globals.h
+--- id3lib-3.8.3.orig//include/id3/globals.h	2010-06-08 05:21:47.818060988 +0200
++++ id3lib-3.8.3//include/id3/globals.h	2010-06-08 05:22:27.395811102 +0200
+@@ -313,7 +313,7 @@
+   /* USER */ ID3FID_TERMSOFUSE,        /**< Terms of use */
+   /* USLT */ ID3FID_UNSYNCEDLYRICS,    /**< Unsynchronized lyric/text transcription */
+   /* WCOM */ ID3FID_WWWCOMMERCIALINFO, /**< Commercial information */
+-  /* WCOP */ ID3FID_WWWCOPYRIGHT,      /**< Copyright/Legal infromation */
++  /* WCOP */ ID3FID_WWWCOPYRIGHT,      /**< Copyright/Legal information */
+   /* WOAF */ ID3FID_WWWAUDIOFILE,      /**< Official audio file webpage */
+   /* WOAR */ ID3FID_WWWARTIST,         /**< Official artist/performer webpage */
+   /* WOAS */ ID3FID_WWWAUDIOSOURCE,    /**< Official audio source webpage */
+@@ -608,7 +608,7 @@
+   "Native American",   //64
+   "Cabaret",           //65
+   "New Wave",          //66
+-  "Psychadelic",       //67
++  "Psychedelic",       //67
+   "Rave",              //68
+   "Showtunes",         //69
+   "Trailer",           //70
+@@ -686,7 +686,7 @@
+   "Christian Rock ",       //141
+   "Merengue",              //142
+   "Salsa",                 //143
+-  "Trash Metal",           //144
++  "Thrash Metal",          //144
+   "Anime",                 //145
+   "JPop",                  //146
+   "Synthpop"               //147
+diff -Naur id3lib-3.8.3.orig//src/field.cpp id3lib-3.8.3//src/field.cpp
+--- id3lib-3.8.3.orig//src/field.cpp	2010-06-08 05:21:47.818060988 +0200
++++ id3lib-3.8.3//src/field.cpp	2010-06-08 05:21:05.373811128 +0200
+@@ -719,7 +719,7 @@
+ // USER       ID3FID_TERMSOFUSE        Terms of use
+ // USLT  ULT  ID3FID_UNSYNCEDLYRICS    Unsynchronized lyric/text transcription
+ // WCOM  WCM  ID3FID_WWWCOMMERCIALINFO Commercial information
+-// WCOP  WCM  ID3FID_WWWCOPYRIGHT      Copyright/Legal infromation
++// WCOP  WCM  ID3FID_WWWCOPYRIGHT      Copyright/Legal information
+ // WOAF  WCP  ID3FID_WWWAUDIOFILE      Official audio file webpage
+ // WOAR  WAF  ID3FID_WWWARTIST         Official artist/performer webpage
+ // WOAS  WAR  ID3FID_WWWAUDIOSOURCE    Official audio source webpage
+@@ -813,7 +813,7 @@
+   {ID3FID_TERMSOFUSE,        ""   , "USER", false, false, ID3FD_TermsOfUse,    "Terms of use"},
+   {ID3FID_UNSYNCEDLYRICS,    "ULT", "USLT", false, false, ID3FD_GeneralText,   "Unsynchronized lyric/text transcription"},
+   {ID3FID_WWWCOMMERCIALINFO, "WCM", "WCOM", false, false, ID3FD_URL,           "Commercial information"},
+-  {ID3FID_WWWCOPYRIGHT,      "WCP", "WCOP", false, false, ID3FD_URL,           "Copyright/Legal infromation"},
++  {ID3FID_WWWCOPYRIGHT,      "WCP", "WCOP", false, false, ID3FD_URL,           "Copyright/Legal information"},
+   {ID3FID_WWWAUDIOFILE,      "WAF", "WOAF", false, false, ID3FD_URL,           "Official audio file webpage"},
+   {ID3FID_WWWARTIST,         "WAR", "WOAR", false, false, ID3FD_URL,           "Official artist/performer webpage"},
+   {ID3FID_WWWAUDIOSOURCE,    "WAS", "WOAS", false, false, ID3FD_URL,           "Official audio source webpage"},

Copied: id3lib/repos/staging-x86_64/61-fix_vbr_stack_smash.patch (from rev 383773, id3lib/trunk/61-fix_vbr_stack_smash.patch)
===================================================================
--- staging-x86_64/61-fix_vbr_stack_smash.patch	                        (rev 0)
+++ staging-x86_64/61-fix_vbr_stack_smash.patch	2020-05-16 09:09:11 UTC (rev 383774)
@@ -0,0 +1,19 @@
+Description: Fix crashes when reading VBR MP3 file.
+Bug-Ubuntu: https://launchpad.net/bugs/444466
+Origin: upstream, http://sourceforge.net/tracker/?func=detail&aid=937707&group_id=979&atid=300979
+Forwarded: yes
+Author: Urs Fleisch
+
+Index: id3lib3.8.3-3.8.3/src/mp3_parse.cpp
+===================================================================
+--- id3lib3.8.3-3.8.3.orig/src/mp3_parse.cpp	2009-10-06 23:12:10.381250132 +0200
++++ id3lib3.8.3-3.8.3/src/mp3_parse.cpp	2009-10-06 23:14:09.545252591 +0200
+@@ -465,7 +465,7 @@
+   // from http://www.xingtech.com/developer/mp3/
+ 
+   const size_t VBR_HEADER_MIN_SIZE = 8;     // "xing" + flags are fixed
+-  const size_t VBR_HEADER_MAX_SIZE = 116;   // frames, bytes, toc and scale are optional
++  const size_t VBR_HEADER_MAX_SIZE = 120;   // frames, bytes, toc and scale are optional
+ 
+   if (mp3size >= vbr_header_offest + VBR_HEADER_MIN_SIZE) 
+   {

Copied: id3lib/repos/staging-x86_64/PKGBUILD (from rev 383773, id3lib/trunk/PKGBUILD)
===================================================================
--- staging-x86_64/PKGBUILD	                        (rev 0)
+++ staging-x86_64/PKGBUILD	2020-05-16 09:09:11 UTC (rev 383774)
@@ -0,0 +1,83 @@
+# Maintainer : Guillaume ALAUX <guillaume at archlinux.org>
+# Contributor: Jochem Kossen   <j.kossen at home.nl>
+# Contributor: rtfreedman      <rob.til.freedman at googlemail.com>
+
+pkgname=id3lib
+pkgver=3.8.3
+pkgrel=18
+pkgdesc='Library for reading, writing, and manipulating ID3v1 and ID3v2 tags'
+arch=('x86_64')
+license=('LGPL')
+url="http://id3lib.sourceforge.net/"
+depends=('zlib' 'gcc-libs')
+source=(https://downloads.sourceforge.net/sourceforge/${pkgname}/${pkgname}-${pkgver}.tar.gz
+        00-add-libz-to-compilation.patch
+        05-create-m4-directory.patch
+        10-fix-compilation-with-cpp-headers.patch
+        15-fix-headers-of-main-functions.patch
+        20-create-manpages.patch
+        30-fix-utf16.patch
+        40-deal-with-mkstemp.patch
+        50-remove-outdated-check.patch
+        60-add-c-wrapper-functions.patch
+        60-fix_make_check.patch
+        60-id3lib-missing-nullpointer-check.patch
+        60-spelling.patch
+        61-fix_vbr_stack_smash.patch)
+
+sha256sums=('2749cc3c0cd7280b299518b1ddf5a5bcfe2d1100614519b68702230e26c7d079'
+            'e884395cf0bd7b44a550fc8785d79c0992d749be1edc45b00d289cbbd179c6d5'
+            'c41ec6889b775119f71c25fa09bb5110bcf550a14e6aac80597479df453de5fb'
+            '5fb24595095596ff55d876fb3e5277000f04c4f7a3e07aff5c05e11639dc2165'
+            '042deb7c2df1afa0851622b6086e8eb4b007cc6cfcd70210852d5c25e39b08b1'
+            '97442e14a5147df36f35d6a396e2b3fb6e155060ec672d91a68bd1a742234b4e'
+            'a7cce4176df773677bfc6a527a0465d460fe60a269402af9bdfc9dd6104ea6a4'
+            'd7999cdb425ba8013dd11da7fb570e875d368e5b1236c2b094abee8446f04218'
+            'f908af7715fb164081d191c766b040cefa0a94f1414e98f60bc38b3e0b1aa309'
+            '1b06c5d2c36e6a1f2236c4603a934d8cd675414dcfd52b997cb584404c0bc77d'
+            '88aded7423f266d2fedb0eef9dbb272b53cc776ae98bd71dd5afb30b6ac48515'
+            '85f20c4d3467f48df1bcaa4150bae55e95270cabb542589f167a914b2f553d04'
+            'b31bfa7213325776f6784a684f082814d3affb050d36a7c41cf1b1df07228c5c'
+            '5a24d460c9dd1e643ac57b817ea9cec87f44c1d49381065f83879b2eea36adf7')
+
+prepare() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+
+  patch -p1 -i ../00-add-libz-to-compilation.patch
+  patch -p1 -i ../05-create-m4-directory.patch
+  patch -p1 -i ../10-fix-compilation-with-cpp-headers.patch
+  patch -p1 -i ../15-fix-headers-of-main-functions.patch
+  patch -p1 -i ../20-create-manpages.patch
+  patch -p1 -i ../30-fix-utf16.patch
+  patch -p1 -i ../40-deal-with-mkstemp.patch
+  patch -p1 -i ../60-add-c-wrapper-functions.patch
+  patch -p1 -i ../60-fix_make_check.patch
+  patch -p1 -i ../60-id3lib-missing-nullpointer-check.patch
+  patch -p1 -i ../60-spelling.patch
+  patch -p1 -i ../61-fix_vbr_stack_smash.patch
+  patch -p1 -i ../50-remove-outdated-check.patch
+
+  libtoolize -fc
+  aclocal
+  autoconf
+  automake --add-missing --copy
+}
+
+build() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  ./configure --prefix=/usr
+  make
+}
+
+check() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  make check
+}
+
+package() {
+  cd "${srcdir}/${pkgname}-${pkgver}"
+  make DESTDIR="${pkgdir}" install
+
+  install -d "${pkgdir}"/usr/share/man/man1
+  cp doc/man/* "${pkgdir}"/usr/share/man/man1
+}


More information about the arch-commits mailing list