@@ -107,19 +107,20 @@ QSharedPointer<const OperatorResult> TakeSkipOperator::operateOnContainers(
107
107
qint64 inputBitCount = 0 ;
108
108
qint64 inputStepTotal = 0 ;
109
109
qint64 outputStepTotal = 0 ;
110
- for (QSharedPointer<BitOp> op : ops) {
111
- for (auto input : inputs) {
112
- for (int i = 0 ; i < frameCount; i++) {
113
- Frame frame;
114
- if (frameBased) {
115
- frame = input.first ->frameAt (i);
116
- }
117
- else {
118
- frame = {Frame (input.first ->bits (), 0 ,
119
- input.first ->bits ()->sizeInBits () - 1 )};
120
- }
121
- // need to check for integer overflow
122
- inputBitCount += frame.size ();
110
+ for (auto input : inputs) {
111
+ for (int i = 0 ; i < frameCount; i++) {
112
+ Frame frame;
113
+ if (frameBased) {
114
+ frame = input.first ->frameAt (i);
115
+ }
116
+ else {
117
+ frame = {Frame (input.first ->bits (), 0 ,
118
+ input.first ->bits ()->sizeInBits () - 1 )};
119
+ }
120
+ // need to check for integer overflow
121
+ inputBitCount += frame.size ();
122
+
123
+ for (QSharedPointer<BitOp> op : ops) {
123
124
qint64 frameStep = op->inputStep (frame.size ());
124
125
qint64 inTotal = frameStep + inputStepTotal;
125
126
if (inTotal < frameStep || inTotal < inputStepTotal) {
@@ -222,6 +223,8 @@ QSharedPointer<const OperatorResult> TakeSkipOperator::operateOnContainers(
222
223
if (progressTracker->getCancelled ()) {
223
224
return OperatorResult::error (" Processing cancelled" );
224
225
}
226
+
227
+ bitsProcessed = 0 ;
225
228
}
226
229
}
227
230
0 commit comments