source: vendor/glibc-tests/glibc/libio/bug-rewind2.c

Last change on this file was 2036, checked in by bird, 20 years ago

Initial revision

  • Property cvs2svn:cvs-rev set to 1.1
  • Property svn:eol-style set to native
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 991 bytes
Line 
1#include <stdio.h>
2#include <wchar.h>
3
4
5static int fd;
6
7static void prepare (void);
8#define PREPARE(argc, argv) prepare ()
9
10
11#define TEST_FUNCTION do_test ()
12static int do_test (void);
13#include "../test-skeleton.c"
14
15
16static void
17prepare (void)
18{
19 fd = create_temp_file ("wrewind2.", NULL);
20 if (fd == -1)
21 exit (3);
22}
23
24
25static int
26do_test (void)
27{
28 wchar_t dummy[10];
29 int ret = 0;
30 FILE *fp;
31 int result = 0;
32
33 fp = fdopen (fd, "w+");
34 if (fp == NULL)
35 {
36 puts ("fopen(""testfile"", ""w+"") returned NULL.");
37 return 1;
38 }
39 else
40 {
41 fwprintf (fp, L"abcd");
42 printf ("current pos = %ld\n", ftell (fp));
43 if (ftell (fp) != 4)
44 result = 1;
45
46 rewind (fp);
47 ret = fwscanf (fp, L"%c", dummy);
48
49 printf ("current pos = %ld\n", ftell (fp));
50 if (ftell (fp) != 1)
51 result = 1;
52
53 rewind (fp);
54 printf ("current pos = %ld\n", ftell (fp));
55 if (ftell (fp) != 0)
56 result = 1;
57
58 fclose (fp);
59 }
60
61 return result;
62}
Note: See TracBrowser for help on using the repository browser.