ports/84522: databases/gtksql syntax error fixed

Dominik Brettnacher domi at saargate.de
Wed Aug 3 16:10:25 UTC 2005


>Number:         84522
>Category:       ports
>Synopsis:       databases/gtksql syntax error fixed
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Wed Aug 03 16:10:22 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Dominik Brettnacher
>Release:        FreeBSD 5.4-RC1 i386
>Organization:
>Environment:
System: FreeBSD saargate.de 5.4-RC1 FreeBSD 5.4-RC1 #0: Sun Apr 3 15:40:32 UTC 2005 root at harlow.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386


>Description:
	databases/gtksql failed to build with WITH_PGSQL=yes (i.e. with
	support for PostgreSQL) because of multi-line string literals
	in the C source -- newer gcc versions don't support multi-line literals.
>How-To-Repeat:
>Fix:

diff -urN /usr/ports/databases/gtksql/files/patch-postgres.c gtksql/files/patch-postgres.c
--- /usr/ports/databases/gtksql/files/patch-postgres.c	Sat Apr 21 13:43:04 2001
+++ gtksql/files/patch-postgres.c	Wed Aug  3 17:23:47 2005
@@ -1,5 +1,5 @@
---- postgres.c.orig	Sat Apr 21 19:16:37 2001
-+++ postgres.c	Sat Apr 21 19:16:47 2001
+--- postgres.c.orig	Sat Jun  5 15:05:36 1999
++++ postgres.c	Wed Aug  3 17:22:55 2005
 @@ -18,7 +18,7 @@
  
  #include <libpq-fe.h>
@@ -9,3 +9,47 @@
  
  #include "common.h"
  #include "status.h"
+@@ -129,14 +129,7 @@
+   PGresult *table_info;
+   char query[512];
+ 
+-  sprintf(query, "SELECT a.attnum, a.attname, t.typname, a.attlen,
+-                         a.atttypmod, a.attnotnull, a.atthasdef
+-                  FROM pg_class c, pg_attribute a, pg_type t
+-                  WHERE c.relname = '%s' AND
+-                        a.attnum > 0 AND
+-                        a.attrelid = c.oid AND
+-                        a.atttypid = t.oid
+-                  ORDER BY attnum", tbf->name);
++  sprintf(query, "SELECT a.attnum, a.attname, t.typname, a.attlen, a.atttypmod, a.attnotnull, a.atthasdef FROM pg_class c, pg_attribute a, pg_type t WHERE c.relname = '%s' AND a.attnum > 0 AND a.attrelid = c.oid AND a.atttypid = t.oid ORDER BY attnum", tbf->name);
+   
+   table_info = PQexec(conn, query);
+   if ((table_info == NULL) ||
+@@ -183,11 +176,7 @@
+       if (rnotnull[0] == 't')
+ 	strcat(type_str, " not null");
+       if (rhasdef[0] == 't') {
+-	sprintf(buf, "SELECT d.adsrc
+-                      FROM pg_attrdef d, pg_class c
+-                      WHERE c.relname = '%s' AND
+-                            c.oid = d.adrelid AND
+-                            d.adnum = %s",
++	sprintf(buf, "SELECT d.adsrc FROM pg_attrdef d, pg_class c WHERE c.relname = '%s' AND c.oid = d.adrelid AND d.adnum = %s",
+ 		tbf->name, PQgetvalue(table_info, i, 0));
+ 	table_info2 = PQexec(conn, buf);
+ 	if ((table_info2 == NULL) ||
+@@ -240,13 +229,7 @@
+     PGresult *tables;
+     char query[512];
+     
+-    sprintf(query, "SELECT usename, relname, relkind, relhasrules
+-                    FROM pg_class, pg_user
+-                    WHERE relkind = 'r' AND
+-                          relname !~ '^pg_' AND
+-                          relname !~ '^xin[vx][0-9]+' AND
+-                          usesysid = relowner
+-                    ORDER BY relname");
++    sprintf(query, "SELECT usename, relname, relkind, relhasrules FROM pg_class, pg_user WHERE relkind = 'r' AND relname !~ '^pg_' AND relname !~ '^xin[vx][0-9]+' AND usesysid = relowner ORDER BY relname");
+   
+     tables = PQexec(conn->conn, query);
+     if ((tables == NULL) || (PQresultStatus(tables) != PGRES_TUPLES_OK)) {
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list