guix/gnu/packages/patches/icecat-CVE-2015-0836-pt-06.patch
Mark H Weaver 8830740643 gnu: icecat: Apply fixes for CVE-2015-{0822,0827,0831,0836}.
* gnu/packages/patches/icecat-CVE-2015-0822.patch,
  gnu/packages/patches/icecat-CVE-2015-0827-pt-1.patch,
  gnu/packages/patches/icecat-CVE-2015-0827-pt-2.patch,
  gnu/packages/patches/icecat-CVE-2015-0827-pt-3.patch,
  gnu/packages/patches/icecat-CVE-2015-0831-pt-1.patch,
  gnu/packages/patches/icecat-CVE-2015-0831-pt-2.patch,
  gnu/packages/patches/icecat-CVE-2015-0836-pt-01.patch,
  gnu/packages/patches/icecat-CVE-2015-0836-pt-02.patch,
  gnu/packages/patches/icecat-CVE-2015-0836-pt-03.patch,
  gnu/packages/patches/icecat-CVE-2015-0836-pt-04.patch,
  gnu/packages/patches/icecat-CVE-2015-0836-pt-05.patch,
  gnu/packages/patches/icecat-CVE-2015-0836-pt-06.patch,
  gnu/packages/patches/icecat-CVE-2015-0836-pt-07.patch,
  gnu/packages/patches/icecat-CVE-2015-0836-pt-08.patch,
  gnu/packages/patches/icecat-CVE-2015-0836-pt-09.patch,
  gnu/packages/patches/icecat-CVE-2015-0836-pt-10.patch,
  gnu/packages/patches/icecat-CVE-2015-0836-pt-11.patch: New files.
* gnu-system.am (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add patches.
2015-02-26 00:39:31 -05:00

41 lines
1.8 KiB
Diff

From 0758363d982b0b3e6cf021c164715a028a345b9e Mon Sep 17 00:00:00 2001
From: "Byron Campen [:bwc]" <docfaraday@gmail.com>
Date: Wed, 21 Jan 2015 08:56:36 -0800
Subject: [PATCH] Bug 1123882 - Fix case where offset != 0. r=derf, a=bkerensa
---
content/media/MediaDecoderStateMachine.cpp | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/content/media/MediaDecoderStateMachine.cpp b/content/media/MediaDecoderStateMachine.cpp
index ce5870f..4ed496c 100644
--- a/content/media/MediaDecoderStateMachine.cpp
+++ b/content/media/MediaDecoderStateMachine.cpp
@@ -328,6 +328,8 @@ void MediaDecoderStateMachine::SendStreamAudio(AudioData* aAudio,
if (offset >= aAudio->mFrames)
return;
+ size_t framesToWrite = aAudio->mFrames - offset;
+
aAudio->EnsureAudioBuffer();
nsRefPtr<SharedBuffer> buffer = aAudio->mAudioBuffer;
AudioDataValue* bufferData = static_cast<AudioDataValue*>(buffer->Data());
@@ -335,10 +337,11 @@ void MediaDecoderStateMachine::SendStreamAudio(AudioData* aAudio,
for (uint32_t i = 0; i < aAudio->mChannels; ++i) {
channels.AppendElement(bufferData + i*aAudio->mFrames + offset);
}
- aOutput->AppendFrames(buffer.forget(), channels, aAudio->mFrames);
- VERBOSE_LOG("writing %d frames of data to MediaStream for AudioData at %lld",
- aAudio->mFrames - int32_t(offset), aAudio->mTime);
- aStream->mAudioFramesWritten += aAudio->mFrames - int32_t(offset);
+ aOutput->AppendFrames(buffer.forget(), channels, framesToWrite);
+ VERBOSE_LOG("writing %u frames of data to MediaStream for AudioData at %lld",
+ static_cast<unsigned>(framesToWrite),
+ aAudio->mTime);
+ aStream->mAudioFramesWritten += framesToWrite;
}
static void WriteVideoToMediaStream(layers::Image* aImage,
--
2.2.1