Blame stdio-common/bug3.c

Packit Service 82fcde
#include <stdio.h>
Packit Service 82fcde
#include <string.h>
Packit Service 82fcde
Packit Service 82fcde
int
Packit Service 82fcde
main (void)
Packit Service 82fcde
{
Packit Service 82fcde
  FILE *f;
Packit Service 82fcde
  int i;
Packit Service 82fcde
  const char filename[] = OBJPFX "bug3.test";
Packit Service 82fcde
Packit Service 82fcde
  f = fopen(filename, "w+");
Packit Service 82fcde
  for (i=0; i<9000; i++)
Packit Service 82fcde
    putc ('x', f);
Packit Service 82fcde
  fseek (f, 8180L, 0);
Packit Service 82fcde
  fwrite ("Where does this text go?", 1, 24, f);
Packit Service 82fcde
  fflush (f);
Packit Service 82fcde
Packit Service 82fcde
  rewind (f);
Packit Service 82fcde
  for (i=0; i<9000; i++)
Packit Service 82fcde
    {
Packit Service 82fcde
      int j;
Packit Service 82fcde
Packit Service 82fcde
      if ((j = getc(f)) != 'x')
Packit Service 82fcde
	{
Packit Service 82fcde
	  if (i != 8180)
Packit Service 82fcde
	    {
Packit Service 82fcde
	      printf ("Test FAILED!");
Packit Service 82fcde
	      return 1;
Packit Service 82fcde
	    }
Packit Service 82fcde
	  else
Packit Service 82fcde
	    {
Packit Service 82fcde
	      char buf[25];
Packit Service 82fcde
Packit Service 82fcde
	      buf[0] = j;
Packit Service 82fcde
	      fread (buf + 1, 1, 23, f);
Packit Service 82fcde
	      buf[24] = '\0';
Packit Service 82fcde
	      if (strcmp (buf, "Where does this text go?") != 0)
Packit Service 82fcde
		{
Packit Service 82fcde
		  printf ("%s\nTest FAILED!\n", buf);
Packit Service 82fcde
		  return 1;
Packit Service 82fcde
		}
Packit Service 82fcde
	      i += 23;
Packit Service 82fcde
	    }
Packit Service 82fcde
	}
Packit Service 82fcde
    }
Packit Service 82fcde
Packit Service 82fcde
  fclose(f);
Packit Service 82fcde
  remove(filename);
Packit Service 82fcde
Packit Service 82fcde
  puts ("Test succeeded.");
Packit Service 82fcde
Packit Service 82fcde
  return 0;
Packit Service 82fcde
}