X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;ds=sidebyside;f=src%2Ffunctional%2Ffwscanf.c;h=69a7bbf32ac944e555b11ef0844ac733a66df45d;hb=e5c71fd3db0b50033d40c3a66c7dff774ae647e2;hp=70ba50b0eb58701e3654b95f81c7abe24d840e7b;hpb=0c5fb5124c162a631c247ed63c3a995df2914ff8;p=libc-test diff --git a/src/functional/fwscanf.c b/src/functional/fwscanf.c index 70ba50b..69a7bbf 100644 --- a/src/functional/fwscanf.c +++ b/src/functional/fwscanf.c @@ -8,21 +8,27 @@ #define TEST(r, f, x, m) ( \ errno=0, ((r) = (f)) == (x) || \ - (error("%s failed (" m ")\n", #f, r, x, strerror(errno)), 0) ) + (t_error("%s failed (" m ")\n", #f, r, x, strerror(errno)), 0) ) #define TEST_S(s, x, m) ( \ !strcmp((s),(x)) || \ - (error("[%s] != [%s] (%s)\n", s, x, m), 0) ) + (t_error("[%s] != [%s] (%s)\n", s, x, m), 0) ) static FILE *writetemp(const char *data) { FILE *f = tmpfile(); + size_t n = strlen(data); if (!f) return 0; - if (!fwrite(data, strlen(data), 1, f)) { + if (write(fileno(f), data, n) != n) { + t_error("write: %s\n", strerror(errno)); + fclose(f); + return 0; + } + if (lseek(fileno(f), 0, SEEK_SET) != 0) { + t_error("lseek: %s\n", strerror(errno)); fclose(f); return 0; } - rewind(f); return f; } @@ -106,5 +112,5 @@ int main(void) fclose(f); } - return test_status; + return t_status; }