From ff0ac57db9e4bfd9c51b159563e1bf94522bb35f Mon Sep 17 00:00:00 2001
From: Tom Lane <tgl@sss.pgh.pa.us>
Date: Mon, 5 Jun 2006 21:16:32 +0000
Subject: [PATCH] Remove extremely old, incomplete, broken example code. Per my
 proposal a few days ago.

---
 src/tutorial/beard.c | 78 --------------------------------------------
 1 file changed, 78 deletions(-)
 delete mode 100644 src/tutorial/beard.c

diff --git a/src/tutorial/beard.c b/src/tutorial/beard.c
deleted file mode 100644
index ec80ced31f5..00000000000
--- a/src/tutorial/beard.c
+++ /dev/null
@@ -1,78 +0,0 @@
-/*-------------------------------------------------------------------------
- *
- * beard.c
- *	  sample routines to use large objects
- *
- * Portions Copyright (c) 1996-2006, PostgreSQL Global Development Group
- * Portions Copyright (c) 1994, Regents of the University of California
- *
- *
- * IDENTIFICATION
- *	  $PostgreSQL: pgsql/src/tutorial/beard.c,v 1.15 2006/03/05 15:59:11 momjian Exp $
- *
- *-------------------------------------------------------------------------
- */
-
-typedef struct ImageHdr
-{
-	int			size;
-}	ImageHdr;
-
-#define BUFSIZE 10
-
-/*
- * beard -
- *	 clips lower 1/3 of picture and return as large object
- */
-Oid
-beard(Oid picture)
-{
-	Oid			beard;
-	int			pic_fd,
-				beard_fd;
-	ImageHdr	ihdr;
-	char		buf[BUFSIZE];
-	int			cc;
-
-	pic_fd = DatumGetInt32(DirectFunctionCall2(lo_open,
-											   ObjectIdGetDatum(picture),
-											   Int32GetDatum(INV_READ)));
-	if (pic_fd < 0)
-		elog(ERROR, "could not access picture large object");
-
-	if (lo_read(pic_fd, (char *) &ihdr, sizeof(ihdr)) != sizeof(ihdr))
-		elog(ERROR, "picture large object corrupted");
-
-	beardOffset = (ihdr.size / 3) * 2;
-
-	/*
-	 * new large object
-	 */
-	beard = DatumGetObjectId(DirectFunctionCall1(lo_creat,
-												 Int32GetDatum(INV_MD)));
-	if (beard == InvalidOid)
-		elog(ERROR, "could not create new large object");
-
-	beard_fd = DatumGetInt32(DirectFunctionCall2(lo_open,
-												 ObjectIdGetDatum(beard),
-												 Int32GetDatum(INV_WRITE)));
-	if (beard_fd < 0)
-		elog(ERROR, "could not access beard large object");
-
-	if (DatumGetInt32(DirectFunctionCall3(lo_lseek,
-										  Int32GetDatum(pic_fd),
-										  Int32GetDatum(beardOffset),
-										  Int32GetDatum(SEEK_SET))) < 0)
-		elog(ERROR, "could not seek in picture large object");
-
-	while ((cc = lo_read(pic_fd, buf, BUFSIZE)) > 0)
-	{
-		if (lo_write(beard_fd, buf, cc) != cc)
-			elog(ERROR, "error while writing large object");
-	}
-
-	DirectFunctionCall1(lo_close, Int32GetDatum(pic_fd));
-	DirectFunctionCall1(lo_close, Int32GetDatum(beard_fd));
-
-	return beard;
-}
-- 
GitLab