Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 527010
Collapse All | Expand All

(-)a/content/media/webm/WebMReader.cpp (+12 lines)
Lines 668-674 Link Here
668
          return true;
668
          return true;
669
        }
669
        }
670
        int32_t keepFrames = frames - skipFrames;
670
        int32_t keepFrames = frames - skipFrames;
671
        if (keepFrames < 0) {
672
          NS_WARNING("Int overflow in samples");
673
          return false;
674
	}
671
        int samples = keepFrames * channels;
675
        int samples = keepFrames * channels;
676
	if (samples < 0) {
677
          NS_WARNING("Int overflow in samples");
678
          return false;
679
	}
672
        nsAutoArrayPtr<AudioDataValue> trimBuffer(new AudioDataValue[samples]);
680
        nsAutoArrayPtr<AudioDataValue> trimBuffer(new AudioDataValue[samples]);
673
        for (int i = 0; i < samples; i++)
681
        for (int i = 0; i < samples; i++)
674
          trimBuffer[i] = buffer[skipFrames*channels + i];
682
          trimBuffer[i] = buffer[skipFrames*channels + i];
Lines 691-696 Link Here
691
        int32_t keepFrames = frames - discardFrames.value();
699
        int32_t keepFrames = frames - discardFrames.value();
692
        if (keepFrames > 0) {
700
        if (keepFrames > 0) {
693
          int samples = keepFrames * channels;
701
          int samples = keepFrames * channels;
702
          if (samples < 0) {
703
            NS_WARNING("Int overflow in samples");
704
            return false;
705
          }
694
          nsAutoArrayPtr<AudioDataValue> trimBuffer(new AudioDataValue[samples]);
706
          nsAutoArrayPtr<AudioDataValue> trimBuffer(new AudioDataValue[samples]);
695
          for (int i = 0; i < samples; i++)
707
          for (int i = 0; i < samples; i++)
696
            trimBuffer[i] = buffer[i];
708
            trimBuffer[i] = buffer[i];

Return to bug 527010