More patches. Thanks Volker Goetz
authorDon Seiler <rizzo@gentoo.org>
Thu, 11 Nov 2004 15:31:37 +0000 (15:31 +0000)
committerDon Seiler <rizzo@gentoo.org>
Thu, 11 Nov 2004 15:31:37 +0000 (15:31 +0000)
dev-db/tora/ChangeLog
dev-db/tora/Manifest
dev-db/tora/files/digest-tora-1.3.14.1-r2 [new file with mode: 0644]
dev-db/tora/files/tora-1.3.14.1-connection-memleak.diff [new file with mode: 0644]
dev-db/tora/files/tora-1.3.14.1-noblockquery.diff [new file with mode: 0644]
dev-db/tora/files/tora-1.3.14.1-oracleextract.diff [new file with mode: 0644]
dev-db/tora/files/tora-1.3.14.1-resultcontent-dtor.diff [new file with mode: 0644]
dev-db/tora/files/tora-1.3.14.1-tooltip-memleaks.diff [new file with mode: 0644]
dev-db/tora/tora-1.3.14.1-r2.ebuild [new file with mode: 0644]

index 3fc0f5639412e80e7e4310789e5e01063e12a657..da2faa6c5fa01031795afa1b5f2075d6291621ab 100644 (file)
@@ -1,6 +1,16 @@
 # ChangeLog for dev-db/tora
 # Copyright 1999-2004 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-db/tora/ChangeLog,v 1.32 2004/10/29 16:13:09 rizzo Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-db/tora/ChangeLog,v 1.33 2004/11/11 15:31:37 rizzo Exp $
+
+*tora-1.3.14.1-r2 (11 Nov 2004)
+
+  11 Nov 2004; Don Seiler <rizzo@gentoo.org>
+  +files/tora-1.3.14.1-connection-memleak.diff,
+  +files/tora-1.3.14.1-noblockquery.diff,
+  +files/tora-1.3.14.1-oracleextract.diff,
+  +files/tora-1.3.14.1-resultcontent-dtor.diff,
+  +files/tora-1.3.14.1-tooltip-memleaks.diff, +tora-1.3.14.1-r2.ebuild:
+  More patches.  Thanks Volker Goetz
 
 *tora-1.3.14.1-r1 (29 Oct 2004)
 
index 275fd02de7df7dc76e65ce5a018790c5ace08eab..a3a408c60bd3d699f4baee3ec245756d5fed0004 100644 (file)
@@ -1,7 +1,14 @@
-MD5 4afdcea1c5d0b3a1250480b63ae3a883 ChangeLog 4796
+MD5 6b206001bd2e5576f80a2de6c93eee7e ChangeLog 5165
 MD5 bda8803c4adc9cf0b308b71157891f05 metadata.xml 536
 MD5 5990c83ab38d1a6dbdcab9c3dc6100dc tora-1.3.14.1-r1.ebuild 2031
+MD5 f5557fa63bd53e6dcf119a2e078d3b73 tora-1.3.14.1-r2.ebuild 2789
+MD5 4cdf2dfb2aba1c9e73347bcc24eb16f5 files/tora-1.3.14.1-connection-memleak.diff 550
 MD5 4d38ba570ff115b02bfc9e2937fc0c84 files/tora-1.3.14.1-triggers.diff 449
+MD5 f8ba7f976f8cc249f40a8436304323ba files/tora-1.3.14.1-noblockquery.diff 404
 MD5 a8088380e7c371c2f61aabbca96f4152 files/tora-1.3.14.1-invalidobjects.diff 4831
 MD5 44bd6caa730b70fb9f4c0eba267d5688 files/tora-1.3.14.1-race.patch 680
 MD5 e937ff9aa1c78b74db75186de6f51759 files/digest-tora-1.3.14.1-r1 72
+MD5 5dccb7ba564e0b2312dd5a7cd92a8bd2 files/tora-1.3.14.1-oracleextract.diff 2391
+MD5 f960b94be3f1d4b4710c1e8c97dedf43 files/tora-1.3.14.1-resultcontent-dtor.diff 668
+MD5 1bb1cc4967fbfd6b72661f28d53f57d8 files/tora-1.3.14.1-tooltip-memleaks.diff 2105
+MD5 e937ff9aa1c78b74db75186de6f51759 files/digest-tora-1.3.14.1-r2 72
diff --git a/dev-db/tora/files/digest-tora-1.3.14.1-r2 b/dev-db/tora/files/digest-tora-1.3.14.1-r2
new file mode 100644 (file)
index 0000000..096b8ef
--- /dev/null
@@ -0,0 +1 @@
+MD5 5560b5104438e1b71bd89386d0fcdc00 tora-alpha-1.3.14.1.tar.gz 2632386
diff --git a/dev-db/tora/files/tora-1.3.14.1-connection-memleak.diff b/dev-db/tora/files/tora-1.3.14.1-connection-memleak.diff
new file mode 100644 (file)
index 0000000..22946e0
--- /dev/null
@@ -0,0 +1,19 @@
+--- tora-1.3.14.1-vanilla/toconnection.cpp     2004-07-02 07:27:57.000000000 +0200
++++ tora-1.3.14.1/toconnection.cpp     2004-11-11 13:48:44.030865878 +0100
+@@ -1588,7 +1588,7 @@
+    if (toTool::globalConfig(CONF_CACHE_DISK,DEFAULT_CACHE_DISK).isEmpty())
+       return false;
+ 
+-   toConnection::objectName *cur;
++   toConnection::objectName *cur = 0;
+    int objCounter = 0;
+    int synCounter = 0;
+ 
+@@ -1636,6 +1636,7 @@
+        synCounter++;
+      }
+      ObjectNames.insert(ObjectNames.end(),(*cur));
++     delete cur; cur = 0;
+    }
+    return true;
+ }
diff --git a/dev-db/tora/files/tora-1.3.14.1-noblockquery.diff b/dev-db/tora/files/tora-1.3.14.1-noblockquery.diff
new file mode 100644 (file)
index 0000000..4ca5769
--- /dev/null
@@ -0,0 +1,11 @@
+--- tora-1.3.14.1/tonoblockquery.cpp   2004-07-02 07:27:57.000000000 +0200
++++ tora-1.3.14.1-r2/tonoblockquery.cpp        2004-11-11 13:25:27.919801410 +0100
+@@ -141,7 +141,7 @@
+   TO_DEBUGOUT("Locking EOQ\n");
+   toLocker lock(Parent.Lock);
+   TO_DEBUGOUT("Deleting query\n");
+-  if (!Parent.Query->eof())
++  if (!Parent.Error&&!Parent.Query->eof())
+     try {
+       Parent.Query->cancel();
+     } catch(...) {
diff --git a/dev-db/tora/files/tora-1.3.14.1-oracleextract.diff b/dev-db/tora/files/tora-1.3.14.1-oracleextract.diff
new file mode 100644 (file)
index 0000000..3e1569d
--- /dev/null
@@ -0,0 +1,72 @@
+--- tora-1.3.14.1/tooracleextract.cpp  2004-07-02 07:27:57.000000000 +0200
++++ tora-1.3.14.1-r2/tooracleextract.cpp       2004-11-11 13:30:17.070769225 +0100
+@@ -5073,12 +5073,8 @@
+                           "      , table_name\n"
+                           "      , base_object_type\n"
+                           "      , referencing_names\n"
+-                          "      , description\n"
+-                          "      , DECODE(\n"
+-                          "                when_clause\n"
+-                          "               ,null,null\n"
+-                          "               ,'WHEN (' || when_clause || ')' || CHR(10)\n"
+-                          "              )\n"
++                          "      , upper(description)\n"
++                          "      , when_clause\n"
+                           "      , trigger_body\n"
+                           "      , DECODE(status,'ENABLED','ENABLE','DISABLE')\n"
+                           " FROM\n"
+@@ -5097,12 +5093,8 @@
+                            "      , table_name\n"
+                            "      , 'TABLE'                           AS base_object_type\n"
+                            "      , referencing_names\n"
+-                           "      , description\n"
+-                           "      , DECODE(\n"
+-                           "                when_clause\n"
+-                           "               ,null,null\n"
+-                           "               ,'WHEN (' || when_clause || ')' || CHR(10)\n"
+-                           "              )\n"
++                           "      , upper(description)\n"
++                           "      , when_clause\n"
+                            "      , trigger_body\n"
+                            "      , DECODE(status,'ENABLED','ENABLE','DISABLE')\n"
+                            " FROM\n"
+@@ -5142,9 +5134,12 @@
+   else if (triggerType.find("INSTEAD OF")>=0)
+     trgType="INSTEAD OF";
+ 
++
+   QString trgPart = trgType+" "+event;
+   QRegExp src("\\s"+trgPart+"\\s",false);
++  description.replace(QRegExp("\nON"),QString("\n ON"));
+   int pos=description.find(src);
++  //QString columns=description;
+   QString columns;
+   if (pos>=0) {
+     pos+=trgPart.length()+2;
+@@ -5180,8 +5175,11 @@
+   }
+   if (triggerType.find("EACH ROW")>=0)
+     ret+="FOR EACH ROW\n";
+-  if (!when.isEmpty())
++  if (!when.isEmpty()) {
++    ret+="WHEN (";
+     ret+=when;
++    ret+=")\n";
++  }
+   ret+=body;
+   ret+="\n/\n\n";
+   if (status!="ENABLE") {
+@@ -5983,11 +5981,12 @@
+   QString src=trgType;
+   src+=" ";
+   src+=event;
++  description.replace(QRegExp("\nON"),QString("\n ON"));
+   int pos=description.find(src);
+   QString columns;
+   if (pos>=0) {
+     pos+=src.length();
+-    int endPos=description.find(" ON ",pos);
++    int endPos=description.find(" ON ",pos,false);
+     if (endPos>=0) {
+       columns=description.right(description.length()-pos);
+       columns.truncate(endPos-pos);
diff --git a/dev-db/tora/files/tora-1.3.14.1-resultcontent-dtor.diff b/dev-db/tora/files/tora-1.3.14.1-resultcontent-dtor.diff
new file mode 100644 (file)
index 0000000..a198a5e
--- /dev/null
@@ -0,0 +1,21 @@
+diff -uNr tora-1.3.14.1-vanilla/toresultcontent.cpp tora-1.3.14.1-neu/toresultcontent.cpp
+--- tora-1.3.14.1-vanilla/toresultcontent.cpp  2004-07-02 07:27:57.000000000 +0200
++++ tora-1.3.14.1-neu/toresultcontent.cpp      2004-11-11 14:01:19.572515375 +0100
+@@ -338,7 +338,7 @@
+ {
+   saveUnsaved();
+   delete Query;
+-  delete BinaryColumns;
++  delete [] BinaryColumns;
+ }
+ 
+ void toResultContentEditor::wrongUsage(void)
+@@ -441,7 +441,7 @@
+       if (numRows()==0) {
+       Description=Query->describe();
+ 
+-      delete BinaryColumns;
++      delete [] BinaryColumns;
+       BinaryColumns=new bool[Description.size()];
+       for(unsigned int j=0;j<Description.size();j++)
+         BinaryColumns[j]=false;
diff --git a/dev-db/tora/files/tora-1.3.14.1-tooltip-memleaks.diff b/dev-db/tora/files/tora-1.3.14.1-tooltip-memleaks.diff
new file mode 100644 (file)
index 0000000..ac15f53
--- /dev/null
@@ -0,0 +1,79 @@
+diff -uNr tora-1.3.14.1-vanilla/topiechart.cpp tora-1.3.14.1/topiechart.cpp
+--- tora-1.3.14.1-vanilla/topiechart.cpp       2004-07-02 07:27:57.000000000 +0200
++++ tora-1.3.14.1/topiechart.cpp       2004-11-11 13:42:44.635126732 +0100
+@@ -96,7 +96,13 @@
+     QFont font(toStringToFont(str));
+     setFont(font);
+   }
+-  new toPieTip(this);
++  AllTip = new toPieTip(this);
++}
++  
++toPieChart::~toPieChart()
++{
++  delete AllTip;
++  AllTip = 0;
+ }
+ 
+ #define FONT_ALIGN AlignLeft|AlignTop|ExpandTabs
+diff -uNr tora-1.3.14.1-vanilla/topiechart.h tora-1.3.14.1/topiechart.h
+--- tora-1.3.14.1-vanilla/topiechart.h 2004-07-02 07:27:57.000000000 +0200
++++ tora-1.3.14.1/topiechart.h 2004-11-11 13:44:19.191324588 +0100
+@@ -40,6 +40,7 @@
+ 
+ class QPopupMenu;
+ class toLineChart;
++class toPieTip;
+ 
+ /** A widget that displays a piechart.
+  */
+@@ -57,6 +58,7 @@
+ 
+   QRect ChartRect;
+   std::list<int> Angels;
++  toPieTip* AllTip;
+ 
+ protected:
+   virtual void mouseDoubleClickEvent(QMouseEvent *e);
+@@ -69,6 +71,11 @@
+    */
+   toPieChart(QWidget *parent=NULL,const char *name=NULL,WFlags f=0);
+ 
++  /**
++  * dtor
++  */
++  virtual ~toPieChart();
++
+   /** Create a copy of a piechart.
+    * @param pie Pie chart to copy.
+    * @param parent Parent widget.
+diff -uNr tora-1.3.14.1-vanilla/toresultview.cpp tora-1.3.14.1/toresultview.cpp
+--- tora-1.3.14.1-vanilla/toresultview.cpp     2004-07-02 07:27:57.000000000 +0200
++++ tora-1.3.14.1/toresultview.cpp     2004-11-11 13:39:49.347320977 +0100
+@@ -500,6 +500,12 @@
+   LastMove=QPoint(-1,-1);
+ }
+ 
++toListView::~toListView()
++{
++delete AllTip;
++AllTip = 0;
++}
++
+ void toListView::contentsMouseDoubleClickEvent (QMouseEvent *e)
+ {
+   QPoint p=e->pos();
+diff -uNr tora-1.3.14.1-vanilla/toresultview.h tora-1.3.14.1/toresultview.h
+--- tora-1.3.14.1-vanilla/toresultview.h       2004-07-02 07:27:57.000000000 +0200
++++ tora-1.3.14.1/toresultview.h       2004-11-11 13:38:52.748201045 +0100
+@@ -408,6 +408,10 @@
+    */
+   toListView(QWidget *parent,const char *name=NULL,WFlags f=0);
+ 
++  /**
++  * dtor
++  */
++  virtual ~toListView();
+   /** Get SQL name of list.
+    */
+   virtual QString sqlName(void)
diff --git a/dev-db/tora/tora-1.3.14.1-r2.ebuild b/dev-db/tora/tora-1.3.14.1-r2.ebuild
new file mode 100644 (file)
index 0000000..be44955
--- /dev/null
@@ -0,0 +1,88 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-db/tora/tora-1.3.14.1-r2.ebuild,v 1.1 2004/11/11 15:31:37 rizzo Exp $
+
+inherit debug eutils
+
+IUSE="kde oracle debug"
+DESCRIPTION="TOra - Toolkit For Oracle"
+HOMEPAGE="http://www.globecom.se/tora/"
+SRC_URI="mirror://sourceforge/${PN}/${PN}-alpha-${PV}.tar.gz"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~x86 ~ppc ~sparc ~alpha ~hppa ~amd64"
+
+DEPEND=">=x11-libs/qt-3.0.0
+       dev-lang/perl
+       kde? ( >=kde-base/kdelibs-3.1 )"
+
+pkg_setup() {
+       if use oracle && [ -z "$ORACLE_HOME" ] ; then
+               eerror "ORACLE_HOME variable is not set."
+               eerror
+               eerror "You must install Oracle >= 8i client for Linux in"
+               eerror "order to compile TOra with Oracle support."
+               eerror
+               eerror "Otherwise specify -oracle in your USE variable."
+               eerror
+               eerror "You can download the Oracle software from"
+               eerror "http://otn.oracle.com/software/content.html"
+               die
+       fi
+}
+
+src_unpack() {
+       unpack ${A}
+       cd ${S}
+       # http://sourceforge.net/tracker/index.php?func=detail&aid=1025950&group_id=16636&atid=316636
+       epatch ${FILESDIR}/tora-1.3.14.1-triggers.diff
+
+       # http://sourceforge.net/tracker/index.php?func=detail&aid=996061&group_id=16636&atid=316636
+
+       epatch ${FILESDIR}/tora-1.3.14.1-invalidobjects.diff
+       # http://sourceforge.net/tracker/index.php?func=detail&aid=1048530&group_id=16636&atid=316636
+       epatch ${FILESDIR}/tora-1.3.14.1-race.patch
+
+       # http://sourceforge.net/tracker/index.php?func=detail&aid=1055777&group_id=16636&atid=316636
+       epatch ${FILESDIR}/tora-1.3.14.1-noblockquery.diff
+
+       # http://sourceforge.net/tracker/index.php?func=detail&aid=1055783&group_id=16636&atid=316636
+       epatch ${FILESDIR}/tora-1.3.14.1-oracleextract.diff
+
+       # http://sourceforge.net/tracker/index.php?func=detail&aid=1057806&group_id=16636&atid=316636
+       epatch ${FILESDIR}/tora-1.3.14.1-resultcontent-dtor.diff
+
+       # http://sourceforge.net/tracker/index.php?func=detail&aid=1058979&group_id=16636&atid=316636
+       epatch ${FILESDIR}/tora-1.3.14.1-tooltip-memleaks.diff
+
+       # http://sourceforge.net/tracker/index.php?func=detail&aid=1059686&group_id=16636&atid=316636
+       epatch ${FILESDIR}/tora-1.3.14.1-connection-memleak.diff
+}
+
+src_compile() {
+
+       # Need to fake out Qt or we'll get sandbox problems
+       REALHOME="$HOME"
+       mkdir -p $T/fakehome/.kde
+       mkdir -p $T/fakehome/.qt
+       export HOME="$T/fakehome"
+       addwrite "${QTDIR}/etc/settings"
+
+       local myconf
+       myconf="--prefix=/usr"
+       myconf="$myconf --with-mono"
+
+       use kde \
+               && myconf="$myconf --with-kde" \
+               || myconf="$myconf --without-kde"
+       use oracle || myconf="$myconf --without-oracle"
+
+       ./configure $myconf || die "configure failed"
+       emake || die "emake failed"
+}
+
+src_install() {
+       make install ROOT=${D}
+       dodoc LICENSE.txt BUGS INSTALL NEWS README TODO
+}