Back to index

glibc  2.9
Functions
bug3.c File Reference
#include <stdio.h>
#include <string.h>

Go to the source code of this file.

Functions

int main (void)

Function Documentation

int main ( void  )

Definition at line 5 of file bug3.c.

{
  FILE *f;
  int i;
  const char filename[] = "/tmp/bug3.test";

  f = fopen(filename, "w+");
  for (i=0; i<9000; i++)
    putc ('x', f);
  fseek (f, 8180L, 0);
  fwrite ("Where does this text go?", 1, 24, f);
  fflush (f);

  rewind (f);
  for (i=0; i<9000; i++)
    {
      int j;

      if ((j = getc(f)) != 'x')
       {
         if (i != 8180)
           {
             printf ("Test FAILED!");
             return 1;
           }
         else
           {
             char buf[25];

             buf[0] = j;
             fread (buf + 1, 1, 23, f);
             buf[24] = '\0';
             if (strcmp (buf, "Where does this text go?") != 0)
              {
                printf ("%s\nTest FAILED!\n", buf);
                return 1;
              }
             i += 23;
           }
       }
    }

  fclose(f);
  remove(filename);

  puts ("Test succeeded.");

  return 0;
}

Here is the call graph for this function: