io/qdatastream.cpp

Switch to Source codePreprocessed file
LineSource CodeCoverage
1 -
2 -
3 -
4 -
5 -
6 -
7 -
8enum { -
9 DefaultStreamVersion = QDataStream::Qt_5_0 -
10}; -
11 -
12 -
13 -
14 -
15 -
16 -
17 -
18QDataStream::QDataStream() -
19{ -
20 dev = 0; -
21 owndev = false; -
22 byteorder = BigEndian; -
23 ver = DefaultStreamVersion; -
24 noswap = QSysInfo::ByteOrder == QSysInfo::BigEndian; -
25 q_status = Ok; -
26}
executed: }
Execution Count:275
275
27QDataStream::QDataStream(QIODevice *d) -
28{ -
29 dev = d; -
30 owndev = false; -
31 byteorder = BigEndian; -
32 ver = DefaultStreamVersion; -
33 noswap = QSysInfo::ByteOrder == QSysInfo::BigEndian; -
34 q_status = Ok; -
35}
executed: }
Execution Count:3324
3324
36QDataStream::QDataStream(QByteArray *a, QIODevice::OpenMode flags) -
37{ -
38 QBuffer *buf = new QBuffer(a); -
39 -
40 buf->blockSignals(true); -
41 -
42 buf->open(flags); -
43 dev = buf; -
44 owndev = true; -
45 byteorder = BigEndian; -
46 ver = DefaultStreamVersion; -
47 noswap = QSysInfo::ByteOrder == QSysInfo::BigEndian; -
48 q_status = Ok; -
49}
executed: }
Execution Count:3025
3025
50QDataStream::QDataStream(const QByteArray &a) -
51{ -
52 QBuffer *buf = new QBuffer; -
53 -
54 buf->blockSignals(true); -
55 -
56 buf->setData(a); -
57 buf->open(QIODevice::ReadOnly); -
58 dev = buf; -
59 owndev = true; -
60 byteorder = BigEndian; -
61 ver = DefaultStreamVersion; -
62 noswap = QSysInfo::ByteOrder == QSysInfo::BigEndian; -
63 q_status = Ok; -
64}
executed: }
Execution Count:23
23
65QDataStream::~QDataStream() -
66{ -
67 if (owndev)
evaluated: owndev
TRUEFALSE
yes
Evaluation Count:3048
yes
Evaluation Count:3599
3048-3599
68 delete dev;
executed: delete dev;
Execution Count:3048
3048
69}
executed: }
Execution Count:6647
6647
70void QDataStream::setDevice(QIODevice *d) -
71{ -
72 if (owndev) {
partially evaluated: owndev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:67
0-67
73 delete dev; -
74 owndev = false; -
75 }
never executed: }
0
76 dev = d; -
77}
executed: }
Execution Count:67
67
78 -
79 -
80 -
81 -
82 -
83 -
84 -
85void QDataStream::unsetDevice() -
86{ -
87 setDevice(0); -
88}
executed: }
Execution Count:20
20
89bool QDataStream::atEnd() const -
90{ -
91 return dev ? dev->atEnd() : true;
executed: return dev ? dev->atEnd() : true;
Execution Count:1306
1306
92} -
93QDataStream::FloatingPointPrecision QDataStream::floatingPointPrecision() const -
94{ -
95 return d == 0 ? QDataStream::DoublePrecision : d->floatingPointPrecision;
executed: return d == 0 ? QDataStream::DoublePrecision : d->floatingPointPrecision;
Execution Count:9593
9593
96} -
97void QDataStream::setFloatingPointPrecision(QDataStream::FloatingPointPrecision precision) -
98{ -
99 if (d == 0)
partially evaluated: d == 0
TRUEFALSE
yes
Evaluation Count:58
no
Evaluation Count:0
0-58
100 d.reset(new QDataStreamPrivate());
executed: d.reset(new QDataStreamPrivate());
Execution Count:58
58
101 d->floatingPointPrecision = precision; -
102}
executed: }
Execution Count:58
58
103 -
104 -
105 -
106 -
107 -
108 -
109 -
110QDataStream::Status QDataStream::status() const -
111{ -
112 return q_status;
executed: return q_status;
Execution Count:14690
14690
113} -
114 -
115 -
116 -
117 -
118 -
119 -
120void QDataStream::resetStatus() -
121{ -
122 q_status = Ok; -
123}
executed: }
Execution Count:450
450
124void QDataStream::setStatus(Status status) -
125{ -
126 if (q_status == Ok)
evaluated: q_status == Ok
TRUEFALSE
yes
Evaluation Count:334
yes
Evaluation Count:119
119-334
127 q_status = status;
executed: q_status = status;
Execution Count:334
334
128}
executed: }
Execution Count:453
453
129void QDataStream::setByteOrder(ByteOrder bo) -
130{ -
131 byteorder = bo; -
132 if (QSysInfo::ByteOrder == QSysInfo::BigEndian)
partially evaluated: QSysInfo::ByteOrder == QSysInfo::BigEndian
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:857
0-857
133 noswap = (byteorder == BigEndian);
never executed: noswap = (byteorder == BigEndian);
0
134 else -
135 noswap = (byteorder == LittleEndian);
executed: noswap = (byteorder == LittleEndian);
Execution Count:857
857
136} -
137QDataStream &QDataStream::operator>>(qint8 &i) -
138{ -
139 i = 0; -
140 if (!dev) { return *this; }
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:17688
never executed: return *this;
0-17688
141 char c; -
142 if (!dev->getChar(&c))
evaluated: !dev->getChar(&c)
TRUEFALSE
yes
Evaluation Count:28
yes
Evaluation Count:17660
28-17660
143 setStatus(ReadPastEnd);
executed: setStatus(ReadPastEnd);
Execution Count:28
28
144 else -
145 i = qint8(c);
executed: i = qint8(c);
Execution Count:17660
17660
146 return *this;
executed: return *this;
Execution Count:17688
17688
147} -
148QDataStream &QDataStream::operator>>(qint16 &i) -
149{ -
150 i = 0; -
151 if (!dev) { return *this; }
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:6766
never executed: return *this;
0-6766
152 if (dev->read((char *)&i, 2) != 2) {
evaluated: dev->read((char *)&i, 2) != 2
TRUEFALSE
yes
Evaluation Count:54
yes
Evaluation Count:6712
54-6712
153 i = 0; -
154 setStatus(ReadPastEnd); -
155 } else {
executed: }
Execution Count:54
54
156 if (!noswap) {
evaluated: !noswap
TRUEFALSE
yes
Evaluation Count:5448
yes
Evaluation Count:1264
1264-5448
157 i = qbswap(i); -
158 }
executed: }
Execution Count:5448
5448
159 }
executed: }
Execution Count:6712
6712
160 return *this;
executed: return *this;
Execution Count:6766
6766
161} -
162QDataStream &QDataStream::operator>>(qint32 &i) -
163{ -
164 i = 0; -
165 if (!dev) { return *this; }
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:51692
never executed: return *this;
0-51692
166 if (dev->read((char *)&i, 4) != 4) {
evaluated: dev->read((char *)&i, 4) != 4
TRUEFALSE
yes
Evaluation Count:181
yes
Evaluation Count:51511
181-51511
167 i = 0; -
168 setStatus(ReadPastEnd); -
169 } else {
executed: }
Execution Count:181
181
170 if (!noswap) {
evaluated: !noswap
TRUEFALSE
yes
Evaluation Count:48056
yes
Evaluation Count:3455
3455-48056
171 i = qbswap(i); -
172 }
executed: }
Execution Count:48056
48056
173 }
executed: }
Execution Count:51511
51511
174 return *this;
executed: return *this;
Execution Count:51692
51692
175} -
176QDataStream &QDataStream::operator>>(qint64 &i) -
177{ -
178 i = qint64(0); -
179 if (!dev) { return *this; }
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:600
never executed: return *this;
0-600
180 if (version() < 6) {
partially evaluated: version() < 6
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:600
0-600
181 quint32 i1, i2; -
182 *this >> i2 >> i1; -
183 i = ((quint64)i1 << 32) + i2; -
184 } else {
never executed: }
0
185 if (dev->read((char *)&i, 8) != 8) {
evaluated: dev->read((char *)&i, 8) != 8
TRUEFALSE
yes
Evaluation Count:50
yes
Evaluation Count:550
50-550
186 i = qint64(0); -
187 setStatus(ReadPastEnd); -
188 } else {
executed: }
Execution Count:50
50
189 if (!noswap) {
evaluated: !noswap
TRUEFALSE
yes
Evaluation Count:538
yes
Evaluation Count:12
12-538
190 i = qbswap(i); -
191 }
executed: }
Execution Count:538
538
192 }
executed: }
Execution Count:550
550
193 } -
194 return *this;
executed: return *this;
Execution Count:600
600
195} -
196 -
197 -
198 -
199 -
200 -
201QDataStream &QDataStream::operator>>(bool &i) -
202{ -
203 qint8 v; -
204 *this >> v; -
205 i = !!v; -
206 return *this;
executed: return *this;
Execution Count:1140
1140
207} -
208QDataStream &QDataStream::operator>>(float &f) -
209{ -
210 if (version() >= QDataStream::Qt_4_6
partially evaluated: version() >= QDataStream::Qt_4_6
TRUEFALSE
yes
Evaluation Count:38
no
Evaluation Count:0
0-38
211 && floatingPointPrecision() == QDataStream::DoublePrecision) {
evaluated: floatingPointPrecision() == QDataStream::DoublePrecision
TRUEFALSE
yes
Evaluation Count:12
yes
Evaluation Count:26
12-26
212 double d; -
213 *this >> d; -
214 f = d; -
215 return *this;
executed: return *this;
Execution Count:12
12
216 } -
217 -
218 f = 0.0f; -
219 if (!dev) { return *this; }
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:26
never executed: return *this;
0-26
220 if (dev->read((char *)&f, 4) != 4) {
evaluated: dev->read((char *)&f, 4) != 4
TRUEFALSE
yes
Evaluation Count:10
yes
Evaluation Count:16
10-16
221 f = 0.0f; -
222 setStatus(ReadPastEnd); -
223 } else {
executed: }
Execution Count:10
10
224 if (!noswap) {
evaluated: !noswap
TRUEFALSE
yes
Evaluation Count:10
yes
Evaluation Count:6
6-10
225 union { -
226 float val1; -
227 quint32 val2; -
228 } x; -
229 x.val2 = qbswap(*reinterpret_cast<quint32 *>(&f)); -
230 f = x.val1; -
231 }
executed: }
Execution Count:10
10
232 }
executed: }
Execution Count:16
16
233 return *this;
executed: return *this;
Execution Count:26
26
234} -
235QDataStream &QDataStream::operator>>(double &f) -
236{ -
237 if (version() >= QDataStream::Qt_4_6
evaluated: version() >= QDataStream::Qt_4_6
TRUEFALSE
yes
Evaluation Count:4812
yes
Evaluation Count:3220
3220-4812
238 && floatingPointPrecision() == QDataStream::SinglePrecision) {
evaluated: floatingPointPrecision() == QDataStream::SinglePrecision
TRUEFALSE
yes
Evaluation Count:1
yes
Evaluation Count:4811
1-4811
239 float d; -
240 *this >> d; -
241 f = d; -
242 return *this;
executed: return *this;
Execution Count:1
1
243 } -
244 -
245 f = 0.0; -
246 if (!dev) { return *this; }
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:8031
never executed: return *this;
0-8031
247 if (dev->read((char *)&f, 8) != 8) {
evaluated: dev->read((char *)&f, 8) != 8
TRUEFALSE
yes
Evaluation Count:46
yes
Evaluation Count:7985
46-7985
248 f = 0.0; -
249 setStatus(ReadPastEnd); -
250 } else {
executed: }
Execution Count:46
46
251 if (!noswap) {
evaluated: !noswap
TRUEFALSE
yes
Evaluation Count:7978
yes
Evaluation Count:7
7-7978
252 union { -
253 double val1; -
254 quint64 val2; -
255 } x; -
256 x.val2 = qbswap(*reinterpret_cast<quint64 *>(&f)); -
257 f = x.val1; -
258 }
executed: }
Execution Count:7978
7978
259 }
executed: }
Execution Count:7985
7985
260 return *this;
executed: return *this;
Execution Count:8031
8031
261} -
262QDataStream &QDataStream::operator>>(char *&s) -
263{ -
264 uint len = 0; -
265 return readBytes(s, len);
executed: return readBytes(s, len);
Execution Count:28
28
266} -
267QDataStream &QDataStream::readBytes(char *&s, uint &l) -
268{ -
269 s = 0; -
270 l = 0; -
271 if (!dev) { return *this; }
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:56
never executed: return *this;
0-56
272 -
273 quint32 len; -
274 *this >> len; -
275 if (len == 0)
evaluated: len == 0
TRUEFALSE
yes
Evaluation Count:10
yes
Evaluation Count:46
10-46
276 return *this;
executed: return *this;
Execution Count:10
10
277 -
278 const quint32 Step = 1024 * 1024; -
279 quint32 allocated = 0; -
280 char *prevBuf = 0; -
281 char *curBuf = 0; -
282 -
283 do { -
284 int blockSize = qMin(Step, len - allocated); -
285 prevBuf = curBuf; -
286 curBuf = new char[allocated + blockSize + 1]; -
287 if (prevBuf) {
evaluated: prevBuf
TRUEFALSE
yes
Evaluation Count:28
yes
Evaluation Count:46
28-46
288 memcpy(curBuf, prevBuf, allocated); -
289 delete [] prevBuf; -
290 }
executed: }
Execution Count:28
28
291 if (dev->read(curBuf + allocated, blockSize) != blockSize) {
evaluated: dev->read(curBuf + allocated, blockSize) != blockSize
TRUEFALSE
yes
Evaluation Count:24
yes
Evaluation Count:50
24-50
292 delete [] curBuf; -
293 setStatus(ReadPastEnd); -
294 return *this;
executed: return *this;
Execution Count:24
24
295 } -
296 allocated += blockSize; -
297 } while (allocated < len);
evaluated: allocated < len
TRUEFALSE
yes
Evaluation Count:28
yes
Evaluation Count:22
executed: }
Execution Count:50
22-50
298 -
299 s = curBuf; -
300 s[len] = '\0'; -
301 l = (uint)len; -
302 return *this;
executed: return *this;
Execution Count:22
22
303} -
304int QDataStream::readRawData(char *s, int len) -
305{ -
306 if (!dev) { return -1; }
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:15307
never executed: return -1;
0-15307
307 return dev->read(s, len);
executed: return dev->read(s, len);
Execution Count:15307
15307
308} -
309QDataStream &QDataStream::operator<<(qint8 i) -
310{ -
311 if (!dev) { return *this; } if (q_status != Ok) return *this;
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:16657
evaluated: q_status != Ok
TRUEFALSE
yes
Evaluation Count:2
yes
Evaluation Count:16655
never executed: return *this;
executed: return *this;
Execution Count:2
0-16657
312 if (!dev->putChar(i))
evaluated: !dev->putChar(i)
TRUEFALSE
yes
Evaluation Count:2
yes
Evaluation Count:16653
2-16653
313 q_status = WriteFailed;
executed: q_status = WriteFailed;
Execution Count:2
2
314 return *this;
executed: return *this;
Execution Count:16655
16655
315} -
316QDataStream &QDataStream::operator<<(qint16 i) -
317{ -
318 if (!dev) { return *this; } if (q_status != Ok) return *this;
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:5747
evaluated: q_status != Ok
TRUEFALSE
yes
Evaluation Count:2
yes
Evaluation Count:5745
never executed: return *this;
executed: return *this;
Execution Count:2
0-5747
319 if (!noswap) {
evaluated: !noswap
TRUEFALSE
yes
Evaluation Count:5617
yes
Evaluation Count:128
128-5617
320 i = qbswap(i); -
321 }
executed: }
Execution Count:5617
5617
322 if (dev->write((char *)&i, sizeof(qint16)) != sizeof(qint16))
evaluated: dev->write((char *)&i, sizeof(qint16)) != sizeof(qint16)
TRUEFALSE
yes
Evaluation Count:2
yes
Evaluation Count:5743
2-5743
323 q_status = WriteFailed;
executed: q_status = WriteFailed;
Execution Count:2
2
324 return *this;
executed: return *this;
Execution Count:5745
5745
325} -
326QDataStream &QDataStream::operator<<(qint32 i) -
327{ -
328 if (!dev) { return *this; } if (q_status != Ok) return *this;
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:51825
evaluated: q_status != Ok
TRUEFALSE
yes
Evaluation Count:3
yes
Evaluation Count:51822
never executed: return *this;
executed: return *this;
Execution Count:3
0-51825
329 if (!noswap) {
evaluated: !noswap
TRUEFALSE
yes
Evaluation Count:51470
yes
Evaluation Count:352
352-51470
330 i = qbswap(i); -
331 }
executed: }
Execution Count:51470
51470
332 if (dev->write((char *)&i, sizeof(qint32)) != sizeof(qint32))
evaluated: dev->write((char *)&i, sizeof(qint32)) != sizeof(qint32)
TRUEFALSE
yes
Evaluation Count:3
yes
Evaluation Count:51819
3-51819
333 q_status = WriteFailed;
executed: q_status = WriteFailed;
Execution Count:3
3
334 return *this;
executed: return *this;
Execution Count:51822
51822
335} -
336QDataStream &QDataStream::operator<<(qint64 i) -
337{ -
338 if (!dev) { return *this; } if (q_status != Ok) return *this;
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:536
evaluated: q_status != Ok
TRUEFALSE
yes
Evaluation Count:2
yes
Evaluation Count:534
never executed: return *this;
executed: return *this;
Execution Count:2
0-536
339 if (version() < 6) {
partially evaluated: version() < 6
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:534
0-534
340 quint32 i1 = i & 0xffffffff; -
341 quint32 i2 = i >> 32; -
342 *this << i2 << i1; -
343 } else {
never executed: }
0
344 if (!noswap) {
partially evaluated: !noswap
TRUEFALSE
yes
Evaluation Count:534
no
Evaluation Count:0
0-534
345 i = qbswap(i); -
346 }
executed: }
Execution Count:534
534
347 if (dev->write((char *)&i, sizeof(qint64)) != sizeof(qint64))
evaluated: dev->write((char *)&i, sizeof(qint64)) != sizeof(qint64)
TRUEFALSE
yes
Evaluation Count:2
yes
Evaluation Count:532
2-532
348 q_status = WriteFailed;
executed: q_status = WriteFailed;
Execution Count:2
2
349 }
executed: }
Execution Count:534
534
350 return *this;
executed: return *this;
Execution Count:534
534
351} -
352QDataStream &QDataStream::operator<<(bool i) -
353{ -
354 if (!dev) { return *this; } if (q_status != Ok) return *this;
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:1750
evaluated: q_status != Ok
TRUEFALSE
yes
Evaluation Count:1
yes
Evaluation Count:1749
never executed: return *this;
executed: return *this;
Execution Count:1
0-1750
355 if (!dev->putChar(qint8(i)))
evaluated: !dev->putChar(qint8(i))
TRUEFALSE
yes
Evaluation Count:1
yes
Evaluation Count:1748
1-1748
356 q_status = WriteFailed;
executed: q_status = WriteFailed;
Execution Count:1
1
357 return *this;
executed: return *this;
Execution Count:1749
1749
358} -
359QDataStream &QDataStream::operator<<(float f) -
360{ -
361 if (version() >= QDataStream::Qt_4_6
partially evaluated: version() >= QDataStream::Qt_4_6
TRUEFALSE
yes
Evaluation Count:14
no
Evaluation Count:0
0-14
362 && floatingPointPrecision() == QDataStream::DoublePrecision) {
evaluated: floatingPointPrecision() == QDataStream::DoublePrecision
TRUEFALSE
yes
Evaluation Count:10
yes
Evaluation Count:4
4-10
363 *this << double(f); -
364 return *this;
executed: return *this;
Execution Count:10
10
365 } -
366 -
367 if (!dev) { return *this; } if (q_status != Ok) return *this;
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:4
partially evaluated: q_status != Ok
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:4
never executed: return *this;
never executed: return *this;
0-4
368 float g = f; -
369 if (!noswap) {
partially evaluated: !noswap
TRUEFALSE
yes
Evaluation Count:4
no
Evaluation Count:0
0-4
370 union { -
371 float val1; -
372 quint32 val2; -
373 } x; -
374 x.val1 = g; -
375 x.val2 = qbswap(x.val2); -
376 -
377 if (dev->write((char *)&x.val2, sizeof(float)) != sizeof(float))
partially evaluated: dev->write((char *)&x.val2, sizeof(float)) != sizeof(float)
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:4
0-4
378 q_status = WriteFailed;
never executed: q_status = WriteFailed;
0
379 return *this;
executed: return *this;
Execution Count:4
4
380 } -
381 -
382 if (dev->write((char *)&g, sizeof(float)) != sizeof(float))
never evaluated: dev->write((char *)&g, sizeof(float)) != sizeof(float)
0
383 q_status = WriteFailed;
never executed: q_status = WriteFailed;
0
384 return *this;
never executed: return *this;
0
385} -
386QDataStream &QDataStream::operator<<(double f) -
387{ -
388 if (version() >= QDataStream::Qt_4_6
evaluated: version() >= QDataStream::Qt_4_6
TRUEFALSE
yes
Evaluation Count:4728
yes
Evaluation Count:3607
3607-4728
389 && floatingPointPrecision() == QDataStream::SinglePrecision) {
evaluated: floatingPointPrecision() == QDataStream::SinglePrecision
TRUEFALSE
yes
Evaluation Count:1
yes
Evaluation Count:4727
1-4727
390 *this << float(f); -
391 return *this;
executed: return *this;
Execution Count:1
1
392 } -
393 -
394 if (!dev) { return *this; } if (q_status != Ok) return *this;
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:8334
evaluated: q_status != Ok
TRUEFALSE
yes
Evaluation Count:2
yes
Evaluation Count:8332
never executed: return *this;
executed: return *this;
Execution Count:2
0-8334
395 if (noswap) {
partially evaluated: noswap
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:8332
0-8332
396 if (dev->write((char *)&f, sizeof(double)) != sizeof(double))
never evaluated: dev->write((char *)&f, sizeof(double)) != sizeof(double)
0
397 q_status = WriteFailed;
never executed: q_status = WriteFailed;
0
398 } else {
never executed: }
0
399 union { -
400 double val1; -
401 quint64 val2; -
402 } x; -
403 x.val1 = f; -
404 x.val2 = qbswap(x.val2); -
405 if (dev->write((char *)&x.val2, sizeof(double)) != sizeof(double))
evaluated: dev->write((char *)&x.val2, sizeof(double)) != sizeof(double)
TRUEFALSE
yes
Evaluation Count:2
yes
Evaluation Count:8330
2-8330
406 q_status = WriteFailed;
executed: q_status = WriteFailed;
Execution Count:2
2
407 }
executed: }
Execution Count:8332
8332
408 return *this;
executed: return *this;
Execution Count:8332
8332
409} -
410QDataStream &QDataStream::operator<<(const char *s) -
411{ -
412 if (!s) {
partially evaluated: !s
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:4
0-4
413 *this << (quint32)0; -
414 return *this;
never executed: return *this;
0
415 } -
416 uint len = qstrlen(s) + 1; -
417 *this << (quint32)len; -
418 writeRawData(s, len); -
419 return *this;
executed: return *this;
Execution Count:4
4
420} -
421QDataStream &QDataStream::writeBytes(const char *s, uint len) -
422{ -
423 if (!dev) { return *this; } if (q_status != Ok) return *this;
never executed: return *this;
never executed: return *this;
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:15173
partially evaluated: q_status != Ok
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:15173
0-15173
424 *this << (quint32)len; -
425 if (len)
evaluated: len
TRUEFALSE
yes
Evaluation Count:14953
yes
Evaluation Count:220
220-14953
426 writeRawData(s, len);
executed: writeRawData(s, len);
Execution Count:14953
14953
427 return *this;
executed: return *this;
Execution Count:15173
15173
428} -
429int QDataStream::writeRawData(const char *s, int len) -
430{ -
431 if (!dev) { return -1; } if (q_status != Ok) return -1;
never executed: return -1;
executed: return -1;
Execution Count:3
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:16346
evaluated: q_status != Ok
TRUEFALSE
yes
Evaluation Count:3
yes
Evaluation Count:16343
0-16346
432 int ret = dev->write(s, len); -
433 if (ret != len)
evaluated: ret != len
TRUEFALSE
yes
Evaluation Count:1
yes
Evaluation Count:16342
1-16342
434 q_status = WriteFailed;
executed: q_status = WriteFailed;
Execution Count:1
1
435 return ret;
executed: return ret;
Execution Count:16343
16343
436} -
437int QDataStream::skipRawData(int len) -
438{ -
439 if (!dev) { return -1; }
never executed: return -1;
partially evaluated: !dev
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:6
0-6
440 -
441 if (dev->isSequential()) {
evaluated: dev->isSequential()
TRUEFALSE
yes
Evaluation Count:3
yes
Evaluation Count:3
3
442 char buf[4096]; -
443 int sumRead = 0; -
444 -
445 while (len > 0) {
evaluated: len > 0
TRUEFALSE
yes
Evaluation Count:9
yes
Evaluation Count:3
3-9
446 int blockSize = qMin(len, (int)sizeof(buf)); -
447 int n = dev->read(buf, blockSize); -
448 if (n == -1)
partially evaluated: n == -1
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:9
0-9
449 return -1;
never executed: return -1;
0
450 if (n == 0)
partially evaluated: n == 0
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:9
0-9
451 return sumRead;
never executed: return sumRead;
0
452 -
453 sumRead += n; -
454 len -= blockSize; -
455 }
executed: }
Execution Count:9
9
456 return sumRead;
executed: return sumRead;
Execution Count:3
3
457 } else { -
458 qint64 pos = dev->pos(); -
459 qint64 size = dev->size(); -
460 if (pos + len > size)
evaluated: pos + len > size
TRUEFALSE
yes
Evaluation Count:1
yes
Evaluation Count:2
1-2
461 len = size - pos;
executed: len = size - pos;
Execution Count:1
1
462 if (!dev->seek(pos + len))
partially evaluated: !dev->seek(pos + len)
TRUEFALSE
no
Evaluation Count:0
yes
Evaluation Count:3
0-3
463 return -1;
never executed: return -1;
0
464 return len;
executed: return len;
Execution Count:3
3
465 } -
466} -
467 -
468 -
469 -
Switch to Source codePreprocessed file

Generated by Squish Coco Non-Commercial