File Fix-wrong-comparison-if-there-are-no-descriptors.patch of Package k3b-kde4
From d50a0c30b582aa2fc5cfccea4b87a70adc2d5d81 Mon Sep 17 00:00:00 2001
From: Leslie Zhai <lesliezhai@llvm.org.cn>
Date: Mon, 14 Aug 2017 16:21:18 +0800
Subject: [PATCH] Fix wrong comparison if there are no descriptors.
A patch by Thomas Schmitt!
Testplan by Mark: cdrskin -V dev=/dev/sr0 2>&1 >/tmp/cdrskin_scsi_log
CCBUG: 382941
---
libk3bdevice/k3bdevice.cpp | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/libk3bdevice/k3bdevice.cpp b/libk3bdevice/k3bdevice.cpp
index f53164220..e256564fc 100644
--- a/libk3bdevice/k3bdevice.cpp
+++ b/libk3bdevice/k3bdevice.cpp
@@ -3228,11 +3228,11 @@ QList<int> K3b::Device::Device::determineSupportedWriteSpeeds() const
bool K3b::Device::Device::getSupportedWriteSpeedsVia2A( QList<int>& list, MediaType mediaType ) const
{
- UByteArray data;
+ UByteArray/* QVarLengthArray<unsigned char> */ data;
if( modeSense( data, 0x2A ) ) {
mm_cap_page_2A* mm = (mm_cap_page_2A*)&data[8];
- if( data.size() > 32 ) {
+ if( data.size() > 32 + 8 /* pageLen? */ ) {
// we have descriptors
unsigned int numDesc = from2Byte( mm->num_wr_speed_des );
--
GitLab