From: Scott Wheeler <wheeler@kde.org>
Date: Sat, 28 Jan 2006 14:00:48 +0000 (+0000)
Subject: If a frame has both compression and encryption, since we currently
X-Git-Tag: v1.5~248
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=4841a5c39cebfa7fffc78ea4ea5c4133d231b923;p=taglib

If a frame has both compression and encryption, since we currently
don't support encrypted frames, don't try to decompress it.  Decryption
is supposed to be applied before decompression, so currently the decompression
isn't possible.

BUG:112919


git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@503234 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
---

diff --git a/mpeg/id3v2/id3v2frame.cpp b/mpeg/id3v2/id3v2frame.cpp
index f58e3500..fc090fef 100644
--- a/mpeg/id3v2/id3v2frame.cpp
+++ b/mpeg/id3v2/id3v2frame.cpp
@@ -168,7 +168,9 @@ ByteVector Frame::fieldData(const ByteVector &frameData) const
   }
 
 #if HAVE_ZLIB
-  if(d->header->compression()) {
+  if(d->header->compression() &&
+     !d->header->encryption())
+  {
     ByteVector data(frameDataLength);
     uLongf uLongTmp = frameDataLength;
     ::uncompress((Bytef *) data.data(),