Bug#413555: marked as done (libtag1c2a: id3v2 zero-sized frame parsing)

"Debian Bug Tracking System" <[email protected]> Wed, 29 Jul 2026 17:13:02 +0000
Newsgroups gmane.linux.debian.devel.multimedia
Message-ID <[email protected]>
This is a multi-part message in MIME format...

------------=_1785345182-3324308-0
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset="utf-8"

Your message dated Wed, 29 Jul 2026 12:44:13 -0400
with message-id <[email protected]>
and subject line Re: libtag1c2a: id3v2 zero-sized frame parsing
has caused the Debian Bug report #413555,
regarding libtag1c2a: id3v2 zero-sized frame parsing
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


--=20
413555: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=3D413555
Debian Bug Tracking System
Contact [email protected] with problems

------------=_1785345182-3324308-0
Content-Type: message/rfc822
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

Received: (at submit) by bugs.debian.org; 5 Mar 2007 19:44:23 +0000
Return-path: <[email protected]>
Received: from mail.maxer.hu ([212.92.23.71])
	by rietz.debian.org with esmtp (Exim 4.50)
	id 1HOJ6d-000299-3H
	for [email protected]; Mon, 05 Mar 2007 19:44:23 +0000
Received: from catv-5062a0a6.catv.broadband.hu ([80.98.160.166] helo=blehel.)
	by mail.maxer.hu (Exim 4.62) with esmtpsa ([email protected])
	(cypher TLS-1.0:RSA_ARCFOUR_SHA1:16)
	id 1HOJ6a-0005Rf-Fm
	for [email protected]; Mon, 05 Mar 2007 20:44:20 +0100
Received: from lehel by blehel. with local (Exim 4.30)
	id 1HOJ6n-0001lx-Mq; Mon, 05 Mar 2007 20:44:33 +0100
Content-Type: multipart/mixed; boundary="===============0702643064=="
MIME-Version: 1.0
From: Lehel Bernadt <[email protected]>
To: Debian Bug Tracking System <[email protected]>
Subject: libtag1c2a: id3v2 zero-sized frame parsing
Message-ID: <20070305194433.4753.8201.reportbug@blehel.>
X-Mailer: reportbug 3.33
Date: Mon, 05 Mar 2007 20:44:33 +0100
Delivered-To: [email protected]
X-Spam-Checker-Version: SpamAssassin 2.60-bugs.debian.org_2005_01_02 
	(1.212-2003-09-23-exp) on rietz.debian.org
X-Spam-Level: 
X-Spam-Status: No, hits=-8.0 required=4.0 tests=BAYES_00,HAS_PACKAGE,
	RCVD_IN_SORBS autolearn=no version=2.60-bugs.debian.org_2005_01_02

This is a multi-part MIME message sent by reportbug.


--===============0702643064==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Package: libtag1c2a
Version: 1.4-4
Severity: important
Tags: patch


I have many mp3 files which have id3v2 tags with zero-sized frames in
them; that is, the 4 byte frame identfier, 4 nulls, and 2 flag bytes.
This isn't an issue with other tag processing apps/libs, but taglib
fails to parse the tag after such a frame. So only the data to the first
such frame is processed, which leads to an incomplete display of file
information in the various players using taglib.
The attached patch fixes the issue.

-- System Information:
Debian Release: 4.0
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-ck1
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)

Versions of packages libtag1c2a depends on:
hi  libc6                         2.3.6-7    GNU C Library: Shared libraries
hi  libgcc1                       1:4.1.1-21 GCC support library
hi  libstdc++6                    4.1.1-21   The GNU Standard C++ Library v3
hi  zlib1g                        1:1.2.3-11 compression library - runtime

libtag1c2a recommends no packages.

-- no debconf information

--===============0702643064==
Content-Type: text/x-c++; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="taglib-zeroframe.patch"

diff -ruN taglib-1.4/taglib/mpeg/id3v2/frames/textidentificationframe.cpp taglib-1.4-mine/taglib/mpeg/id3v2/frames/textidentificationframe.cpp
--- taglib-1.4/taglib/mpeg/id3v2/frames/textidentificationframe.cpp	2005-05-17 22:17:26.000000000 +0200
+++ taglib-1.4-mine/taglib/mpeg/id3v2/frames/textidentificationframe.cpp	2007-03-05 04:27:39.265744795 +0100
@@ -94,6 +94,10 @@
 
 void TextIdentificationFrame::parseFields(const ByteVector &data)
 {
+  if(data.size() == 0) {
+    return;
+  }
+
   // read the string data type (the first byte of the field data)
 
   d->textEncoding = String::Type(data[0]);
diff -ruN taglib-1.4/taglib/mpeg/id3v2/id3v2framefactory.cpp taglib-1.4-mine/taglib/mpeg/id3v2/id3v2framefactory.cpp
--- taglib-1.4/taglib/mpeg/id3v2/id3v2framefactory.cpp	2005-07-25 23:10:42.000000000 +0200
+++ taglib-1.4-mine/taglib/mpeg/id3v2/id3v2framefactory.cpp	2007-03-05 03:58:00.714125739 +0100
@@ -72,7 +72,7 @@
   // A quick sanity check -- make sure that the frameID is 4 uppercase Latin1
   // characters.  Also make sure that there is data in the frame.
 
-  if(!frameID.size() == (version < 3 ? 3 : 4) || header->frameSize() <= 0) {
+  if(!frameID.size() == (version < 3 ? 3 : 4) || header->frameSize() < 0) {
     delete header;
     return 0;
   }
diff -ruN taglib-1.4/taglib/mpeg/id3v2/id3v2tag.cpp taglib-1.4-mine/taglib/mpeg/id3v2/id3v2tag.cpp
--- taglib-1.4/taglib/mpeg/id3v2/id3v2tag.cpp	2005-07-25 23:10:42.000000000 +0200
+++ taglib-1.4-mine/taglib/mpeg/id3v2/id3v2tag.cpp	2007-03-05 03:57:12.625436331 +0100
@@ -438,7 +438,7 @@
 
     // Checks to make sure that frame parsed correctly.
 
-    if(frame->size() <= 0) {
+    if(frame->size() < 0) {
       delete frame;
       return;
     }

--===============0702643064==--


------------=_1785345182-3324308-0
Content-Type: message/rfc822
Content-Disposition: inline
Content-Transfer-Encoding: 7bit

Received: (at 413555-done) by bugs.debian.org; 29 Jul 2026 17:11:33 +0000
X-Spam-Checker-Version: SpamAssassin 4.0.1-bugs.debian.org_2005_01_02
	(2024-03-25) on buxtehude.debian.org
X-Spam-Level: 
X-Spam-Status: No, score=-108.7 required=4.0 tests=ALL_TRUSTED,BAYES_00,
	DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,
	FOURLA,FROMDEVELOPER,SPF_HELO_NONE,SPF_PASS,USER_IN_DKIM_WELCOMELIST
	autolearn=ham autolearn_force=no
	version=4.0.1-bugs.debian.org_2005_01_02
X-Spam-Bayes: score:0.0000 Tokens: new, 38; hammy, 150; neutral, 120; spammy,
	0. spammytokens:
	hammytokens:0.000-+--Hx-spam-relays-external:sk:stravin,
	0.000-+--H*RT:sk:stravin, 0.000-+--Hx-spam-relays-external:311,
	0.000-+--H*RT:311, 0.000-+--H*RT:108
Return-path: <[email protected]>
Received: from stravinsky.debian.org ([2001:41b8:202:deb::311:108]:58578)
	by buxtehude.debian.org with esmtps (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256)
	(Exim 4.96)
	(envelope-from <[email protected]>)
	id 1wp7OG-00Dqxs-0h
	for [email protected];
	Wed, 29 Jul 2026 16:44:20 +0000
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debian.org;
	s=smtpauto.stravinsky; h=X-Debian-User:Content-Transfer-Encoding:Content-Type
	:In-Reply-To:From:Subject:References:To:MIME-Version:Date:Message-ID:Reply-To
	:Cc:Content-ID:Content-Description;
	bh=5/n1HL+ZKHTrs2qjs8sno2IhNysQ8NH03ogvcqqJ93Q=; b=GFFtp2Kd6FlFI0Vc3t2zKcYg8m
	xDaa9U68ZoiNlDRN8H2X79LKhII3iQmkPg/iIVYbcnWEZMBnrL6Zff90FfMGJ2qLs0N5uQwRLw2Re
	FlB5UigO3JWtmvHKDdiL5wmsDCZDtl8aeX19VIwB/9qzrMzjzr4E7VPzUnDp7PAV9b3s3AKuFOS+a
	DsPNWR5YY0ilZHGNHcuukYtWAdVKPRYwGHnc0gn9f7h9YiRVNGwqGr+trwbe8olU2OjYFkh7roeCq
	UD7oJy6gbbYnuAgn+aMDYQSc7KtcwCyrtTQRv9DjJu8wzz7/ralvQNm0QC+HZsh7lLsPPC/aGCsFb
	f6BoUgVQ==;
Received: from authenticated-user
	by stravinsky.debian.org with esmtpsa (TLS1.3:ECDHE_X25519__RSA_PSS_RSAE_SHA256__AES_128_GCM:128)
	(Exim 4.96)
	(envelope-from <[email protected]>)
	id 1wp7OE-008ai9-1J
	for [email protected];
	Wed, 29 Jul 2026 16:44:18 +0000
Message-ID: <[email protected]>
Date: Wed, 29 Jul 2026 12:44:13 -0400
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
To: [email protected]
References: <20070305194433.4753.8201.reportbug@blehel.>
 <20070305194433.4753.8201.reportbug@blehel.>
Subject: Re: libtag1c2a: id3v2 zero-sized frame parsing
Content-Language: en-US
From: Boyuan Yang <[email protected]>
Autocrypt: [email protected]; keydata=
 xsFNBFgj7MMBEADGeyOuGsQ1scXmI/D/wDVrpXGodLsC5l4+aj/hNljkCkCWeblRKEWkWYjO
 N69rYCS/dy/ZTVG6fzsZR5tVsdFC3etzKFH1rbTT9BhDmwQLWWSHLWO5xw8GbSIhtER6mh2c
 jHHSJFQaWNTjd7SA6NEfYyY/jOoiv9O9lMV1q5Fm9KNLTmURR5RkiST/lOKarzO1T1BpaVK4
 QaM82HjUH1lR2iYyEVaTxzo7ZjJALttVsoMeGN+3Yf0b9QUW6Eq1nV3OOG/JywJz/cbsfbMO
 YVzv0IYv62TX19GJK+fJZWhel9CUsn6L7WmCfa4MsTLsn/5EPdoiRpYmhBhFYUdyQF6RVwVf
 hY74szlQ0xyX+7RPcM3yyqOg6uWysrRyLwkWosyzldfMbouuI5b4rBiemgwQAu/0ezM77EjU
 05ZiaiGfF17qTSCZMEf2E+Z2viw44kPqHTY2u7cJ3IPu4HkWMo4arJ7T4ElMW8KDvPI4hyIc
 YBpHrHp5mN0O6UyqrtNDMUdLssrR5Cp9pVlQ9u+xd8NaDCXSS+hFHBcwRpBD+ABp5QY/koYT
 3Qb942p8hBpJCeQyuIox3zJn3RjaE2WKhlZqyiAoWE6Ln5n0m2vVCOn2dFA+DHPZ/EdWpE+N
 Z2rt3NkwZaDVN11hXqwnIg7QcCakE/6S5oZnXci/vKQ4WkOsAwARAQABzS9Cb3l1YW4gWWFu
 ZyAoRGViaWFuIFByb2plY3QpIDxieWFuZ0BkZWJpYW4ub3JnPsLBlwQTAQoAQQIbAwULCQgH
 AwUVCgkICwUWAgMBAAIeAQIXgAIZARYhBH53KUdth9bxHZGsy8KT57RhglrOBQJiPKjJBQkg
 neuGAAoJEMKT57RhglrOcmMP/3K4RVPXM0g4zTdUNbttmMhLm5/k6YRc52nkigreKPbn6uuW
 gcJIWpssyE9d93hRfGqpCEB2gv+c7IMITfFzDrYtr/v29G+dukYW2JuvlxfCCcvkfceXWavR
 TMXxletPxh27G2GT/Gsxbl3QZbcNWm/YDvkNOMdSDZ6YcmgrEOv0e3DBje7N313DUIgiyAJP
 Xrz06cKTITJEirej9Cx4ZN6AkxZQZoIT3WnIx/GKcvdWgXB46JJrcyqDUuPrj1JKEsdg7i0B
 D9Jt5fD1xmu+mzCoCYCTbtbJcIt1ESr3vIjMQptx5xQ5Z1NEe54ZgWzFFSo/PUg9uuPd5Syg
 3EI3HfMCD+tOPa4jSNNeQqWbxfBmti5GllWvXlOjTHSB/Bxafs14E2pyuddrs14sQ7/LtEaN
 K8Dme+/CuC1skjX8RMsBNFFP0joPhNHBwomoH9RuVRbtMjXsNCq6U9r/kALt8OiqFCVBX8fN
 1ePs9EK44SZsFtKnkvmZtod7fHgfRmzej862NH6vZ2p8MHGS/VWdPXT6pbdZRlUKIE2v5ITX
 CbxozmPCaDdjEqlmLZIbEgcYobBZPIocLNGUNz/yAk7w9W1WBLyqhvQasxRqS2XbuiqzIPgo
 539O+Rn4y7YlXnBOOqef/YEjnurIbnTM05KpKe35qpK0aRHgASvEIYZiXIXczsFNBFgj7MMB
 EACThqWYRQH/xcLXHp0mtEfiyOL2DC+13RXCuTVXbIkGCr0N71VdVIeXPsX0k+JTrY/f8GQJ
 IF/btqivIKrbJB6fTP7/AZTL7J6ifuGQQs1lEyp7ZPfZNlbcQf0H0IEJU5vMMHDyw6sNZ+3p
 YuBQduIueOm8fLqT8YKIKqm5+FTOSU6zDLJ4ODDJxTX4wOQvgaPPpuxgdaWsH7DS0RUP3uxo
 IvTyn2XcPGnAy/sNKFRcta7s2jUJF3PvSjUYCuOgZLEwhBbsMioD7R9r4aLm2F4sqkn2zbz/
 hhyPgzRrRAY8wgCJW1BJBY3yDLns9qJ/nKshD70h0NGadjASKoZXQKQ8+vrj3haQbNA9N/yx
 mmox3OX2V2DBsimB9bTSpTE54pla98dkgOlX49XWhj8zlRSiYt+lHXW3fy6usP/DLMPgECaH
 qCDWJCSMp3K6JQQcbC3Te/q7jT/iN2cWYS9G+H8pz8MoHex+EJ8zTtN2z9Nuo9z6u2JPmsen
 +cljOclCf47ZJ4472L+7yLQ5x9elvM7CEclXEyWEIctgN2kKjyj+t2xPYpYZiH/dUO49EDCU
 gF08fTMTADVeUWW2iwk0wmtO6KSI3hh8kz3yyt8rSGUoZdjkop4K5BCxMKcFxSgkkTDA6Xqh
 UeWzgtfni/A7d3ANWWcVj33J/IhD8gvoTdk5DQARAQABwsF8BBgBCgAmAhsMFiEEfncpR22H
 1vEdkazLwpPntGGCWs4FAmIx+KgFCSCcdeUACgkQwpPntGGCWs5zLRAAmAqNZ8bGVqQ2sRLz
 CboQyOe2X23NGasvpdwoXy8fPwRkSJhbpQTpy1AGzUM2c7Vy4G/5dp6hHj0R0axeigJsmOJa
 z53rz7p4Uz98skOIwE5KN4BBeedxX6tB+ikA12PSioIsvyi5802zSysyIAzG/10NgvqRPXBM
 UWUHzZEY73W7P5hKZj4QC6S2el3BwMXIgWSjt04fOyYXjqvxVq9pRibwExxLyCRCQg7UebOp
 JIpzMTl5qi43LD7CpaJJ2ypGFrwuPztHc9QDYuYLeaZ5w9J4elYA8tPyVpqjx16NblBfRReY
 77eLWwj5VrfcJKQIBuN227HdEg4qQ/uP8bPvXD6Lym4TVwExonDg0zMrtla7IGFqnYmVWHL8
 eca2ux2MnH99pAdCt8SJNGdkn2+UOLD/JJpQlD1WtSjLBStvXvKXV4uV1F8+SkUS+RFln9ut
 PmXN3v5REpV1Yy3xkDdHJF0h09b8LNm5ykNszovcR6Wzrki6IRJy6/mxjb3zCtuwTYegZVNm
 USMLKVtRUN7+41ZMecr7IAAfpZorNspeg/ybaIFCJeCT6Ya1lTCRssBUEtDuZtZfoKtN2jG9
 LMghjYH6nEBwH0qhYCK7yV8PyZ43Equdg6Y4Q5oEsitsQejSUTar6XpOV77BhtJKAGx5hQtc
 sxAtieQvJ9Xmx2nTO70=
Organization: Debian Project
In-Reply-To: <20070305194433.4753.8201.reportbug@blehel.>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Debian-User: byang

Version: 1.11.1+dfsg.1-3
X-Debbugs-CC: [email protected] <https://bugs.debian.org/cgi-bin/pkgreport.cgi?submitter=lehel%40pmc-services.hu>

On Mon, 05 Mar 2007 20:44:33 +0100 Lehel Bernadt <[email protected]> wrote:
 > Package: libtag1c2a
 > Version: 1.4-4
 > Severity: important
 > Tags: patch
 >
 >
 > I have many mp3 files which have id3v2 tags with zero-sized frames in
 > them; that is, the 4 byte frame identfier, 4 nulls, and 2 flag bytes.
 > This isn't an issue with other tag processing apps/libs, but taglib
 > fails to parse the tag after such a frame. So only the data to the first
 > such frame is processed, which leads to an incomplete display of file
 > information in the various players using taglib.
 > The attached patch fixes the issue.
 >
 > -- System Information:
 > Debian Release: 4.0
 > APT prefers unstable
 > APT policy: (500, 'unstable')
 > Architecture: i386 (i686)
 > Shell: /bin/sh linked to /bin/bash
 > Kernel: Linux 2.6.18-ck1
 > Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
 >
 > Versions of packages libtag1c2a depends on:
 > hi libc6 2.3.6-7 GNU C Library: Shared libraries
 > hi libgcc1 1:4.1.1-21 GCC support library
 > hi libstdc++6 4.1.1-21 The GNU Standard C++ Library v3
 > hi zlib1g 1:1.2.3-11 compression library - runtime
 >
 > libtag1c2a recommends no packages.
 >
 > -- no debconf information

I believe this issue has been fixed since https://github.com/taglib/taglib/issues/512 .
As a result, I am closing this bug report accordingly.

Nevertheless, my analysis could be incorrect. If you find out that this bug is actually
not fixed, please feel free to open a new bug report against current Debian releases,
or even better, work with upstream to solve the bug at upstream issue tracker.

Best Regards,
Boyuan Yang
------------=_1785345182-3324308-0--