@@ -15,8 +15,12 @@ static inline ssize_t safe_pread(const char *file, const int lineno,
15
15
16
16
if (rval == -1 || (len_strict && (size_t )rval != nbyte )) {
17
17
tst_brk_ (file , lineno , TBROK | TERRNO ,
18
- "pread(%d,%p,%zu,%lld) failed" ,
19
- fildes , buf , nbyte , (long long )offset );
18
+ "pread(%d,%p,%zu,%lld) failed" ,
19
+ fildes , buf , nbyte , (long long )offset );
20
+ } else if (rval < 0 ) {
21
+ tst_brk_ (file , lineno , TBROK | TERRNO ,
22
+ "Invalid pread(%d,%p,%zu,%lld) return value %zd" ,
23
+ fildes , buf , nbyte , (long long )offset , rval );
20
24
}
21
25
22
26
return rval ;
@@ -34,8 +38,12 @@ static inline ssize_t safe_pwrite(const char *file, const int lineno,
34
38
rval = pwrite (fildes , buf , nbyte , offset );
35
39
if (rval == -1 || (len_strict && (size_t )rval != nbyte )) {
36
40
tst_brk_ (file , lineno , TBROK | TERRNO ,
37
- "pwrite(%d,%p,%zu,%lld) failed" ,
38
- fildes , buf , nbyte , (long long )offset );
41
+ "pwrite(%d,%p,%zu,%lld) failed" ,
42
+ fildes , buf , nbyte , (long long )offset );
43
+ } else if (rval < 0 ) {
44
+ tst_brk_ (file , lineno , TBROK | TERRNO ,
45
+ "Invalid pwrite(%d,%p,%zu,%lld) return value %zd" ,
46
+ fildes , buf , nbyte , (long long )offset , rval );
39
47
}
40
48
41
49
return rval ;
0 commit comments