| 
      
      
      From: <fir...@us...> - 2012-12-16 03:45:16
       | 
| Revision: 57497
          http://firebird.svn.sourceforge.net/firebird/?rev=57497&view=rev
Author:   firebirds
Date:     2012-12-16 03:45:09 +0000 (Sun, 16 Dec 2012)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2012-12-15 11:38:06 UTC (rev 57496)
+++ firebird/trunk/ChangeLog	2012-12-16 03:45:09 UTC (rev 57497)
@@ -1,3 +1,17 @@
+ 2012-12-15 08:12  dimitr 
+   M src/remote/os/win32/wnet.cpp
+   M src/remote/os/win32/xnet.cpp
+The remaining fixes for Windows.
+
+ 2012-12-15 08:07  dimitr 
+   M src/common/classes/Reasons.h
+   M src/common/classes/condition.h
+   M src/common/classes/locks.h
+   M src/common/classes/rwlock.h
+   M src/common/os/win32/isc_ipc.cpp
+   M src/jrd/os/win32/winnt.cpp
+Fixed (mostly) the Windows build.
+
  2012-12-14 17:59  alexpeshkoff 
    M src/auth/SecurityDatabase/LegacyManagement.epp
    M src/auth/SecurityDatabase/LegacyServer.cpp
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2012-12-15 11:38:06 UTC (rev 57496)
+++ firebird/trunk/src/jrd/build_no.h	2012-12-16 03:45:09 UTC (rev 57497)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30166
+  FORMAL BUILD NUMBER:30168
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30166"
-#define FILE_VER_STRING "WI-T3.0.0.30166"
-#define LICENSE_VER_STRING "WI-T3.0.0.30166"
-#define FILE_VER_NUMBER 3, 0, 0, 30166
+#define PRODUCT_VER_STRING "3.0.0.30168"
+#define FILE_VER_STRING "WI-T3.0.0.30168"
+#define LICENSE_VER_STRING "WI-T3.0.0.30168"
+#define FILE_VER_NUMBER 3, 0, 0, 30168
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30166"
+#define FB_BUILD_NO "30168"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2012-12-15 11:38:06 UTC (rev 57496)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2012-12-16 03:45:09 UTC (rev 57497)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30166
+BuildNum=30168
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2012-12-19 08:26:01
       | 
| Revision: 57505
          http://sourceforge.net/p/firebird/code/57505
Author:   firebirds
Date:     2012-12-19 08:25:58 +0000 (Wed, 19 Dec 2012)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2012-12-19 00:56:57 UTC (rev 57504)
+++ firebird/trunk/ChangeLog	2012-12-19 08:25:58 UTC (rev 57505)
@@ -1,3 +1,78 @@
+ 2012-12-19 00:56  asfernandes 
+   M src/common/classes/locks.h
+   M src/dsql/StmtNodes.cpp
+   M src/jrd/cch.cpp
+   M src/jrd/jrd.h
+   M src/jrd/recsrc/Cursor.h
+Misc.
+
+ 2012-12-18 13:54  alexpeshkoff 
+   M src/common/classes/SyncObject.cpp
+   M src/common/classes/SyncObject.h
+   M src/jrd/Database.cpp
+   M src/jrd/cch.cpp
+   M src/jrd/cch_proto.h
+   M src/jrd/dfw.epp
+   M src/jrd/jrd.cpp
+   M src/jrd/jrd.h
+   M src/jrd/lck.cpp
+   M src/jrd/shut.cpp
+   M src/jrd/shut_proto.h
+   M src/yvalve/why.cpp
+Take locks in AST before building tdbb 
+Fixed assertion in CCH_exclusive_attachment 
+Rolled back my changes required to let cancelOperation() enter engine after shutdown
+Better locks' history in SyncObject
+
+ 2012-12-18 13:47  alexpeshkoff 
+   M builds/make.new/config/install-sh
+fresh file version
+
+ 2012-12-17 17:33  dimitr 
+   M src/jrd/recsrc/AggregatedStream.cpp
+   M src/jrd/recsrc/BitmapTableScan.cpp
+   M src/jrd/recsrc/BufferedStream.cpp
+   M src/jrd/recsrc/ConditionalStream.cpp
+   M src/jrd/recsrc/Cursor.cpp
+   M src/jrd/recsrc/Cursor.h
+   M src/jrd/recsrc/ExternalTableScan.cpp
+   M src/jrd/recsrc/FilteredStream.cpp
+   M src/jrd/recsrc/FirstRowsStream.cpp
+   M src/jrd/recsrc/FullOuterJoin.cpp
+   M src/jrd/recsrc/FullTableScan.cpp
+   M src/jrd/recsrc/HashJoin.cpp
+   M src/jrd/recsrc/IndexTableScan.cpp
+   M src/jrd/recsrc/LockedStream.cpp
+   M src/jrd/recsrc/MergeJoin.cpp
+   M src/jrd/recsrc/NestedLoopJoin.cpp
+   M src/jrd/recsrc/ProcedureScan.cpp
+   M src/jrd/recsrc/RecursiveStream.cpp
+   M src/jrd/recsrc/SingularStream.cpp
+   M src/jrd/recsrc/SkipRowsStream.cpp
+   M src/jrd/recsrc/SortedStream.cpp
+   M src/jrd/recsrc/Union.cpp
+   M src/jrd/recsrc/VirtualTableScan.cpp
+   M src/jrd/recsrc/WindowedStream.cpp
+Fixed rescheduling logic that was broken during the RSB refactoring.
+
+ 2012-12-17 17:11  dimitr 
+   M src/jrd/JrdStatement.cpp
+Simplest possible solution for the incorrect assertion I put recently.
+
+ 2012-12-15 08:12  dimitr 
+   M src/remote/os/win32/wnet.cpp
+   M src/remote/os/win32/xnet.cpp
+The remaining fixes for Windows.
+
+ 2012-12-15 08:07  dimitr 
+   M src/common/classes/Reasons.h
+   M src/common/classes/condition.h
+   M src/common/classes/locks.h
+   M src/common/classes/rwlock.h
+   M src/common/os/win32/isc_ipc.cpp
+   M src/jrd/os/win32/winnt.cpp
+Fixed (mostly) the Windows build.
+
  2012-12-14 17:59  alexpeshkoff 
    M src/auth/SecurityDatabase/LegacyManagement.epp
    M src/auth/SecurityDatabase/LegacyServer.cpp
@@ -140,7 +215,7 @@
  2012-12-06 14:51  hvlad 
    M src/jrd/cch.cpp
    M src/jrd/jrd.h
-Front ported fix for CORE-3034 (Bugche?\209?\129k 300 (can't find shared latch))
+Front ported fix for CORE-3034 (Bugcheсk 300 (can't find shared latch))
 
  2012-12-06 12:09  dimitr 
    M src/dsql/StmtNodes.cpp
@@ -3561,7 +3636,7 @@
    M src/qli/dtr.h
    M src/qli/meta.epp
    M src/qli/qliswi.h
-Stop db triggers in qli, from Herr Schlottmann-G?\195?\182dde
+Stop db triggers in qli, from Herr Schlottmann-Gödde
 
  2012-01-19 06:26  robocop 
    M src/remote/inet.cpp
@@ -3882,7 +3957,7 @@
  2011-12-30 14:38  asfernandes 
    M doc/sql.extensions/README.builtin_functions.txt
    M src/common/os/guid.h
-Make UUID_TO_CHAR2 returns lower-cased strings, as the RFC specifies?\194?\183
+Make UUID_TO_CHAR2 returns lower-cased strings, as the RFC specifies·
 
  2011-12-30 14:19  alexpeshkoff 
    M src/jrd/svc.cpp
@@ -6085,7 +6160,7 @@
  2011-06-03 19:12  asfernandes 
    M src/common/IntlUtil.cpp
    M src/common/IntlUtil.h
-Fixed CORE-3416 - Inserting K?\195?\164se into a CHARACTER SET ASCII column succeeds.
+Fixed CORE-3416 - Inserting Käse into a CHARACTER SET ASCII column succeeds.
 
  2011-06-03 17:39  asfernandes 
    M src/jrd/met.epp
@@ -39137,7 +39212,7 @@
  2008-11-29 18:47  asfernandes 
    M src/jrd/DataTypeUtil.cpp
    M src/jrd/DataTypeUtil.h
-Fixed CORE-2019 ?\195?\162?\226?\130?\172?\226?\128?\156 UTF-8 conversion error (string truncation).
+Fixed CORE-2019 – UTF-8 conversion error (string truncation).
 
  2008-11-28 18:49  alexpeshkoff 
    M src/common/classes/SafeArg.cpp
@@ -41489,7 +41564,7 @@
 
  2008-07-16 14:16  asfernandes 
    M src/jrd/idx.cpp
-Fixed CORE-1989 - UTF8 UNICODE_CI collate can?\194?\180t be used in foreing key constraint
+Fixed CORE-1989 - UTF8 UNICODE_CI collate can´t be used in foreing key constraint
 
  2008-07-16 13:55  asfernandes 
    M src/jrd/Optimizer.cpp
@@ -42497,7 +42572,7 @@
  2008-06-14 02:17  asfernandes 
    M doc/sql.extensions/README.similar_to.txt
    M src/jrd/SimilarToMatcher.h
-1) Fixed CORE-1935 ?\195?\162?\226?\130?\172?\226?\128?\156 SIMILAR TO character classes are incorrectly recognized.
+1) Fixed CORE-1935 – SIMILAR TO character classes are incorrectly recognized.
 2) Improve the documentation after some questions from Claudio.
 
  2008-06-13 14:01  dimitr 
@@ -54765,7 +54840,7 @@
 
  2007-05-09 15:23  asfernandes 
    M doc/sql.extensions/README.list
-Updated LIST documentation - thanks to Maycon Ferra?\195?\167a
+Updated LIST documentation - thanks to Maycon Ferraça
 
  2007-05-09 02:03  asfernandes 
    M src/burp/burp.cpp
@@ -56716,7 +56791,7 @@
 
  2007-03-22 13:07  asfernandes 
    M doc/sql.extensions/README.context_variables2
-Document the new context variable - thanks to Maicon Ferra?\195?\167a
+Document the new context variable - thanks to Maicon Ferraça
 
  2007-03-22 12:53  dimitr 
    M src/dsql/pass1.cpp
@@ -58393,7 +58468,7 @@
 
  2006-12-14 10:30  asfernandes 
    M doc/sql.extensions/README.returning
-Correction - thanks to Maycon Ferra?\195?\167a
+Correction - thanks to Maycon Ferraça
 
  2006-12-14 09:14  dimitr 
    A doc/README.monitoring_tables
@@ -59837,7 +59912,7 @@
 
  2006-10-10 03:53  asfernandes 
    M src/jrd/jrd.cpp
-Fix problem reported by Carsten Sch?\195?\164fer in fbdevel of incorrect server start when using connection pooling
+Fix problem reported by Carsten Schäfer in fbdevel of incorrect server start when using connection pooling
 
  2006-10-10 03:39  asfernandes 
    M src/jrd/os/posix/isc_ipc.cpp
@@ -60186,7 +60261,7 @@
 
  2006-09-13 12:59  asfernandes 
    M src/dsql/pass1.cpp
-Fix the problem with CAST and parameters reported by Maycon Ferra?\195?\167a in fb-devel
+Fix the problem with CAST and parameters reported by Maycon Ferraça in fb-devel
 
  2006-09-12 16:31  asfernandes 
    M src/jrd/opt.cpp
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2012-12-19 00:56:57 UTC (rev 57504)
+++ firebird/trunk/src/jrd/build_no.h	2012-12-19 08:25:58 UTC (rev 57505)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30166
+  FORMAL BUILD NUMBER:30173
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30166"
-#define FILE_VER_STRING "WI-T3.0.0.30166"
-#define LICENSE_VER_STRING "WI-T3.0.0.30166"
-#define FILE_VER_NUMBER 3, 0, 0, 30166
+#define PRODUCT_VER_STRING "3.0.0.30173"
+#define FILE_VER_STRING "WI-T3.0.0.30173"
+#define LICENSE_VER_STRING "WI-T3.0.0.30173"
+#define FILE_VER_NUMBER 3, 0, 0, 30173
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30166"
+#define FB_BUILD_NO "30173"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2012-12-19 00:56:57 UTC (rev 57504)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2012-12-19 08:25:58 UTC (rev 57505)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30166
+BuildNum=30173
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2012-12-20 03:25:44
       | 
| Revision: 57509
          http://sourceforge.net/p/firebird/code/57509
Author:   firebirds
Date:     2012-12-20 03:25:42 +0000 (Thu, 20 Dec 2012)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2012-12-19 13:51:48 UTC (rev 57508)
+++ firebird/trunk/ChangeLog	2012-12-20 03:25:42 UTC (rev 57509)
@@ -1,3 +1,7 @@
+ 2012-12-19 13:51  hvlad 
+   M src/jrd/cch.cpp
+Add lost PAGE_LOCK_RE_POST call.
+
  2012-12-19 00:56  asfernandes 
    M src/common/classes/locks.h
    M src/dsql/StmtNodes.cpp
@@ -215,7 +219,7 @@
  2012-12-06 14:51  hvlad 
    M src/jrd/cch.cpp
    M src/jrd/jrd.h
-Front ported fix for CORE-3034 (Bugcheсk 300 (can't find shared latch))
+Front ported fix for CORE-3034 (Bugche?\209?\129k 300 (can't find shared latch))
 
  2012-12-06 12:09  dimitr 
    M src/dsql/StmtNodes.cpp
@@ -3636,7 +3640,7 @@
    M src/qli/dtr.h
    M src/qli/meta.epp
    M src/qli/qliswi.h
-Stop db triggers in qli, from Herr Schlottmann-Gödde
+Stop db triggers in qli, from Herr Schlottmann-G?\195?\182dde
 
  2012-01-19 06:26  robocop 
    M src/remote/inet.cpp
@@ -3957,7 +3961,7 @@
  2011-12-30 14:38  asfernandes 
    M doc/sql.extensions/README.builtin_functions.txt
    M src/common/os/guid.h
-Make UUID_TO_CHAR2 returns lower-cased strings, as the RFC specifies·
+Make UUID_TO_CHAR2 returns lower-cased strings, as the RFC specifies?\194?\183
 
  2011-12-30 14:19  alexpeshkoff 
    M src/jrd/svc.cpp
@@ -6160,7 +6164,7 @@
  2011-06-03 19:12  asfernandes 
    M src/common/IntlUtil.cpp
    M src/common/IntlUtil.h
-Fixed CORE-3416 - Inserting Käse into a CHARACTER SET ASCII column succeeds.
+Fixed CORE-3416 - Inserting K?\195?\164se into a CHARACTER SET ASCII column succeeds.
 
  2011-06-03 17:39  asfernandes 
    M src/jrd/met.epp
@@ -39212,7 +39216,7 @@
  2008-11-29 18:47  asfernandes 
    M src/jrd/DataTypeUtil.cpp
    M src/jrd/DataTypeUtil.h
-Fixed CORE-2019 – UTF-8 conversion error (string truncation).
+Fixed CORE-2019 ?\195?\162?\226?\130?\172?\226?\128?\156 UTF-8 conversion error (string truncation).
 
  2008-11-28 18:49  alexpeshkoff 
    M src/common/classes/SafeArg.cpp
@@ -41564,7 +41568,7 @@
 
  2008-07-16 14:16  asfernandes 
    M src/jrd/idx.cpp
-Fixed CORE-1989 - UTF8 UNICODE_CI collate can´t be used in foreing key constraint
+Fixed CORE-1989 - UTF8 UNICODE_CI collate can?\194?\180t be used in foreing key constraint
 
  2008-07-16 13:55  asfernandes 
    M src/jrd/Optimizer.cpp
@@ -42572,7 +42576,7 @@
  2008-06-14 02:17  asfernandes 
    M doc/sql.extensions/README.similar_to.txt
    M src/jrd/SimilarToMatcher.h
-1) Fixed CORE-1935 – SIMILAR TO character classes are incorrectly recognized.
+1) Fixed CORE-1935 ?\195?\162?\226?\130?\172?\226?\128?\156 SIMILAR TO character classes are incorrectly recognized.
 2) Improve the documentation after some questions from Claudio.
 
  2008-06-13 14:01  dimitr 
@@ -54840,7 +54844,7 @@
 
  2007-05-09 15:23  asfernandes 
    M doc/sql.extensions/README.list
-Updated LIST documentation - thanks to Maycon Ferraça
+Updated LIST documentation - thanks to Maycon Ferra?\195?\167a
 
  2007-05-09 02:03  asfernandes 
    M src/burp/burp.cpp
@@ -56791,7 +56795,7 @@
 
  2007-03-22 13:07  asfernandes 
    M doc/sql.extensions/README.context_variables2
-Document the new context variable - thanks to Maicon Ferraça
+Document the new context variable - thanks to Maicon Ferra?\195?\167a
 
  2007-03-22 12:53  dimitr 
    M src/dsql/pass1.cpp
@@ -58468,7 +58472,7 @@
 
  2006-12-14 10:30  asfernandes 
    M doc/sql.extensions/README.returning
-Correction - thanks to Maycon Ferraça
+Correction - thanks to Maycon Ferra?\195?\167a
 
  2006-12-14 09:14  dimitr 
    A doc/README.monitoring_tables
@@ -59912,7 +59916,7 @@
 
  2006-10-10 03:53  asfernandes 
    M src/jrd/jrd.cpp
-Fix problem reported by Carsten Schäfer in fbdevel of incorrect server start when using connection pooling
+Fix problem reported by Carsten Sch?\195?\164fer in fbdevel of incorrect server start when using connection pooling
 
  2006-10-10 03:39  asfernandes 
    M src/jrd/os/posix/isc_ipc.cpp
@@ -60261,7 +60265,7 @@
 
  2006-09-13 12:59  asfernandes 
    M src/dsql/pass1.cpp
-Fix the problem with CAST and parameters reported by Maycon Ferraça in fb-devel
+Fix the problem with CAST and parameters reported by Maycon Ferra?\195?\167a in fb-devel
 
  2006-09-12 16:31  asfernandes 
    M src/jrd/opt.cpp
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2012-12-19 13:51:48 UTC (rev 57508)
+++ firebird/trunk/src/jrd/build_no.h	2012-12-20 03:25:42 UTC (rev 57509)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30173
+  FORMAL BUILD NUMBER:30174
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30173"
-#define FILE_VER_STRING "WI-T3.0.0.30173"
-#define LICENSE_VER_STRING "WI-T3.0.0.30173"
-#define FILE_VER_NUMBER 3, 0, 0, 30173
+#define PRODUCT_VER_STRING "3.0.0.30174"
+#define FILE_VER_STRING "WI-T3.0.0.30174"
+#define LICENSE_VER_STRING "WI-T3.0.0.30174"
+#define FILE_VER_NUMBER 3, 0, 0, 30174
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30173"
+#define FB_BUILD_NO "30174"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2012-12-19 13:51:48 UTC (rev 57508)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2012-12-20 03:25:42 UTC (rev 57509)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30173
+BuildNum=30174
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2012-12-21 03:24:38
       | 
| Revision: 57518
          http://sourceforge.net/p/firebird/code/57518
Author:   firebirds
Date:     2012-12-21 03:24:35 +0000 (Fri, 21 Dec 2012)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2012-12-21 01:49:16 UTC (rev 57517)
+++ firebird/trunk/ChangeLog	2012-12-21 03:24:35 UTC (rev 57518)
@@ -1,3 +1,31 @@
+ 2012-12-21 01:49  asfernandes 
+   M src/jrd/GlobalRWLock.cpp
+   M src/jrd/idx.cpp
+   M src/jrd/jrd.cpp
+   M src/jrd/jrd.h
+Misc.
+
+ 2012-12-20 15:27  alexpeshkoff 
+   M src/burp/burp.cpp
+Fixed CORE-3995: Slight problem with GBAK parameter checking
+
+ 2012-12-20 12:18  alexpeshkoff 
+   M src/jrd/Attachment.cpp
+   M src/jrd/Attachment.h
+   M src/jrd/Function.epp
+   M src/jrd/cch.cpp
+   M src/jrd/idx.cpp
+   M src/jrd/intl.cpp
+   M src/jrd/jrd.h
+   M src/jrd/met.epp
+   M src/jrd/pag.cpp
+   M src/jrd/tra.cpp
+Re-read attachment from lock after taking lock in attachment handler
+
+ 2012-12-20 10:42  hvlad 
+   M src/common/classes/Reasons.h
+VC10 still have no support for __func__
+
  2012-12-19 13:51  hvlad 
    M src/jrd/cch.cpp
 Add lost PAGE_LOCK_RE_POST call.
@@ -219,7 +247,7 @@
  2012-12-06 14:51  hvlad 
    M src/jrd/cch.cpp
    M src/jrd/jrd.h
-Front ported fix for CORE-3034 (Bugche?\209?\129k 300 (can't find shared latch))
+Front ported fix for CORE-3034 (Bugcheсk 300 (can't find shared latch))
 
  2012-12-06 12:09  dimitr 
    M src/dsql/StmtNodes.cpp
@@ -3640,7 +3668,7 @@
    M src/qli/dtr.h
    M src/qli/meta.epp
    M src/qli/qliswi.h
-Stop db triggers in qli, from Herr Schlottmann-G?\195?\182dde
+Stop db triggers in qli, from Herr Schlottmann-Gödde
 
  2012-01-19 06:26  robocop 
    M src/remote/inet.cpp
@@ -3961,7 +3989,7 @@
  2011-12-30 14:38  asfernandes 
    M doc/sql.extensions/README.builtin_functions.txt
    M src/common/os/guid.h
-Make UUID_TO_CHAR2 returns lower-cased strings, as the RFC specifies?\194?\183
+Make UUID_TO_CHAR2 returns lower-cased strings, as the RFC specifies·
 
  2011-12-30 14:19  alexpeshkoff 
    M src/jrd/svc.cpp
@@ -6164,7 +6192,7 @@
  2011-06-03 19:12  asfernandes 
    M src/common/IntlUtil.cpp
    M src/common/IntlUtil.h
-Fixed CORE-3416 - Inserting K?\195?\164se into a CHARACTER SET ASCII column succeeds.
+Fixed CORE-3416 - Inserting Käse into a CHARACTER SET ASCII column succeeds.
 
  2011-06-03 17:39  asfernandes 
    M src/jrd/met.epp
@@ -39216,7 +39244,7 @@
  2008-11-29 18:47  asfernandes 
    M src/jrd/DataTypeUtil.cpp
    M src/jrd/DataTypeUtil.h
-Fixed CORE-2019 ?\195?\162?\226?\130?\172?\226?\128?\156 UTF-8 conversion error (string truncation).
+Fixed CORE-2019 – UTF-8 conversion error (string truncation).
 
  2008-11-28 18:49  alexpeshkoff 
    M src/common/classes/SafeArg.cpp
@@ -41568,7 +41596,7 @@
 
  2008-07-16 14:16  asfernandes 
    M src/jrd/idx.cpp
-Fixed CORE-1989 - UTF8 UNICODE_CI collate can?\194?\180t be used in foreing key constraint
+Fixed CORE-1989 - UTF8 UNICODE_CI collate can´t be used in foreing key constraint
 
  2008-07-16 13:55  asfernandes 
    M src/jrd/Optimizer.cpp
@@ -42576,7 +42604,7 @@
  2008-06-14 02:17  asfernandes 
    M doc/sql.extensions/README.similar_to.txt
    M src/jrd/SimilarToMatcher.h
-1) Fixed CORE-1935 ?\195?\162?\226?\130?\172?\226?\128?\156 SIMILAR TO character classes are incorrectly recognized.
+1) Fixed CORE-1935 – SIMILAR TO character classes are incorrectly recognized.
 2) Improve the documentation after some questions from Claudio.
 
  2008-06-13 14:01  dimitr 
@@ -54844,7 +54872,7 @@
 
  2007-05-09 15:23  asfernandes 
    M doc/sql.extensions/README.list
-Updated LIST documentation - thanks to Maycon Ferra?\195?\167a
+Updated LIST documentation - thanks to Maycon Ferraça
 
  2007-05-09 02:03  asfernandes 
    M src/burp/burp.cpp
@@ -56795,7 +56823,7 @@
 
  2007-03-22 13:07  asfernandes 
    M doc/sql.extensions/README.context_variables2
-Document the new context variable - thanks to Maicon Ferra?\195?\167a
+Document the new context variable - thanks to Maicon Ferraça
 
  2007-03-22 12:53  dimitr 
    M src/dsql/pass1.cpp
@@ -58472,7 +58500,7 @@
 
  2006-12-14 10:30  asfernandes 
    M doc/sql.extensions/README.returning
-Correction - thanks to Maycon Ferra?\195?\167a
+Correction - thanks to Maycon Ferraça
 
  2006-12-14 09:14  dimitr 
    A doc/README.monitoring_tables
@@ -59916,7 +59944,7 @@
 
  2006-10-10 03:53  asfernandes 
    M src/jrd/jrd.cpp
-Fix problem reported by Carsten Sch?\195?\164fer in fbdevel of incorrect server start when using connection pooling
+Fix problem reported by Carsten Schäfer in fbdevel of incorrect server start when using connection pooling
 
  2006-10-10 03:39  asfernandes 
    M src/jrd/os/posix/isc_ipc.cpp
@@ -60265,7 +60293,7 @@
 
  2006-09-13 12:59  asfernandes 
    M src/dsql/pass1.cpp
-Fix the problem with CAST and parameters reported by Maycon Ferra?\195?\167a in fb-devel
+Fix the problem with CAST and parameters reported by Maycon Ferraça in fb-devel
 
  2006-09-12 16:31  asfernandes 
    M src/jrd/opt.cpp
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2012-12-21 01:49:16 UTC (rev 57517)
+++ firebird/trunk/src/jrd/build_no.h	2012-12-21 03:24:35 UTC (rev 57518)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30174
+  FORMAL BUILD NUMBER:30178
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30174"
-#define FILE_VER_STRING "WI-T3.0.0.30174"
-#define LICENSE_VER_STRING "WI-T3.0.0.30174"
-#define FILE_VER_NUMBER 3, 0, 0, 30174
+#define PRODUCT_VER_STRING "3.0.0.30178"
+#define FILE_VER_STRING "WI-T3.0.0.30178"
+#define LICENSE_VER_STRING "WI-T3.0.0.30178"
+#define FILE_VER_NUMBER 3, 0, 0, 30178
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30174"
+#define FB_BUILD_NO "30178"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2012-12-21 01:49:16 UTC (rev 57517)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2012-12-21 03:24:35 UTC (rev 57518)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30174
+BuildNum=30178
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2012-12-22 03:15:56
       | 
| Revision: 57524
          http://sourceforge.net/p/firebird/code/57524
Author:   firebirds
Date:     2012-12-22 03:15:52 +0000 (Sat, 22 Dec 2012)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2012-12-21 14:11:45 UTC (rev 57523)
+++ firebird/trunk/ChangeLog	2012-12-22 03:15:52 UTC (rev 57524)
@@ -1,3 +1,11 @@
+ 2012-12-21 14:11  dimitr 
+   M src/jrd/cch.cpp
+Front ported to trunk.
+
+ 2012-12-21 10:11  dimitr 
+   M src/jrd/exe.cpp
+Front ported to trunk.
+
  2012-12-21 01:49  asfernandes 
    M src/jrd/GlobalRWLock.cpp
    M src/jrd/idx.cpp
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2012-12-21 14:11:45 UTC (rev 57523)
+++ firebird/trunk/src/jrd/build_no.h	2012-12-22 03:15:52 UTC (rev 57524)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30178
+  FORMAL BUILD NUMBER:30180
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30178"
-#define FILE_VER_STRING "WI-T3.0.0.30178"
-#define LICENSE_VER_STRING "WI-T3.0.0.30178"
-#define FILE_VER_NUMBER 3, 0, 0, 30178
+#define PRODUCT_VER_STRING "3.0.0.30180"
+#define FILE_VER_STRING "WI-T3.0.0.30180"
+#define LICENSE_VER_STRING "WI-T3.0.0.30180"
+#define FILE_VER_NUMBER 3, 0, 0, 30180
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30178"
+#define FB_BUILD_NO "30180"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2012-12-21 14:11:45 UTC (rev 57523)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2012-12-22 03:15:52 UTC (rev 57524)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30178
+BuildNum=30180
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2012-12-24 03:23:23
       | 
| Revision: 57537
          http://sourceforge.net/p/firebird/code/57537
Author:   firebirds
Date:     2012-12-24 03:23:20 +0000 (Mon, 24 Dec 2012)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2012-12-23 15:11:03 UTC (rev 57536)
+++ firebird/trunk/ChangeLog	2012-12-24 03:23:20 UTC (rev 57537)
@@ -1,3 +1,15 @@
+ 2012-12-23 07:10  dimitr 
+   M src/jrd/Attachment.cpp
+   M src/jrd/Attachment.h
+   M src/jrd/VirtualTable.cpp
+   M src/jrd/exe.cpp
+   M src/jrd/jrd.cpp
+   M src/jrd/pag.cpp
+   M src/jrd/shut.cpp
+   M src/jrd/tra.cpp
+   M src/jrd/tra.h
+Front ported my yesterday's commits to trunk.
+
  2012-12-21 14:11  dimitr 
    M src/jrd/cch.cpp
 Front ported to trunk.
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2012-12-23 15:11:03 UTC (rev 57536)
+++ firebird/trunk/src/jrd/build_no.h	2012-12-24 03:23:20 UTC (rev 57537)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30180
+  FORMAL BUILD NUMBER:30181
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30180"
-#define FILE_VER_STRING "WI-T3.0.0.30180"
-#define LICENSE_VER_STRING "WI-T3.0.0.30180"
-#define FILE_VER_NUMBER 3, 0, 0, 30180
+#define PRODUCT_VER_STRING "3.0.0.30181"
+#define FILE_VER_STRING "WI-T3.0.0.30181"
+#define LICENSE_VER_STRING "WI-T3.0.0.30181"
+#define FILE_VER_NUMBER 3, 0, 0, 30181
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30180"
+#define FB_BUILD_NO "30181"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2012-12-23 15:11:03 UTC (rev 57536)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2012-12-24 03:23:20 UTC (rev 57537)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30180
+BuildNum=30181
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2012-12-26 03:18:44
       | 
| Revision: 57550
          http://sourceforge.net/p/firebird/code/57550
Author:   firebirds
Date:     2012-12-26 03:18:40 +0000 (Wed, 26 Dec 2012)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2012-12-25 17:34:50 UTC (rev 57549)
+++ firebird/trunk/ChangeLog	2012-12-26 03:18:40 UTC (rev 57550)
@@ -1,3 +1,26 @@
+ 2012-12-25 17:34  asfernandes 
+   M src/dsql/DdlNodes.epp
+   M src/dsql/DdlNodes.h
+   M src/dsql/DsqlCompilerScratch.h
+   M src/dsql/ExprNodes.cpp
+   M src/dsql/ExprNodes.h
+   M src/dsql/Parser.cpp
+   M src/dsql/Parser.h
+   M src/dsql/StmtNodes.cpp
+   M src/dsql/dsql.cpp
+   M src/dsql/dsql.h
+   M src/dsql/make.cpp
+   M src/dsql/make_proto.h
+   M src/dsql/metd_proto.h
+   M src/dsql/parse.y
+   M src/dsql/pass1.cpp
+   M src/jrd/extds/ExtDS.cpp
+   M src/jrd/extds/ExtDS.h
+   M src/jrd/extds/IscDS.cpp
+   M src/jrd/extds/IscDS.h
+   M src/yvalve/keywords.cpp
+Get rid of dsql_str and fix metadata strings.
+
  2012-12-23 07:10  dimitr 
    M src/jrd/Attachment.cpp
    M src/jrd/Attachment.h
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2012-12-25 17:34:50 UTC (rev 57549)
+++ firebird/trunk/src/jrd/build_no.h	2012-12-26 03:18:40 UTC (rev 57550)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30181
+  FORMAL BUILD NUMBER:30182
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30181"
-#define FILE_VER_STRING "WI-T3.0.0.30181"
-#define LICENSE_VER_STRING "WI-T3.0.0.30181"
-#define FILE_VER_NUMBER 3, 0, 0, 30181
+#define PRODUCT_VER_STRING "3.0.0.30182"
+#define FILE_VER_STRING "WI-T3.0.0.30182"
+#define LICENSE_VER_STRING "WI-T3.0.0.30182"
+#define FILE_VER_NUMBER 3, 0, 0, 30182
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30181"
+#define FB_BUILD_NO "30182"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2012-12-25 17:34:50 UTC (rev 57549)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2012-12-26 03:18:40 UTC (rev 57550)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30181
+BuildNum=30182
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2012-12-30 03:21:21
       | 
| Revision: 57568
          http://sourceforge.net/p/firebird/code/57568
Author:   firebirds
Date:     2012-12-30 03:21:19 +0000 (Sun, 30 Dec 2012)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2012-12-29 13:48:49 UTC (rev 57567)
+++ firebird/trunk/ChangeLog	2012-12-30 03:21:19 UTC (rev 57568)
@@ -1,3 +1,19 @@
+ 2012-12-29 13:48  alexpeshkoff 
+   M src/jrd/Attachment.cpp
+   M src/jrd/Attachment.h
+   M src/jrd/jrd.h
+   M src/jrd/lck.cpp
+   M src/jrd/lck.h
+Avoid races with lck_attachment in AST
+
+ 2012-12-29 11:15  alexpeshkoff 
+   M src/auth/SecurityDatabase/LegacyManagement.epp
+Fixed CORE-3932: can create but cant delete user with username containing double quotes with gsec
+
+ 2012-12-29 10:53  alexpeshkoff 
+   M src/utilities/gsec/gsec.cpp
+Make gsec take into an account settings from firebird.conf
+
  2012-12-25 17:34  asfernandes 
    M src/dsql/DdlNodes.epp
    M src/dsql/DdlNodes.h
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2012-12-29 13:48:49 UTC (rev 57567)
+++ firebird/trunk/src/jrd/build_no.h	2012-12-30 03:21:19 UTC (rev 57568)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30182
+  FORMAL BUILD NUMBER:30185
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30182"
-#define FILE_VER_STRING "WI-T3.0.0.30182"
-#define LICENSE_VER_STRING "WI-T3.0.0.30182"
-#define FILE_VER_NUMBER 3, 0, 0, 30182
+#define PRODUCT_VER_STRING "3.0.0.30185"
+#define FILE_VER_STRING "WI-T3.0.0.30185"
+#define LICENSE_VER_STRING "WI-T3.0.0.30185"
+#define FILE_VER_NUMBER 3, 0, 0, 30185
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30182"
+#define FB_BUILD_NO "30185"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2012-12-29 13:48:49 UTC (rev 57567)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2012-12-30 03:21:19 UTC (rev 57568)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30182
+BuildNum=30185
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2013-01-07 03:25:04
       | 
| Revision: 57583
          http://sourceforge.net/p/firebird/code/57583
Author:   firebirds
Date:     2013-01-07 03:25:01 +0000 (Mon, 07 Jan 2013)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2013-01-07 01:15:24 UTC (rev 57582)
+++ firebird/trunk/ChangeLog	2013-01-07 03:25:01 UTC (rev 57583)
@@ -1,3 +1,9 @@
+ 2013-01-07 01:15  asfernandes 
+   M src/jrd/cch.cpp
+   M src/jrd/jrd.cpp
+   M src/jrd/jrd.h
+Misc.
+
  2012-12-29 13:48  alexpeshkoff 
    M src/jrd/Attachment.cpp
    M src/jrd/Attachment.h
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2013-01-07 01:15:24 UTC (rev 57582)
+++ firebird/trunk/src/jrd/build_no.h	2013-01-07 03:25:01 UTC (rev 57583)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30185
+  FORMAL BUILD NUMBER:30186
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30185"
-#define FILE_VER_STRING "WI-T3.0.0.30185"
-#define LICENSE_VER_STRING "WI-T3.0.0.30185"
-#define FILE_VER_NUMBER 3, 0, 0, 30185
+#define PRODUCT_VER_STRING "3.0.0.30186"
+#define FILE_VER_STRING "WI-T3.0.0.30186"
+#define LICENSE_VER_STRING "WI-T3.0.0.30186"
+#define FILE_VER_NUMBER 3, 0, 0, 30186
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30185"
+#define FB_BUILD_NO "30186"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2013-01-07 01:15:24 UTC (rev 57582)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2013-01-07 03:25:01 UTC (rev 57583)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30185
+BuildNum=30186
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2013-01-09 03:48:09
       | 
| Revision: 57591
          http://sourceforge.net/p/firebird/code/57591
Author:   firebirds
Date:     2013-01-09 03:48:04 +0000 (Wed, 09 Jan 2013)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2013-01-08 16:03:41 UTC (rev 57590)
+++ firebird/trunk/ChangeLog	2013-01-09 03:48:04 UTC (rev 57591)
@@ -1,3 +1,27 @@
+ 2013-01-08 16:03  alexpeshkoff 
+   M src/gpre/languages/cob.cpp
+warnings
+
+ 2013-01-08 15:47  alexpeshkoff 
+   A src/misc/checkIface
+Script to check correctness of FB_XX_VERSION constants in h-files
+
+ 2013-01-08 15:23  alexpeshkoff 
+   M src/misc/src_bundle.sh
+misc
+
+ 2013-01-08 15:03  alexpeshkoff 
+   M src/include/firebird/ExternalEngine.h
+misc
+
+ 2013-01-08 10:53  alexpeshkoff 
+   M src/alice/tdr.cpp
+Frontported postfix for CORE-3612 - send errors to stderr
+
+ 2013-01-08 10:51  alexpeshkoff 
+   M src/jrd/vio.cpp
+comment
+
  2013-01-07 01:15  asfernandes 
    M src/jrd/cch.cpp
    M src/jrd/jrd.cpp
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2013-01-08 16:03:41 UTC (rev 57590)
+++ firebird/trunk/src/jrd/build_no.h	2013-01-09 03:48:04 UTC (rev 57591)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30186
+  FORMAL BUILD NUMBER:30192
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30186"
-#define FILE_VER_STRING "WI-T3.0.0.30186"
-#define LICENSE_VER_STRING "WI-T3.0.0.30186"
-#define FILE_VER_NUMBER 3, 0, 0, 30186
+#define PRODUCT_VER_STRING "3.0.0.30192"
+#define FILE_VER_STRING "WI-T3.0.0.30192"
+#define LICENSE_VER_STRING "WI-T3.0.0.30192"
+#define FILE_VER_NUMBER 3, 0, 0, 30192
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30186"
+#define FB_BUILD_NO "30192"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2013-01-08 16:03:41 UTC (rev 57590)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2013-01-09 03:48:04 UTC (rev 57591)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30186
+BuildNum=30192
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <ale...@us...> - 2013-01-10 07:04:46
       | 
| Revision: 57504
          http://firebird.svn.sourceforge.net/firebird/?rev=57504&view=rev
Author:   alexpeshkoff
Date:     2013-01-10 07:04:40 +0000 (Thu, 10 Jan 2013)
Log Message:
-----------
Closed posix build
Modified Paths:
--------------
    firebird/trunk/Makefile.in
    firebird/trunk/autogen.sh
Modified: firebird/trunk/Makefile.in
===================================================================
--- firebird/trunk/Makefile.in	2013-01-04 07:51:17 UTC (rev 57503)
+++ firebird/trunk/Makefile.in	2013-01-10 07:04:40 UTC (rev 57504)
@@ -1,6 +1,3 @@
-@SET_MAKE@
-
-all: firebird
-
-.DEFAULT:
-	$(MAKE) -C gen $@
+all:
+	@echo "Please use 'svn checkout svn://svn.code.sf.net/p/firebird/code/firebird/trunk' to get fresh source code"
+	@exit 1
Modified: firebird/trunk/autogen.sh
===================================================================
--- firebird/trunk/autogen.sh	2013-01-04 07:51:17 UTC (rev 57503)
+++ firebird/trunk/autogen.sh	2013-01-10 07:04:40 UTC (rev 57504)
@@ -1,93 +1,4 @@
 #!/bin/sh
-#
-# Run this to generate all the initial makefiles, etc.
-#
 
-PKG_NAME=Firebird3
-SRCDIR=`dirname $0`
-DIE=0
-
-if [ -z "$AUTORECONF" ]
-then
-  AUTORECONF=autoreconf
-fi
-
-echo "AUTORECONF="$AUTORECONF
-
-# This prevents calling automake in old autotools
-AUTOMAKE=true
-export AUTOMAKE
-
-# This helps some old aclocal versions find binreloc.m4 in current directory
-ACLOCAL='aclocal -I .'
-export ACLOCAL
-
-VER=`$AUTORECONF --version|grep '^[Aa]utoreconf'|sed 's/^[^0-9]*//'`
-case "$VER" in
- 0* | 1\.* | 2\.[0-9] | 2\.[0-9][a-z]* | \
- 2\.[1-5][0-9] | 2\.[1-5][0-9][a-z]* | 2\.6[0-2] | 2\.6[0-2][a-z]* )
-  echo
-  echo "**Error**: You must have autoconf 2.63 or later installed."
-  echo "Download the appropriate package for your distribution/OS,"
-  echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/autoconf/"
-  DIE=1
-  ;;
-esac
-
-# Put other tests for programs here!
-
-# If anything failed, exit now.
-if test "$DIE" -eq 1; then
-  exit 1
-fi
-
-# Give a warning if no arguments to 'configure' have been supplied.
-if test -z "$*" -a x$NOCONFIGURE = x; then
-  echo "**Warning**: I am going to run \`configure' with no arguments."
-  echo "If you wish to pass any to it, please specify them on the"
-  echo \`$0\'" command line."
-  echo
-fi
-
-# Some versions of autotools need it
-if [ ! -d m4 ]; then
-	rm -rf m4
-	mkdir m4
-fi
-
-# Ensure correct utilities are called by AUTORECONF
-autopath=`dirname $AUTORECONF`
-if [ "x$autopath" != "x" ]; then
-	PATH=$autopath:$PATH
-	export PATH
-fi
-
-echo "Running autoreconf ..."
-$AUTORECONF --install --force --verbose || exit 1
-
-# Hack to bypass bug in autoreconf - --install switch not passed to libtoolize,
-# therefore missing config.sub and confg.guess files
-CONFIG_AUX_DIR=builds/make.new/config
-if [ ! -f $CONFIG_AUX_DIR/config.sub -o ! -f $CONFIG_AUX_DIR/config.guess ]; then
-	# re-run libtoolize with --install switch, if it does not understand that switch
-	# and there are no config.sub/guess files in CONFIG_AUX_DIR, we will anyway fail
-	echo "Re-running libtoolize ..."
-	if [ -z "$LIBTOOLIZE" ]; then
-		LIBTOOLIZE=libtoolize
-	fi
-	$LIBTOOLIZE --install --copy --force || exit 1
-fi
-
-# If NOCONFIGURE is set, skip the call to configure
-if test "x$NOCONFIGURE" = "x"; then
-  conf_flags="$conf_flags --enable-binreloc"
-  echo Running $SRCDIR/configure $conf_flags "$@" ...
-  rm -f config.cache config.log
-  chmod a+x $SRCDIR/configure
-  $SRCDIR/configure $conf_flags "$@" \
-  && echo Now type \`make\' to compile $PKG_NAME
-else
-  echo Autogen skipping configure process.
-fi
-
-# EOF
+echo "Please use 'svn checkout svn://svn.code.sf.net/p/firebird/code/firebird/trunk' to get fresh source code"
+exit 1
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2013-01-16 03:23:27
       | 
| Revision: 57599
          http://sourceforge.net/p/firebird/code/57599
Author:   firebirds
Date:     2013-01-16 03:23:24 +0000 (Wed, 16 Jan 2013)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2013-01-15 11:39:41 UTC (rev 57598)
+++ firebird/trunk/ChangeLog	2013-01-16 03:23:24 UTC (rev 57599)
@@ -1,3 +1,7 @@
+ 2013-01-15 11:39  alexpeshkoff 
+   M src/common/unicode_util.cpp
+warning
+
  2013-01-08 16:03  alexpeshkoff 
    M src/gpre/languages/cob.cpp
 warnings
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2013-01-15 11:39:41 UTC (rev 57598)
+++ firebird/trunk/src/jrd/build_no.h	2013-01-16 03:23:24 UTC (rev 57599)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30192
+  FORMAL BUILD NUMBER:30193
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30192"
-#define FILE_VER_STRING "WI-T3.0.0.30192"
-#define LICENSE_VER_STRING "WI-T3.0.0.30192"
-#define FILE_VER_NUMBER 3, 0, 0, 30192
+#define PRODUCT_VER_STRING "3.0.0.30193"
+#define FILE_VER_STRING "WI-T3.0.0.30193"
+#define LICENSE_VER_STRING "WI-T3.0.0.30193"
+#define FILE_VER_NUMBER 3, 0, 0, 30193
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30192"
+#define FB_BUILD_NO "30193"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2013-01-15 11:39:41 UTC (rev 57598)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2013-01-16 03:23:24 UTC (rev 57599)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30192
+BuildNum=30193
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2013-01-17 03:36:07
       | 
| Revision: 57602
          http://sourceforge.net/p/firebird/code/57602
Author:   firebirds
Date:     2013-01-17 03:36:03 +0000 (Thu, 17 Jan 2013)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2013-01-16 17:08:08 UTC (rev 57601)
+++ firebird/trunk/ChangeLog	2013-01-17 03:36:03 UTC (rev 57602)
@@ -1,3 +1,7 @@
+ 2013-01-16 17:08  dimitr 
+   M src/jrd/btr.cpp
+Simplest fix for CORE-4038: Broken optimization for the stored dbkeys.
+
  2013-01-15 11:39  alexpeshkoff 
    M src/common/unicode_util.cpp
 warning
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2013-01-16 17:08:08 UTC (rev 57601)
+++ firebird/trunk/src/jrd/build_no.h	2013-01-17 03:36:03 UTC (rev 57602)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30193
+  FORMAL BUILD NUMBER:30194
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30193"
-#define FILE_VER_STRING "WI-T3.0.0.30193"
-#define LICENSE_VER_STRING "WI-T3.0.0.30193"
-#define FILE_VER_NUMBER 3, 0, 0, 30193
+#define PRODUCT_VER_STRING "3.0.0.30194"
+#define FILE_VER_STRING "WI-T3.0.0.30194"
+#define LICENSE_VER_STRING "WI-T3.0.0.30194"
+#define FILE_VER_NUMBER 3, 0, 0, 30194
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30193"
+#define FB_BUILD_NO "30194"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2013-01-16 17:08:08 UTC (rev 57601)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2013-01-17 03:36:03 UTC (rev 57602)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30193
+BuildNum=30194
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2013-01-21 03:32:15
       | 
| Revision: 57614
          http://sourceforge.net/p/firebird/code/57614
Author:   firebirds
Date:     2013-01-21 03:32:12 +0000 (Mon, 21 Jan 2013)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2013-01-20 19:55:52 UTC (rev 57613)
+++ firebird/trunk/ChangeLog	2013-01-21 03:32:12 UTC (rev 57614)
@@ -1,3 +1,11 @@
+ 2013-01-20 19:55  asfernandes 
+   M src/dsql/ddl.cpp
+Fixed truncated error message for wrong CREATE COLLATION.
+
+ 2013-01-20 15:11  asfernandes 
+   M src/dsql/DdlNodes.epp
+Fixed a problem with CREATE COLLATION.
+
  2013-01-16 17:08  dimitr 
    M src/jrd/btr.cpp
 Simplest fix for CORE-4038: Broken optimization for the stored dbkeys.
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2013-01-20 19:55:52 UTC (rev 57613)
+++ firebird/trunk/src/jrd/build_no.h	2013-01-21 03:32:12 UTC (rev 57614)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30194
+  FORMAL BUILD NUMBER:30196
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30194"
-#define FILE_VER_STRING "WI-T3.0.0.30194"
-#define LICENSE_VER_STRING "WI-T3.0.0.30194"
-#define FILE_VER_NUMBER 3, 0, 0, 30194
+#define PRODUCT_VER_STRING "3.0.0.30196"
+#define FILE_VER_STRING "WI-T3.0.0.30196"
+#define LICENSE_VER_STRING "WI-T3.0.0.30196"
+#define FILE_VER_NUMBER 3, 0, 0, 30196
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30194"
+#define FB_BUILD_NO "30196"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2013-01-20 19:55:52 UTC (rev 57613)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2013-01-21 03:32:12 UTC (rev 57614)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30194
+BuildNum=30196
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2013-01-25 06:06:37
       | 
| Revision: 57621
          http://sourceforge.net/p/firebird/code/57621
Author:   firebirds
Date:     2013-01-25 06:06:33 +0000 (Fri, 25 Jan 2013)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2013-01-24 16:52:13 UTC (rev 57620)
+++ firebird/trunk/ChangeLog	2013-01-25 06:06:33 UTC (rev 57621)
@@ -1,3 +1,15 @@
+ 2013-01-24 16:52  dimitr 
+   M src/dsql/dsql.cpp
+Slightly improved the condition for the Adriano's backward compatibility workaround, this optimizes METD_move() into a plain memcpy() for strings with an explicitly declared charset.
+
+ 2013-01-24 09:30  dimitr 
+   M src/common/cvt.cpp
+This trivial optimization saves a few percents of performance when reading/writing DBKEYs from/to compatible local variables.
+
+ 2013-01-24 07:05  dimitr 
+   M src/dsql/StmtNodes.cpp
+Misc adjustments.
+
  2013-01-20 19:55  asfernandes 
    M src/dsql/ddl.cpp
 Fixed truncated error message for wrong CREATE COLLATION.
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2013-01-24 16:52:13 UTC (rev 57620)
+++ firebird/trunk/src/jrd/build_no.h	2013-01-25 06:06:33 UTC (rev 57621)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30196
+  FORMAL BUILD NUMBER:30199
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30196"
-#define FILE_VER_STRING "WI-T3.0.0.30196"
-#define LICENSE_VER_STRING "WI-T3.0.0.30196"
-#define FILE_VER_NUMBER 3, 0, 0, 30196
+#define PRODUCT_VER_STRING "3.0.0.30199"
+#define FILE_VER_STRING "WI-T3.0.0.30199"
+#define LICENSE_VER_STRING "WI-T3.0.0.30199"
+#define FILE_VER_NUMBER 3, 0, 0, 30199
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30196"
+#define FB_BUILD_NO "30199"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2013-01-24 16:52:13 UTC (rev 57620)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2013-01-25 06:06:33 UTC (rev 57621)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30196
+BuildNum=30199
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2013-01-26 05:56:56
       | 
| Revision: 57627
          http://sourceforge.net/p/firebird/code/57627
Author:   firebirds
Date:     2013-01-26 05:56:52 +0000 (Sat, 26 Jan 2013)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2013-01-25 13:01:19 UTC (rev 57626)
+++ firebird/trunk/ChangeLog	2013-01-26 05:56:52 UTC (rev 57627)
@@ -1,3 +1,29 @@
+ 2013-01-25 13:01  dimitr 
+   M src/jrd/extds/ExtDS.cpp
+   M src/jrd/extds/ExtDS.h
+   M src/jrd/extds/InternalDS.cpp
+Slightly optimized fetches for internal EXECUTE STATEMENT.
+
+ 2013-01-25 12:34  dimitr 
+   M src/jrd/exe.cpp
+Misc.
+
+ 2013-01-25 12:34  dimitr 
+   M src/dsql/BlrWriter.cpp
+   M src/dsql/BlrWriter.h
+   M src/dsql/Nodes.h
+   M src/dsql/Parser.h
+   M src/dsql/StmtNodes.h
+   M src/dsql/dsql.cpp
+   M src/jrd/DebugInterface.cpp
+   M src/jrd/DebugInterface.h
+   M src/jrd/filters.cpp
+   M src/jrd/met.epp
+   M src/jrd/met_proto.h
+   M src/jrd/par.cpp
+   M src/jrd/req.h
+More work towards unlimited SQL/BLR lengths.
+
  2013-01-24 16:52  dimitr 
    M src/dsql/dsql.cpp
 Slightly improved the condition for the Adriano's backward compatibility workaround, this optimizes METD_move() into a plain memcpy() for strings with an explicitly declared charset.
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2013-01-25 13:01:19 UTC (rev 57626)
+++ firebird/trunk/src/jrd/build_no.h	2013-01-26 05:56:52 UTC (rev 57627)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30199
+  FORMAL BUILD NUMBER:30202
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30199"
-#define FILE_VER_STRING "WI-T3.0.0.30199"
-#define LICENSE_VER_STRING "WI-T3.0.0.30199"
-#define FILE_VER_NUMBER 3, 0, 0, 30199
+#define PRODUCT_VER_STRING "3.0.0.30202"
+#define FILE_VER_STRING "WI-T3.0.0.30202"
+#define LICENSE_VER_STRING "WI-T3.0.0.30202"
+#define FILE_VER_NUMBER 3, 0, 0, 30202
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30199"
+#define FB_BUILD_NO "30202"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2013-01-25 13:01:19 UTC (rev 57626)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2013-01-26 05:56:52 UTC (rev 57627)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30199
+BuildNum=30202
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <asf...@us...> - 2013-01-29 01:21:36
       | 
| Revision: 57629
          http://sourceforge.net/p/firebird/code/57629
Author:   asfernandes
Date:     2013-01-29 01:21:32 +0000 (Tue, 29 Jan 2013)
Log Message:
-----------
Migrate external triggers to the new message-based style.
Modified Paths:
--------------
    firebird/trunk/examples/udr/UdrCppExample.cpp
    firebird/trunk/lang_helpers/gds_codes.ftn
    firebird/trunk/lang_helpers/gds_codes.pas
    firebird/trunk/src/dsql/ExprNodes.cpp
    firebird/trunk/src/include/firebird/ExternalEngine.h
    firebird/trunk/src/include/firebird/Message.h
    firebird/trunk/src/include/firebird/UdrCppEngine.h
    firebird/trunk/src/include/firebird/UdrEngine.h
    firebird/trunk/src/include/gen/codetext.h
    firebird/trunk/src/include/gen/iberror.h
    firebird/trunk/src/include/gen/msgs.h
    firebird/trunk/src/include/gen/sql_code.h
    firebird/trunk/src/include/gen/sql_state.h
    firebird/trunk/src/jrd/ExtEngineManager.cpp
    firebird/trunk/src/jrd/ExtEngineManager.h
    firebird/trunk/src/jrd/Function.epp
    firebird/trunk/src/jrd/dfw.epp
    firebird/trunk/src/jrd/jrd.cpp
    firebird/trunk/src/jrd/met.epp
    firebird/trunk/src/jrd/met_proto.h
    firebird/trunk/src/msgs/facilities2.sql
    firebird/trunk/src/msgs/messages2.sql
    firebird/trunk/src/msgs/system_errors2.sql
    firebird/trunk/src/plugins/udr_engine/UdrEngine.cpp
Modified: firebird/trunk/examples/udr/UdrCppExample.cpp
===================================================================
--- firebird/trunk/examples/udr/UdrCppExample.cpp	2013-01-26 08:38:50 UTC (rev 57628)
+++ firebird/trunk/examples/udr/UdrCppExample.cpp	2013-01-29 01:21:32 UTC (rev 57629)
@@ -662,7 +662,7 @@
 FB_UDR_BEGIN_PROCEDURE(gen_rows)
 	FB_UDR_EXECUTE_DYNAMIC_PROCEDURE
 	{
-		MessageImpl inMessage(2, inMsg);
+		MessageImpl inMessage(2, in);
 		ParamDesc<ISC_LONG> startDesc(inMessage);
 		ParamDesc<ISC_LONG> endDesc(inMessage);
 
@@ -795,7 +795,6 @@
 FB_UDR_END_PROCEDURE
 
 
-//// TODO: Rework triggers.
 /***
 Sample usage:
 
@@ -828,6 +827,11 @@
     after insert on persons
     external name 'udrcpp_example!replicate!ds1'
     engine udr;
+
+create trigger persons_replicate2
+    after insert on persons
+    external name 'udrcpp_example!replicate_persons!ds1'
+    engine udr;
 ***/
 FB_UDR_BEGIN_TRIGGER(replicate)
 	FB_UDR_TRIGGER(replicate)()
@@ -863,7 +867,7 @@
 		unsigned fieldsCount = fields->getCount(status);
 		ThrowError::check(status->get());
 
-		MessageImpl message(fieldsCount, newMsg);
+		MessageImpl message(fieldsCount, newFields);
 
 		ISC_STATUS_ARRAY statusVector = {0};
 		isc_db_handle dbHandle = getIscDbHandle(context);
@@ -905,11 +909,11 @@
 		const char* table = metadata->getTriggerTable(status);
 		ThrowError::check(status->get());
 
-		// Skip the first exclamation point, separing the module name and entry point.
+		// Skip the first exclamation point, separating the module name and entry point.
 		const char* info = strchr(metadata->getEntryPoint(status), '!');
 		ThrowError::check(status->get());
 
-		// Skip the second exclamation point, separing the entry point and the misc info (config).
+		// Skip the second exclamation point, separating the entry point and the misc info (config).
 		if (info)
 			info = strchr(info + 1, '!');
 
@@ -1046,7 +1050,7 @@
 					break;
 
 				case SQL_FLOAT:
-					var->sqltype = SQL_DOUBLE | (var->sqltype & 1);
+					var->sqltype = SQL_DOUBLE;
 					var->sqllen = sizeof(double);
 					// fall into
 
@@ -1069,8 +1073,7 @@
 			}
 
 			var->sqltype |= 1;
-			var->sqlind = new short;
-			*reinterpret_cast<short*>(var->sqlind) = -1;
+			var->sqlind = new short(-1);
 		}
 
 		delete [] outSqlDa->sqlvar[0].sqldata;
@@ -1083,3 +1086,151 @@
 	XSQLDA* inSqlDa;
 	isc_stmt_handle stmtHandle;
 FB_UDR_END_TRIGGER
+
+
+FB_UDR_BEGIN_TRIGGER(replicate_persons)
+	FB_UDR_TRIGGER(replicate_persons)()
+		: initialized(false)
+	{
+	}
+
+	~FB_UDR_TRIGGER(replicate_persons)()
+	{
+		if (!initialized)
+			return;
+
+		delete [] reinterpret_cast<char*>(inSqlDa);
+
+		ISC_STATUS_ARRAY statusVector = {0};
+		isc_dsql_free_statement(statusVector, &stmtHandle, DSQL_drop);
+	}
+
+	FB_UDR_EXECUTE_MESSAGE_TRIGGER(
+		(FB_INTEGER, id, "ID")
+		(FB_VARCHAR(60 * 4), address, "ADDRESS")
+		(FB_VARCHAR(60 * 4), name, "NAME")
+		(FB_BLOB, info, "INFO")
+	)
+	{
+		inSqlDa->sqlvar[0].sqldata = reinterpret_cast<char*>(&newFields->id);
+		inSqlDa->sqlvar[0].sqlind = &newFields->idNull;
+
+		inSqlDa->sqlvar[1].sqldata = reinterpret_cast<char*>(&newFields->name.length);
+		inSqlDa->sqlvar[1].sqlind = &newFields->nameNull;
+
+		inSqlDa->sqlvar[2].sqldata = reinterpret_cast<char*>(&newFields->address.length);
+		inSqlDa->sqlvar[2].sqlind = &newFields->addressNull;
+
+		inSqlDa->sqlvar[3].sqldata = reinterpret_cast<char*>(&newFields->info);
+		inSqlDa->sqlvar[3].sqlind = &newFields->infoNull;
+
+		ISC_STATUS_ARRAY statusVector = {0};
+		isc_db_handle dbHandle = getIscDbHandle(context);
+		isc_tr_handle trHandle = getIscTrHandle(context);
+
+		ThrowError::check(isc_dsql_execute(statusVector, &trHandle, &stmtHandle, SQL_DIALECT_CURRENT,
+			inSqlDa), statusVector);
+	}
+
+	FB_UDR_INITIALIZE
+	{
+		ISC_STATUS_ARRAY statusVector = {0};
+		isc_db_handle dbHandle = getIscDbHandle(context);
+		isc_tr_handle trHandle = getIscTrHandle(context);
+
+		stmtHandle = 0;
+		ThrowError::check(isc_dsql_allocate_statement(statusVector, &dbHandle, &stmtHandle), statusVector);
+		ThrowError::check(isc_dsql_prepare(statusVector, &trHandle, &stmtHandle, 0,
+			"select data_source from replicate_config where name = ?",
+			SQL_DIALECT_CURRENT, NULL), statusVector);
+
+		AutoDispose<IStatus> status(master->getStatus());
+
+		const char* table = metadata->getTriggerTable(status);
+		ThrowError::check(status->get());
+
+		// Skip the first exclamation point, separating the module name and entry point.
+		const char* info = strchr(metadata->getEntryPoint(status), '!');
+		ThrowError::check(status->get());
+
+		// Skip the second exclamation point, separating the entry point and the misc info (config).
+		if (info)
+			info = strchr(info + 1, '!');
+
+		if (info)
+			++info;
+		else
+			info = "";
+
+		inSqlDa = reinterpret_cast<XSQLDA*>(new char[(XSQLDA_LENGTH(1))]);
+		inSqlDa->version = SQLDA_VERSION1;
+		inSqlDa->sqln = 1;
+		ThrowError::check(isc_dsql_describe_bind(statusVector, &stmtHandle, SQL_DIALECT_CURRENT, inSqlDa),
+			statusVector);
+		inSqlDa->sqlvar[0].sqldata = new char[sizeof(short) + inSqlDa->sqlvar[0].sqllen];
+		strncpy(inSqlDa->sqlvar[0].sqldata + sizeof(short), info, inSqlDa->sqlvar[0].sqllen);
+		*reinterpret_cast<short*>(inSqlDa->sqlvar[0].sqldata) = strlen(info);
+
+		XSQLDA* outSqlDa = reinterpret_cast<XSQLDA*>(new char[(XSQLDA_LENGTH(1))]);
+		outSqlDa->version = SQLDA_VERSION1;
+		outSqlDa->sqln = 1;
+		ThrowError::check(isc_dsql_describe(statusVector, &stmtHandle, SQL_DIALECT_CURRENT, outSqlDa),
+			statusVector);
+		outSqlDa->sqlvar[0].sqldata = new char[sizeof(short) + outSqlDa->sqlvar[0].sqllen + 1];
+		outSqlDa->sqlvar[0].sqldata[sizeof(short) + outSqlDa->sqlvar[0].sqllen] = '\0';
+
+		ThrowError::check(isc_dsql_execute2(statusVector, &trHandle, &stmtHandle, SQL_DIALECT_CURRENT,
+			inSqlDa, outSqlDa), statusVector);
+		ThrowError::check(isc_dsql_free_statement(statusVector, &stmtHandle, DSQL_unprepare), statusVector);
+
+		delete [] inSqlDa->sqlvar[0].sqldata;
+		delete [] reinterpret_cast<char*>(inSqlDa);
+		inSqlDa = NULL;
+
+		const IParametersMetadata* fields = metadata->getTriggerFields(status);
+		ThrowError::check(status->get());
+
+		unsigned count = fields->getCount(status);
+		ThrowError::check(status->get());
+
+		char buffer[65536];
+		strcpy(buffer,
+			"execute block (\n"
+			"    id type of column PERSONS.ID = ?,\n"
+			"    name type of column PERSONS.NAME = ?,\n"
+			"    address type of column PERSONS.ADDRESS = ?,\n"
+			"    info type of column PERSONS.INFO = ?\n"
+			")"
+			"as\n"
+			"begin\n"
+			"    execute statement ('insert into persons (id, name, address, info)\n"
+			"        values (?, ?, ?, ?)') (:id, :name, :address, :info)\n"
+			"        on external data source '");
+		strcat(buffer, outSqlDa->sqlvar[0].sqldata + sizeof(short));
+		strcat(buffer, "';\nend");
+
+		ThrowError::check(isc_dsql_prepare(statusVector, &trHandle, &stmtHandle, 0, buffer,
+			SQL_DIALECT_CURRENT, NULL), statusVector);
+
+		inSqlDa = reinterpret_cast<XSQLDA*>(new char[(XSQLDA_LENGTH(4))]);
+		inSqlDa->version = SQLDA_VERSION1;
+		inSqlDa->sqln = 4;
+		ThrowError::check(isc_dsql_describe_bind(statusVector, &stmtHandle, SQL_DIALECT_CURRENT, inSqlDa),
+			statusVector);
+
+		for (unsigned i = 0; i < 4; ++i)
+		{
+			XSQLVAR* var = &inSqlDa->sqlvar[i];
+			var->sqltype |= 1;
+		}
+
+		delete [] outSqlDa->sqlvar[0].sqldata;
+		delete [] reinterpret_cast<char*>(outSqlDa);
+
+		initialized = true;
+	}
+
+	bool initialized;
+	XSQLDA* inSqlDa;
+	isc_stmt_handle stmtHandle;
+FB_UDR_END_TRIGGER
Modified: firebird/trunk/lang_helpers/gds_codes.ftn
===================================================================
--- firebird/trunk/lang_helpers/gds_codes.ftn	2013-01-26 08:38:50 UTC (rev 57628)
+++ firebird/trunk/lang_helpers/gds_codes.ftn	2013-01-29 01:21:32 UTC (rev 57629)
@@ -1504,6 +1504,10 @@
       PARAMETER (GDS__null_spb                         = 335545045)
       INTEGER*4 GDS__max_args_exceeded               
       PARAMETER (GDS__max_args_exceeded                = 335545046)
+      INTEGER*4 GDS__ee_blr_mismatch_names_count     
+      PARAMETER (GDS__ee_blr_mismatch_names_count      = 335545047)
+      INTEGER*4 GDS__ee_blr_mismatch_name_not_found  
+      PARAMETER (GDS__ee_blr_mismatch_name_not_found   = 335545048)
       INTEGER*4 GDS__gfix_db_name                    
       PARAMETER (GDS__gfix_db_name                     = 335740929)
       INTEGER*4 GDS__gfix_invalid_sw                 
Modified: firebird/trunk/lang_helpers/gds_codes.pas
===================================================================
--- firebird/trunk/lang_helpers/gds_codes.pas	2013-01-26 08:38:50 UTC (rev 57628)
+++ firebird/trunk/lang_helpers/gds_codes.pas	2013-01-29 01:21:32 UTC (rev 57629)
@@ -759,6 +759,8 @@
 	gds_no_providers                     = 335545044;
 	gds_null_spb                         = 335545045;
 	gds_max_args_exceeded                = 335545046;
+	gds_ee_blr_mismatch_names_count      = 335545047;
+	gds_ee_blr_mismatch_name_not_found   = 335545048;
 	gds_gfix_db_name                     = 335740929;
 	gds_gfix_invalid_sw                  = 335740930;
 	gds_gfix_incmp_sw                    = 335740932;
Modified: firebird/trunk/src/dsql/ExprNodes.cpp
===================================================================
--- firebird/trunk/src/dsql/ExprNodes.cpp	2013-01-26 08:38:50 UTC (rev 57628)
+++ firebird/trunk/src/dsql/ExprNodes.cpp	2013-01-29 01:21:32 UTC (rev 57629)
@@ -10764,11 +10764,11 @@
 				dsc* const srcDesc = EVL_expr(tdbb, request, *sourcePtr);
 				if (srcDesc && !(request->req_flags & req_null))
 				{
-					*nullPtr = FALSE;
+					*nullPtr = 0;
 					MOV_move(tdbb, srcDesc, &argDesc);
 				}
 				else
-					*nullPtr = TRUE;
+					*nullPtr = -1;
 			}
 		}
 
Modified: firebird/trunk/src/include/firebird/ExternalEngine.h
===================================================================
--- firebird/trunk/src/include/firebird/ExternalEngine.h	2013-01-26 08:38:50 UTC (rev 57628)
+++ firebird/trunk/src/include/firebird/ExternalEngine.h	2013-01-29 01:21:32 UTC (rev 57629)
@@ -38,14 +38,23 @@
 class ExternalEngine;
 
 
-struct BlrMessage
+class IRoutineMessage : public IVersioned
 {
-	const unsigned char* blr;
-	unsigned int blrLength;
-	unsigned int bufferLength;
+public:
+	virtual void FB_CARG set(const unsigned char* blr, unsigned blrLength, unsigned bufferLength) = 0;
 };
+#define FB_ROUTINE_MESSAGE_VERSION (FB_VERSIONED_VERSION + 1)
 
 
+class ITriggerMessage : public IVersioned
+{
+public:
+	virtual void FB_CARG set(const unsigned char* blr, unsigned blrLength, unsigned bufferLength,
+		const char** names, unsigned count) = 0;
+};
+#define FB_TRIGGER_MESSAGE_VERSION (FB_VERSIONED_VERSION + 1)
+
+
 // Connection to current database in external engine.
 // Context passed to ExternalEngine has SYSDBA privileges.
 // Context passed to ExternalFunction, ExternalProcedure and ExternalTrigger
@@ -193,11 +202,11 @@
 	// Called when engine wants to load object in the cache. Objects are disposed when
 	// going out of the cache.
 	virtual ExternalFunction* FB_CALL makeFunction(Error* error, ExternalContext* context,
-		const IRoutineMetadata* metadata, BlrMessage* inBlr, BlrMessage* outBlr) = 0;
+		const IRoutineMetadata* metadata, IRoutineMessage* inMsg, IRoutineMessage* outMsg) = 0;
 	virtual ExternalProcedure* FB_CALL makeProcedure(Error* error, ExternalContext* context,
-		const IRoutineMetadata* metadata, BlrMessage* inBlr, BlrMessage* outBlr) = 0;
+		const IRoutineMetadata* metadata, IRoutineMessage* inMsg, IRoutineMessage* outMsg) = 0;
 	virtual ExternalTrigger* FB_CALL makeTrigger(Error* error, ExternalContext* context,
-		const IRoutineMetadata* metadata) = 0;
+		const IRoutineMetadata* metadata, ITriggerMessage* triggerMsg) = 0;
 };
 #define FB_EXTERNAL_ENGINE_VERSION (FB_PLUGIN_VERSION + 6)
 
Modified: firebird/trunk/src/include/firebird/Message.h
===================================================================
--- firebird/trunk/src/include/firebird/Message.h	2013-01-26 08:38:50 UTC (rev 57628)
+++ firebird/trunk/src/include/firebird/Message.h	2013-01-29 01:21:32 UTC (rev 57629)
@@ -30,54 +30,66 @@
 #include <string.h>
 
 #define FB_MESSAGE(name, fields)	\
-	FB_MESSAGE_I(name, FB_BOOST_PP_CAT(FB_MESSAGE_X fields, 0))
+	struct name	\
+	{	\
+		FB_MESSAGE_I(name, 2, FB_BOOST_PP_CAT(FB_MESSAGE_X fields, 0))	\
+	}
 
 #define FB_MESSAGE_X(x, y) ((x, y)) FB_MESSAGE_Y
 #define FB_MESSAGE_Y(x, y) ((x, y)) FB_MESSAGE_X
 #define FB_MESSAGE_X0
 #define FB_MESSAGE_Y0
 
-#define FB_MESSAGE_I(name, fields)	\
+#define FB_TRIGGER_MESSAGE(name, fields)	\
 	struct name	\
 	{	\
-		static const unsigned char* getBlr(unsigned* length)	\
-		{	\
-			static const unsigned char blr[] = {	\
-				blr_version5,	\
-				blr_begin,	\
-				blr_message, 0,	\
-					(2 * (FB_BOOST_PP_SEQ_SIZE(fields))) & 0xFF,	\
-					(2 * (FB_BOOST_PP_SEQ_SIZE(fields))) >> 8,	\
-				FB_BOOST_PP_SEQ_FOR_EACH_I(FB_MESSAGE_BLR, _, fields)	\
-				blr_end,	\
-				blr_eoc	\
-			};	\
-			*length = sizeof(blr);	\
-			return blr;	\
-		}	\
-		\
-		static unsigned getSize()	\
-		{	\
-			return (unsigned)(size_t) (&((name*) 0)->FB_BOOST_PP_CAT(	\
-				FB_BOOST_PP_TUPLE_ELEM(2, 1,	\
-					FB_BOOST_PP_SEQ_ELEM(FB_BOOST_PP_DEC(FB_BOOST_PP_SEQ_SIZE(fields)), fields)),	\
-				Null) - 0) + sizeof(ISC_SHORT);	\
-		}	\
-		\
-		void clear()	\
-		{	\
-			memset(this, 0, sizeof(*this));	\
-		}	\
-		\
-		FB_BOOST_PP_SEQ_FOR_EACH_I(FB_MESSAGE_FIELD, _, fields)	\
+		FB_MESSAGE_I(name, 3, FB_BOOST_PP_CAT(FB_TRIGGER_MESSAGE_X fields, 0))	\
+		FB_TRIGGER_MESSAGE_NAMES_I(name, 3, FB_BOOST_PP_CAT(FB_TRIGGER_MESSAGE_NAMES_X fields, 0))	\
 	}
 
+#define FB_TRIGGER_MESSAGE_X(x, y, z) ((x, y, z)) FB_TRIGGER_MESSAGE_Y
+#define FB_TRIGGER_MESSAGE_Y(x, y, z) ((x, y, z)) FB_TRIGGER_MESSAGE_X
+#define FB_TRIGGER_MESSAGE_X0
+#define FB_TRIGGER_MESSAGE_Y0
+
+#define FB_MESSAGE_I(name, size, fields)	\
+	static const unsigned char* getBlr(unsigned* length)	\
+	{	\
+		static const unsigned char blr[] = {	\
+			blr_version5,	\
+			blr_begin,	\
+			blr_message, 0,	\
+				(2 * (FB_BOOST_PP_SEQ_SIZE(fields))) & 0xFF,	\
+				(2 * (FB_BOOST_PP_SEQ_SIZE(fields))) >> 8,	\
+			FB_BOOST_PP_SEQ_FOR_EACH_I(FB_MESSAGE_BLR, size, fields)	\
+			blr_end,	\
+			blr_eoc	\
+		};	\
+		*length = sizeof(blr);	\
+		return blr;	\
+	}	\
+	\
+	static unsigned getSize()	\
+	{	\
+		return (unsigned)(size_t) (&((name*) 0)->FB_BOOST_PP_CAT(	\
+			FB_BOOST_PP_TUPLE_ELEM(size, 1,	\
+				FB_BOOST_PP_SEQ_ELEM(FB_BOOST_PP_DEC(FB_BOOST_PP_SEQ_SIZE(fields)), fields)),	\
+			Null) - 0) + sizeof(ISC_SHORT);	\
+	}	\
+	\
+	void clear()	\
+	{	\
+		memset(this, 0, sizeof(*this));	\
+	}	\
+	\
+	FB_BOOST_PP_SEQ_FOR_EACH_I(FB_MESSAGE_FIELD, size, fields)
+
 #define FB_MESSAGE_FIELD(r, _, i, xy)	\
-	FB_BOOST_PP_CAT(FB_TYPE_, FB_BOOST_PP_TUPLE_ELEM(2, 0, xy)) FB_BOOST_PP_TUPLE_ELEM(2, 1, xy);	\
-	ISC_SHORT FB_BOOST_PP_CAT(FB_BOOST_PP_TUPLE_ELEM(2, 1, xy), Null);
+	FB_BOOST_PP_CAT(FB_TYPE_, FB_BOOST_PP_TUPLE_ELEM(_, 0, xy)) FB_BOOST_PP_TUPLE_ELEM(_, 1, xy);	\
+	ISC_SHORT FB_BOOST_PP_CAT(FB_BOOST_PP_TUPLE_ELEM(_, 1, xy), Null);
 
 #define FB_MESSAGE_BLR(r, _, i, xy)	\
-	FB_BOOST_PP_CAT(FB_BLR_, FB_BOOST_PP_TUPLE_ELEM(2, 0, xy)),	\
+	FB_BOOST_PP_CAT(FB_BLR_, FB_BOOST_PP_TUPLE_ELEM(_, 0, xy)),	\
 	FB_BLR_FB_SMALLINT,
 
 #define FB_BLR_FB_SCALED_SMALLINT(scale)	blr_short, (scale)
@@ -126,7 +138,45 @@
 		}	\
 	}
 
+#define FB_TRIGGER_MESSAGE_DESC(name, fields)	\
+	FB_TRIGGER_MESSAGE(name, fields);	\
+	struct name##Desc : public name	\
+	{	\
+		::Firebird::FbMessage desc;	\
+		\
+		name##Desc()	\
+		{	\
+			desc.blr = getBlr(&desc.blrLength);	\
+			desc.buffer = (unsigned char*) this;	\
+			desc.bufferLength = getSize();	\
+		}	\
+	}
 
+#define FB_TRIGGER_MESSAGE_NAMES(name, fields)	\
+	FB_TRIGGER_MESSAGE_NAMES_I(name, 3, FB_BOOST_PP_CAT(FB_TRIGGER_MESSAGE_NAMES_X fields, 0))
+
+#define FB_TRIGGER_MESSAGE_NAMES_X(x, y, z) ((x, y, z)) FB_TRIGGER_MESSAGE_NAMES_Y
+#define FB_TRIGGER_MESSAGE_NAMES_Y(x, y, z) ((x, y, z)) FB_TRIGGER_MESSAGE_NAMES_X
+#define FB_TRIGGER_MESSAGE_NAMES_X0
+#define FB_TRIGGER_MESSAGE_NAMES_Y0
+
+#define FB_TRIGGER_MESSAGE_NAMES_I(name, size, fields)	\
+	static const char** getNames(unsigned* count)	\
+	{	\
+		*count = FB_BOOST_PP_SEQ_SIZE(fields);	\
+		\
+		static const char* names[] = {	\
+			FB_BOOST_PP_SEQ_FOR_EACH_I(FB_TRIGGER_MESSAGE_NAME, size, fields)	\
+			NULL	\
+		};	\
+		\
+		return names;	\
+	}
+
+#define FB_TRIGGER_MESSAGE_NAME(r, _, i, xy)	\
+	FB_BOOST_PP_TUPLE_ELEM(_, 2, xy),
+
+
 namespace Firebird {
 
 
Modified: firebird/trunk/src/include/firebird/UdrCppEngine.h
===================================================================
--- firebird/trunk/src/include/firebird/UdrCppEngine.h	2013-01-26 08:38:50 UTC (rev 57628)
+++ firebird/trunk/src/include/firebird/UdrCppEngine.h	2013-01-29 01:21:32 UTC (rev 57629)
@@ -86,11 +86,11 @@
 
 #define FB_UDR_EXECUTE__FUNCTION	\
 	virtual void FB_CALL execute(::Firebird::Error* error, ::Firebird::ExternalContext* context, \
-		void* inMsg, void* outMsg)	\
+		void* in, void* out)	\
 	{	\
 		try	\
 		{	\
-			internalExecute(error, context, (InMessage*) inMsg, (OutMessage*) outMsg);	\
+			internalExecute(error, context, (InMessage*) in, (OutMessage*) out);	\
 		}	\
 		FB_UDR__CATCH	\
 	}	\
@@ -151,11 +151,11 @@
 
 #define FB_UDR_EXECUTE__PROCEDURE	\
 	virtual ::Firebird::ExternalResultSet* FB_CALL open(::Firebird::Error* error, \
-		::Firebird::ExternalContext* context, void* inMsg, void* outMsg)	\
+		::Firebird::ExternalContext* context, void* in, void* out)	\
 	{	\
 		try	\
 		{	\
-			return new ResultSet(error, context, this, (InMessage*) inMsg, (OutMessage*) outMsg);	\
+			return new ResultSet(error, context, this, (InMessage*) in, (OutMessage*) out);	\
 		}	\
 		FB_UDR__CATCH	\
 		\
@@ -166,9 +166,9 @@
 	{	\
 	public:	\
 		ResultSet(::Firebird::Error* error, ::Firebird::ExternalContext* context,	\
-				This* procedure, InMessage* inMsg, OutMessage* outMsg)	\
+				This* const procedure, InMessage* const in, OutMessage* const out)	\
 			: ::Firebird::Udr::ResultSet<ResultSet, This, InMessage, OutMessage>(	\
-					context, procedure, inMsg, outMsg)
+					context, procedure, in, out)
 
 #define FB_UDR_FETCH_PROCEDURE	\
 	virtual bool FB_CALL fetch(::Firebird::Error* error)	\
@@ -202,21 +202,30 @@
 	};
 
 #define FB_UDR_EXECUTE_DYNAMIC_TRIGGER	\
+	typedef void* FieldsMessage;	\
+	\
 	FB_UDR_EXECUTE__TRIGGER
 
+#define FB_UDR_EXECUTE_MESSAGE_TRIGGER(fields)	\
+	FB_TRIGGER_MESSAGE(FieldsMessage,	\
+		fields	\
+	);	\
+	\
+	FB_UDR_EXECUTE__TRIGGER
+
 #define FB_UDR_EXECUTE__TRIGGER	\
 	virtual void FB_CALL execute(::Firebird::Error* error, ::Firebird::ExternalContext* context,	\
-		::Firebird::ExternalTrigger::Action action, void* oldMsg, void* newMsg)	\
+		::Firebird::ExternalTrigger::Action action, void* oldFields, void* newFields)	\
 	{	\
 		try	\
 		{	\
-			internalExecute(error, context, action, oldMsg, newMsg);	\
+			internalExecute(error, context, action, (FieldsMessage*) oldFields, (FieldsMessage*) newFields);	\
 		}	\
 		FB_UDR__CATCH	\
 	}	\
 	\
 	void internalExecute(::Firebird::Error* error, ::Firebird::ExternalContext* context,	\
-		::Firebird::ExternalTrigger::Action action, void* oldMsg, void* newMsg)
+		::Firebird::ExternalTrigger::Action action, FieldsMessage* oldFields, FieldsMessage* newFields)
 
 
 #define FB_UDR_INITIALIZE	\
@@ -499,10 +508,10 @@
 	}
 
 protected:
-	Firebird::ExternalContext* context;
-	Procedure* procedure;
-	InMessage* in;
-	OutMessage* out;
+	Firebird::ExternalContext* const context;
+	Procedure* const procedure;
+	InMessage* const in;
+	OutMessage* const out;
 };
 
 
@@ -620,10 +629,10 @@
 	}
 
 	virtual void setup(Error* /*error*/, ExternalContext* /*context*/,
-		const IRoutineMetadata* /*metadata*/, BlrMessage* inBlr, BlrMessage* outBlr)
+		const IRoutineMetadata* /*metadata*/, IRoutineMessage* in, IRoutineMessage* out)
 	{
-		setBlr(inBlr, (typename T::InMessage*) 0);
-		setBlr(outBlr, (typename T::OutMessage*) 0);
+		setBlr(in, (typename T::InMessage*) 0);
+		setBlr(out, (typename T::OutMessage*) 0);
 	}
 
 	virtual ExternalFunction* FB_CALL newItem(Error* error, ExternalContext* context,
@@ -635,13 +644,14 @@
 	}
 
 private:
-	template <typename MessageType> void setBlr(BlrMessage* blrMessage, MessageType*)
+	template <typename MessageType> void setBlr(IRoutineMessage* blrMessage, MessageType*)
 	{
-		blrMessage->blr = MessageType::getBlr(&blrMessage->blrLength);
-		blrMessage->bufferLength = MessageType::getSize();
+		unsigned blrLength;
+		const unsigned char* blr = MessageType::getBlr(&blrLength);
+		blrMessage->set(blr, blrLength, MessageType::getSize());
 	}
 
-	void setBlr(BlrMessage* blrMessage, void**)
+	void setBlr(IRoutineMessage* /*blrMessage*/, void**)
 	{
 	}
 };
@@ -656,10 +666,10 @@
 	}
 
 	virtual void setup(Error* /*error*/, ExternalContext* /*context*/,
-		const IRoutineMetadata* /*metadata*/, BlrMessage* inBlr, BlrMessage* outBlr)
+		const IRoutineMetadata* /*metadata*/, IRoutineMessage* in, IRoutineMessage* out)
 	{
-		setBlr(inBlr, (typename T::InMessage*) 0);
-		setBlr(outBlr, (typename T::OutMessage*) 0);
+		setBlr(in, (typename T::InMessage*) 0);
+		setBlr(out, (typename T::OutMessage*) 0);
 	}
 
 	virtual ExternalProcedure* FB_CALL newItem(Error* error, ExternalContext* context,
@@ -671,13 +681,14 @@
 	}
 
 private:
-	template <typename MessageType> void setBlr(BlrMessage* blrMessage, MessageType*)
+	template <typename MessageType> void setBlr(IRoutineMessage* blrMessage, MessageType*)
 	{
-		blrMessage->blr = MessageType::getBlr(&blrMessage->blrLength);
-		blrMessage->bufferLength = MessageType::getSize();
+		unsigned blrLength;
+		const unsigned char* blr = MessageType::getBlr(&blrLength);
+		blrMessage->set(blr, blrLength, MessageType::getSize());
 	}
 
-	void setBlr(BlrMessage* blrMessage, void**)
+	void setBlr(IRoutineMessage* /*blrMessage*/, void**)
 	{
 	}
 };
@@ -692,8 +703,9 @@
 	}
 
 	virtual void setup(Error* /*error*/, ExternalContext* /*context*/,
-		const IRoutineMetadata* /*metadata*/)
+		const IRoutineMetadata* /*metadata*/, ITriggerMessage* fields)
 	{
+		setBlr(fields, (typename T::FieldsMessage*) 0);
 	}
 
 	virtual ExternalTrigger* FB_CALL newItem(Error* error, ExternalContext* context,
@@ -703,6 +715,20 @@
 		obj->initialize(error, context);
 		return obj;
 	}
+
+private:
+	template <typename MessageType> void setBlr(ITriggerMessage* blrMessage, MessageType*)
+	{
+		unsigned blrLength, namesCount;
+		const unsigned char* blr = MessageType::getBlr(&blrLength);
+		const char** names = MessageType::getNames(&namesCount);
+
+		blrMessage->set(blr, blrLength, MessageType::getSize(), names, namesCount);
+	}
+
+	void setBlr(ITriggerMessage* /*blrMessage*/, void**)
+	{
+	}
 };
 
 
Modified: firebird/trunk/src/include/firebird/UdrEngine.h
===================================================================
--- firebird/trunk/src/include/firebird/UdrEngine.h	2013-01-26 08:38:50 UTC (rev 57628)
+++ firebird/trunk/src/include/firebird/UdrEngine.h	2013-01-29 01:21:32 UTC (rev 57629)
@@ -40,7 +40,7 @@
 {
 public:
 	virtual void setup(Error* error, ExternalContext* context, const IRoutineMetadata* metadata,
-		BlrMessage* inBlr, BlrMessage* outBlr) = 0;
+		IRoutineMessage* in, IRoutineMessage* out) = 0;
 	virtual ExternalFunction* FB_CALL newItem(Error* error, ExternalContext* context,
 		const IRoutineMetadata* metadata) = 0;
 };
@@ -49,7 +49,7 @@
 {
 public:
 	virtual void setup(Error* error, ExternalContext* context, const IRoutineMetadata* metadata,
-		BlrMessage* inBlr, BlrMessage* outBlr) = 0;
+		IRoutineMessage* in, IRoutineMessage* out) = 0;
 	virtual ExternalProcedure* FB_CALL newItem(Error* error, ExternalContext* context,
 		const IRoutineMetadata* metadata) = 0;
 };
@@ -57,7 +57,8 @@
 class TriggerFactory
 {
 public:
-	virtual void setup(Error* error, ExternalContext* context, const IRoutineMetadata* metadata) = 0;
+	virtual void setup(Error* error, ExternalContext* context, const IRoutineMetadata* metadata,
+		ITriggerMessage* fields) = 0;
 	virtual ExternalTrigger* FB_CALL newItem(Error* error, ExternalContext* context,
 		const IRoutineMetadata* metadata) = 0;
 };
Modified: firebird/trunk/src/include/gen/codetext.h
===================================================================
--- firebird/trunk/src/include/gen/codetext.h	2013-01-26 08:38:50 UTC (rev 57628)
+++ firebird/trunk/src/include/gen/codetext.h	2013-01-29 01:21:32 UTC (rev 57629)
@@ -748,6 +748,8 @@
 	{"no_providers", 335545044},
 	{"null_spb", 335545045},
 	{"max_args_exceeded", 335545046},
+	{"ee_blr_mismatch_names_count", 335545047},
+	{"ee_blr_mismatch_name_not_found", 335545048},
 	{"gfix_db_name", 335740929},
 	{"gfix_invalid_sw", 335740930},
 	{"gfix_incmp_sw", 335740932},
Modified: firebird/trunk/src/include/gen/iberror.h
===================================================================
--- firebird/trunk/src/include/gen/iberror.h	2013-01-26 08:38:50 UTC (rev 57628)
+++ firebird/trunk/src/include/gen/iberror.h	2013-01-29 01:21:32 UTC (rev 57629)
@@ -782,6 +782,8 @@
 const ISC_STATUS isc_no_providers                     = 335545044L;
 const ISC_STATUS isc_null_spb                         = 335545045L;
 const ISC_STATUS isc_max_args_exceeded                = 335545046L;
+const ISC_STATUS isc_ee_blr_mismatch_names_count      = 335545047L;
+const ISC_STATUS isc_ee_blr_mismatch_name_not_found   = 335545048L;
 const ISC_STATUS isc_gfix_db_name                     = 335740929L;
 const ISC_STATUS isc_gfix_invalid_sw                  = 335740930L;
 const ISC_STATUS isc_gfix_incmp_sw                    = 335740932L;
@@ -1226,7 +1228,7 @@
 const ISC_STATUS isc_trace_switch_param_miss          = 337182758L;
 const ISC_STATUS isc_trace_param_act_notcompat        = 337182759L;
 const ISC_STATUS isc_trace_mandatory_switch_miss      = 337182760L;
-const ISC_STATUS isc_err_max                          = 1170;
+const ISC_STATUS isc_err_max                          = 1172;
 
 #else /* c definitions */
 
@@ -1978,6 +1980,8 @@
 #define isc_no_providers                     335545044L
 #define isc_null_spb                         335545045L
 #define isc_max_args_exceeded                335545046L
+#define isc_ee_blr_mismatch_names_count      335545047L
+#define isc_ee_blr_mismatch_name_not_found   335545048L
 #define isc_gfix_db_name                     335740929L
 #define isc_gfix_invalid_sw                  335740930L
 #define isc_gfix_incmp_sw                    335740932L
@@ -2422,7 +2426,7 @@
 #define isc_trace_switch_param_miss          337182758L
 #define isc_trace_param_act_notcompat        337182759L
 #define isc_trace_mandatory_switch_miss      337182760L
-#define isc_err_max                          1170
+#define isc_err_max                          1172
 
 #endif
 
Modified: firebird/trunk/src/include/gen/msgs.h
===================================================================
--- firebird/trunk/src/include/gen/msgs.h	2013-01-26 08:38:50 UTC (rev 57628)
+++ firebird/trunk/src/include/gen/msgs.h	2013-01-29 01:21:32 UTC (rev 57629)
@@ -751,6 +751,8 @@
 	{335545044, "No providers loaded"},		/* no_providers */
 	{335545045, "NULL data with non-zero SPB length"},		/* null_spb */
 	{335545046, "Maximum (@1) number of arguments exceeded for function @2"},		/* max_args_exceeded */
+	{335545047, "External BLR message mismatch: names count = @1, blr count = @2"},		/* ee_blr_mismatch_names_count */
+	{335545048, "External BLR message mismatch: name @1 not found"},		/* ee_blr_mismatch_name_not_found */
 	{335740929, "data base file name (@1) already given"},		/* gfix_db_name */
 	{335740930, "invalid switch @1"},		/* gfix_invalid_sw */
 	{335740932, "incompatible switch combination"},		/* gfix_incmp_sw */
Modified: firebird/trunk/src/include/gen/sql_code.h
===================================================================
--- firebird/trunk/src/include/gen/sql_code.h	2013-01-26 08:38:50 UTC (rev 57628)
+++ firebird/trunk/src/include/gen/sql_code.h	2013-01-29 01:21:32 UTC (rev 57629)
@@ -747,6 +747,8 @@
 	{335545044, -902}, /* 724 no_providers */
 	{335545045, -104}, /* 725 null_spb */
 	{335545046, -833}, /* 726 max_args_exceeded */
+	{335545047, -901}, /* 727 ee_blr_mismatch_names_count */
+	{335545048, -901}, /* 728 ee_blr_mismatch_name_not_found */
 	{335740929, -901}, /*   1 gfix_db_name */
 	{335740930, -901}, /*   2 gfix_invalid_sw */
 	{335740932, -901}, /*   4 gfix_incmp_sw */
Modified: firebird/trunk/src/include/gen/sql_state.h
===================================================================
--- firebird/trunk/src/include/gen/sql_state.h	2013-01-26 08:38:50 UTC (rev 57628)
+++ firebird/trunk/src/include/gen/sql_state.h	2013-01-29 01:21:32 UTC (rev 57629)
@@ -747,6 +747,8 @@
 	{335545044, "39000"}, // 724 no_providers
 	{335545045, "42818"}, // 725 null_spb
 	{335545046, "42000"}, // 726 max_args_exceeded
+	{335545047, "42000"}, // 727 ee_blr_mismatch_names_count
+	{335545048, "42000"}, // 728 ee_blr_mism...
 
[truncated message content] | 
| 
      
      
      From: <fir...@us...> - 2013-01-29 05:33:54
       | 
| Revision: 57630
          http://sourceforge.net/p/firebird/code/57630
Author:   firebirds
Date:     2013-01-29 05:33:50 +0000 (Tue, 29 Jan 2013)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2013-01-29 01:21:32 UTC (rev 57629)
+++ firebird/trunk/ChangeLog	2013-01-29 05:33:50 UTC (rev 57630)
@@ -1,3 +1,30 @@
+ 2013-01-29 01:21  asfernandes 
+   M examples/udr/UdrCppExample.cpp
+   M lang_helpers/gds_codes.ftn
+   M lang_helpers/gds_codes.pas
+   M src/dsql/ExprNodes.cpp
+   M src/include/firebird/ExternalEngine.h
+   M src/include/firebird/Message.h
+   M src/include/firebird/UdrCppEngine.h
+   M src/include/firebird/UdrEngine.h
+   M src/include/gen/codetext.h
+   M src/include/gen/iberror.h
+   M src/include/gen/msgs.h
+   M src/include/gen/sql_code.h
+   M src/include/gen/sql_state.h
+   M src/jrd/ExtEngineManager.cpp
+   M src/jrd/ExtEngineManager.h
+   M src/jrd/Function.epp
+   M src/jrd/dfw.epp
+   M src/jrd/jrd.cpp
+   M src/jrd/met.epp
+   M src/jrd/met_proto.h
+   M src/msgs/facilities2.sql
+   M src/msgs/messages2.sql
+   M src/msgs/system_errors2.sql
+   M src/plugins/udr_engine/UdrEngine.cpp
+Migrate external triggers to the new message-based style.
+
  2013-01-25 13:01  dimitr 
    M src/jrd/extds/ExtDS.cpp
    M src/jrd/extds/ExtDS.h
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2013-01-29 01:21:32 UTC (rev 57629)
+++ firebird/trunk/src/jrd/build_no.h	2013-01-29 05:33:50 UTC (rev 57630)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30202
+  FORMAL BUILD NUMBER:30203
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30202"
-#define FILE_VER_STRING "WI-T3.0.0.30202"
-#define LICENSE_VER_STRING "WI-T3.0.0.30202"
-#define FILE_VER_NUMBER 3, 0, 0, 30202
+#define PRODUCT_VER_STRING "3.0.0.30203"
+#define FILE_VER_STRING "WI-T3.0.0.30203"
+#define LICENSE_VER_STRING "WI-T3.0.0.30203"
+#define FILE_VER_NUMBER 3, 0, 0, 30203
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30202"
+#define FB_BUILD_NO "30203"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2013-01-29 01:21:32 UTC (rev 57629)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2013-01-29 05:33:50 UTC (rev 57630)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30202
+BuildNum=30203
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2013-01-30 05:35:09
       | 
| Revision: 57632
          http://sourceforge.net/p/firebird/code/57632
Author:   firebirds
Date:     2013-01-30 05:35:07 +0000 (Wed, 30 Jan 2013)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2013-01-29 15:09:34 UTC (rev 57631)
+++ firebird/trunk/ChangeLog	2013-01-30 05:35:07 UTC (rev 57632)
@@ -1,3 +1,9 @@
+ 2013-01-29 15:09  dimitr 
+   M src/dsql/BlrWriter.cpp
+   M src/jrd/DebugInterface.cpp
+   M src/jrd/DebugInterface.h
+Fixed inconsistency in the debug info version.
+
  2013-01-29 01:21  asfernandes 
    M examples/udr/UdrCppExample.cpp
    M lang_helpers/gds_codes.ftn
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2013-01-29 15:09:34 UTC (rev 57631)
+++ firebird/trunk/src/jrd/build_no.h	2013-01-30 05:35:07 UTC (rev 57632)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30203
+  FORMAL BUILD NUMBER:30204
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30203"
-#define FILE_VER_STRING "WI-T3.0.0.30203"
-#define LICENSE_VER_STRING "WI-T3.0.0.30203"
-#define FILE_VER_NUMBER 3, 0, 0, 30203
+#define PRODUCT_VER_STRING "3.0.0.30204"
+#define FILE_VER_STRING "WI-T3.0.0.30204"
+#define LICENSE_VER_STRING "WI-T3.0.0.30204"
+#define FILE_VER_NUMBER 3, 0, 0, 30204
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30203"
+#define FB_BUILD_NO "30204"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2013-01-29 15:09:34 UTC (rev 57631)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2013-01-30 05:35:07 UTC (rev 57632)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30203
+BuildNum=30204
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2013-01-31 05:37:31
       | 
| Revision: 57635
          http://sourceforge.net/p/firebird/code/57635
Author:   firebirds
Date:     2013-01-31 05:37:28 +0000 (Thu, 31 Jan 2013)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2013-01-31 00:33:23 UTC (rev 57634)
+++ firebird/trunk/ChangeLog	2013-01-31 05:37:28 UTC (rev 57635)
@@ -1,3 +1,7 @@
+ 2013-01-31 00:33  asfernandes 
+   M src/common/cvt.cpp
+Misc.
+
  2013-01-29 15:09  dimitr 
    M src/dsql/BlrWriter.cpp
    M src/jrd/DebugInterface.cpp
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2013-01-31 00:33:23 UTC (rev 57634)
+++ firebird/trunk/src/jrd/build_no.h	2013-01-31 05:37:28 UTC (rev 57635)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30204
+  FORMAL BUILD NUMBER:30205
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30204"
-#define FILE_VER_STRING "WI-T3.0.0.30204"
-#define LICENSE_VER_STRING "WI-T3.0.0.30204"
-#define FILE_VER_NUMBER 3, 0, 0, 30204
+#define PRODUCT_VER_STRING "3.0.0.30205"
+#define FILE_VER_STRING "WI-T3.0.0.30205"
+#define LICENSE_VER_STRING "WI-T3.0.0.30205"
+#define FILE_VER_NUMBER 3, 0, 0, 30205
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30204"
+#define FB_BUILD_NO "30205"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2013-01-31 00:33:23 UTC (rev 57634)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2013-01-31 05:37:28 UTC (rev 57635)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30204
+BuildNum=30205
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2013-02-09 06:16:26
       | 
| Revision: 57650
          http://sourceforge.net/p/firebird/code/57650
Author:   firebirds
Date:     2013-02-09 06:16:23 +0000 (Sat, 09 Feb 2013)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2013-02-09 05:47:19 UTC (rev 57649)
+++ firebird/trunk/ChangeLog	2013-02-09 06:16:23 UTC (rev 57650)
@@ -1,3 +1,25 @@
+ 2013-02-08 01:50  asfernandes 
+   M src/dsql/dsql.cpp
+Misc.
+
+ 2013-02-08 01:48  asfernandes 
+   M src/dsql/dsql.cpp
+   M src/jrd/ExtEngineManager.cpp
+   M src/jrd/met.epp
+   M src/jrd/par.cpp
+   M src/jrd/par_proto.h
+Parse BLR messages using BlrReader (and without duplicate code) to avoid segfaults with truncated or invalid data.
+
+ 2013-02-08 01:48  asfernandes 
+   M src/dsql/StmtNodes.cpp
+   M src/dsql/pass1.cpp
+   M src/dsql/pass1_proto.h
+Misc.
+
+ 2013-02-07 12:51  alexpeshkoff 
+   M examples/empbuild/empdml.sql
+Fixed employee build - avoid CHECK constraint errors
+
  2013-01-31 00:33  asfernandes 
    M src/common/cvt.cpp
 Misc.
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2013-02-09 05:47:19 UTC (rev 57649)
+++ firebird/trunk/src/jrd/build_no.h	2013-02-09 06:16:23 UTC (rev 57650)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30205
+  FORMAL BUILD NUMBER:30209
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30205"
-#define FILE_VER_STRING "WI-T3.0.0.30205"
-#define LICENSE_VER_STRING "WI-T3.0.0.30205"
-#define FILE_VER_NUMBER 3, 0, 0, 30205
+#define PRODUCT_VER_STRING "3.0.0.30209"
+#define FILE_VER_STRING "WI-T3.0.0.30209"
+#define LICENSE_VER_STRING "WI-T3.0.0.30209"
+#define FILE_VER_NUMBER 3, 0, 0, 30209
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30205"
+#define FB_BUILD_NO "30209"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2013-02-09 05:47:19 UTC (rev 57649)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2013-02-09 06:16:23 UTC (rev 57650)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30205
+BuildNum=30209
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2013-02-10 06:47:59
       | 
| Revision: 57651
          http://sourceforge.net/p/firebird/code/57651
Author:   firebirds
Date:     2013-02-10 06:47:56 +0000 (Sun, 10 Feb 2013)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2013-02-09 06:16:23 UTC (rev 57650)
+++ firebird/trunk/ChangeLog	2013-02-10 06:47:56 UTC (rev 57651)
@@ -1,3 +1,11 @@
+ 2013-02-09 05:47  dimitr 
+   M src/common/classes/Aligner.h
+Cleanup.
+
+ 2013-02-09 01:51  asfernandes 
+   M src/dsql/StmtNodes.cpp
+Fix SELECT FOR UPDATE problem related to r57615 change.
+
  2013-02-08 01:50  asfernandes 
    M src/dsql/dsql.cpp
 Misc.
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2013-02-09 06:16:23 UTC (rev 57650)
+++ firebird/trunk/src/jrd/build_no.h	2013-02-10 06:47:56 UTC (rev 57651)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30209
+  FORMAL BUILD NUMBER:30211
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30209"
-#define FILE_VER_STRING "WI-T3.0.0.30209"
-#define LICENSE_VER_STRING "WI-T3.0.0.30209"
-#define FILE_VER_NUMBER 3, 0, 0, 30209
+#define PRODUCT_VER_STRING "3.0.0.30211"
+#define FILE_VER_STRING "WI-T3.0.0.30211"
+#define LICENSE_VER_STRING "WI-T3.0.0.30211"
+#define FILE_VER_NUMBER 3, 0, 0, 30211
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30209"
+#define FB_BUILD_NO "30211"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2013-02-09 06:16:23 UTC (rev 57650)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2013-02-10 06:47:56 UTC (rev 57651)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30209
+BuildNum=30211
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <fir...@us...> - 2013-02-12 06:57:57
       | 
| Revision: 57656
          http://sourceforge.net/p/firebird/code/57656
Author:   firebirds
Date:     2013-02-12 06:57:51 +0000 (Tue, 12 Feb 2013)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2013-02-11 01:57:15 UTC (rev 57655)
+++ firebird/trunk/ChangeLog	2013-02-12 06:57:51 UTC (rev 57656)
@@ -1,3 +1,8 @@
+ 2013-02-11 01:57  asfernandes 
+   M src/dsql/ddl.cpp
+   M src/dsql/dsql.h
+Misc.
+
  2013-02-09 05:47  dimitr 
    M src/common/classes/Aligner.h
 Cleanup.
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2013-02-11 01:57:15 UTC (rev 57655)
+++ firebird/trunk/src/jrd/build_no.h	2013-02-12 06:57:51 UTC (rev 57656)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30211
+  FORMAL BUILD NUMBER:30212
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30211"
-#define FILE_VER_STRING "WI-T3.0.0.30211"
-#define LICENSE_VER_STRING "WI-T3.0.0.30211"
-#define FILE_VER_NUMBER 3, 0, 0, 30211
+#define PRODUCT_VER_STRING "3.0.0.30212"
+#define FILE_VER_STRING "WI-T3.0.0.30212"
+#define LICENSE_VER_STRING "WI-T3.0.0.30212"
+#define FILE_VER_NUMBER 3, 0, 0, 30212
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30211"
+#define FB_BUILD_NO "30212"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2013-02-11 01:57:15 UTC (rev 57655)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2013-02-12 06:57:51 UTC (rev 57656)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30211
+BuildNum=30212
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 | 
| 
      
      
      From: <asf...@us...> - 2013-02-15 02:48:58
       | 
| Revision: 57659
          http://sourceforge.net/p/firebird/code/57659
Author:   asfernandes
Date:     2013-02-15 02:48:54 +0000 (Fri, 15 Feb 2013)
Log Message:
-----------
Unifying the external engines API with the new ones.
Modified Paths:
--------------
    firebird/trunk/examples/udr/UdrCppExample.cpp
    firebird/trunk/src/include/FirebirdApi.h
    firebird/trunk/src/include/firebird/ExternalEngine.h
    firebird/trunk/src/include/firebird/UdrCppEngine.h
    firebird/trunk/src/include/firebird/UdrEngine.h
    firebird/trunk/src/jrd/ExtEngineManager.cpp
    firebird/trunk/src/jrd/ExtEngineManager.h
    firebird/trunk/src/plugins/udr_engine/UdrEngine.cpp
    firebird/trunk/src/yvalve/PluginManager.cpp
Removed Paths:
-------------
    firebird/trunk/src/jrd/ErrorImpl.cpp
    firebird/trunk/src/jrd/ErrorImpl.h
Modified: firebird/trunk/examples/udr/UdrCppExample.cpp
===================================================================
--- firebird/trunk/examples/udr/UdrCppExample.cpp	2013-02-15 01:21:40 UTC (rev 57658)
+++ firebird/trunk/examples/udr/UdrCppExample.cpp	2013-02-15 02:48:54 UTC (rev 57659)
@@ -589,10 +589,10 @@
 		isc_db_handle dbHandle = getIscDbHandle(context);
 		ISC_ULONG counter = 0;
 
-		ThrowError::check(isc_wait_for_event(statusVector, &dbHandle, eveLen, eveBuffer, eveResult),
+		StatusException::check(isc_wait_for_event(statusVector, &dbHandle, eveLen, eveBuffer, eveResult),
 			statusVector);
 		isc_event_counts(&counter, eveLen, eveBuffer, eveResult);
-		ThrowError::check(isc_wait_for_event(statusVector, &dbHandle, eveLen, eveBuffer, eveResult),
+		StatusException::check(isc_wait_for_event(statusVector, &dbHandle, eveLen, eveBuffer, eveResult),
 			statusVector);
 		isc_event_counts(&counter, eveLen, eveBuffer, eveResult);
 
@@ -616,13 +616,13 @@
 FB_UDR_BEGIN_FUNCTION(sum_args)
 	FB_UDR_EXECUTE_DYNAMIC_FUNCTION
 	{
-		AutoDispose<IStatus> status(master->getStatus());
+		///AutoDispose<IStatus> status(master->getStatus());
 
 		const IParametersMetadata* params = metadata->getInputParameters(status);
-		ThrowError::check(status->get());
+		StatusException::check(status->get());
 
 		unsigned count = params->getCount(status);
-		ThrowError::check(status->get());
+		StatusException::check(status->get());
 
 		MessageImpl inMessage(count, in);
 
@@ -859,13 +859,13 @@
 
 	FB_UDR_EXECUTE_DYNAMIC_TRIGGER
 	{
-		AutoDispose<IStatus> status(master->getStatus());
+		///AutoDispose<IStatus> status(master->getStatus());
 
 		const IParametersMetadata* fields = metadata->getTriggerFields(status);
-		ThrowError::check(status->get());
+		StatusException::check(status->get());
 
 		unsigned fieldsCount = fields->getCount(status);
-		ThrowError::check(status->get());
+		StatusException::check(status->get());
 
 		MessageImpl message(fieldsCount, newFields);
 
@@ -888,7 +888,7 @@
 			}
 		}
 
-		ThrowError::check(isc_dsql_execute(statusVector, &trHandle, &stmtHandle, SQL_DIALECT_CURRENT,
+		StatusException::check(isc_dsql_execute(statusVector, &trHandle, &stmtHandle, SQL_DIALECT_CURRENT,
 			inSqlDa), statusVector);
 	}
 
@@ -899,19 +899,19 @@
 		isc_tr_handle trHandle = getIscTrHandle(context);
 
 		stmtHandle = 0;
-		ThrowError::check(isc_dsql_allocate_statement(statusVector, &dbHandle, &stmtHandle), statusVector);
-		ThrowError::check(isc_dsql_prepare(statusVector, &trHandle, &stmtHandle, 0,
+		StatusException::check(isc_dsql_allocate_statement(statusVector, &dbHandle, &stmtHandle), statusVector);
+		StatusException::check(isc_dsql_prepare(statusVector, &trHandle, &stmtHandle, 0,
 			"select data_source from replicate_config where name = ?",
 			SQL_DIALECT_CURRENT, NULL), statusVector);
 
-		AutoDispose<IStatus> status(master->getStatus());
+		///AutoDispose<IStatus> status(master->getStatus());
 
 		const char* table = metadata->getTriggerTable(status);
-		ThrowError::check(status->get());
+		StatusException::check(status->get());
 
 		// Skip the first exclamation point, separating the module name and entry point.
 		const char* info = strchr(metadata->getEntryPoint(status), '!');
-		ThrowError::check(status->get());
+		StatusException::check(status->get());
 
 		// Skip the second exclamation point, separating the entry point and the misc info (config).
 		if (info)
@@ -925,7 +925,7 @@
 		inSqlDa = reinterpret_cast<XSQLDA*>(new char[(XSQLDA_LENGTH(1))]);
 		inSqlDa->version = SQLDA_VERSION1;
 		inSqlDa->sqln = 1;
-		ThrowError::check(isc_dsql_describe_bind(statusVector, &stmtHandle, SQL_DIALECT_CURRENT, inSqlDa),
+		StatusException::check(isc_dsql_describe_bind(statusVector, &stmtHandle, SQL_DIALECT_CURRENT, inSqlDa),
 			statusVector);
 		inSqlDa->sqlvar[0].sqldata = new char[sizeof(short) + inSqlDa->sqlvar[0].sqllen];
 		strncpy(inSqlDa->sqlvar[0].sqldata + sizeof(short), info, inSqlDa->sqlvar[0].sqllen);
@@ -934,24 +934,24 @@
 		XSQLDA* outSqlDa = reinterpret_cast<XSQLDA*>(new char[(XSQLDA_LENGTH(1))]);
 		outSqlDa->version = SQLDA_VERSION1;
 		outSqlDa->sqln = 1;
-		ThrowError::check(isc_dsql_describe(statusVector, &stmtHandle, SQL_DIALECT_CURRENT, outSqlDa),
+		StatusException::check(isc_dsql_describe(statusVector, &stmtHandle, SQL_DIALECT_CURRENT, outSqlDa),
 			statusVector);
 		outSqlDa->sqlvar[0].sqldata = new char[sizeof(short) + outSqlDa->sqlvar[0].sqllen + 1];
 		outSqlDa->sqlvar[0].sqldata[sizeof(short) + outSqlDa->sqlvar[0].sqllen] = '\0';
 
-		ThrowError::check(isc_dsql_execute2(statusVector, &trHandle, &stmtHandle, SQL_DIALECT_CURRENT,
+		StatusException::check(isc_dsql_execute2(statusVector, &trHandle, &stmtHandle, SQL_DIALECT_CURRENT,
 			inSqlDa, outSqlDa), statusVector);
-		ThrowError::check(isc_dsql_free_statement(statusVector, &stmtHandle, DSQL_unprepare), statusVector);
+		StatusException::check(isc_dsql_free_statement(statusVector, &stmtHandle, DSQL_unprepare), statusVector);
 
 		delete [] inSqlDa->sqlvar[0].sqldata;
 		delete [] reinterpret_cast<char*>(inSqlDa);
 		inSqlDa = NULL;
 
 		const IParametersMetadata* fields = metadata->getTriggerFields(status);
-		ThrowError::check(status->get());
+		StatusException::check(status->get());
 
 		unsigned count = fields->getCount(status);
-		ThrowError::check(status->get());
+		StatusException::check(status->get());
 
 		char buffer[65536];
 		strcpy(buffer, "execute block (\n");
@@ -962,7 +962,7 @@
 				strcat(buffer, ",\n");
 
 			const char* name = fields->getField(status, i);
-			ThrowError::check(status->get());
+			StatusException::check(status->get());
 
 			strcat(buffer, "    p");
 			sprintf(buffer + strlen(buffer), "%d type of column \"%s\".\"%s\" = ?", i, table, name);
@@ -983,7 +983,7 @@
 				strcat(buffer, ", ");
 
 			const char* name = fields->getField(status, i);
-			ThrowError::check(status->get());
+			StatusException::check(status->get());
 
 			strcat(buffer, "\"");
 			strcat(buffer, name);
@@ -1013,13 +1013,13 @@
 		strcat(buffer, outSqlDa->sqlvar[0].sqldata + sizeof(short));
 		strcat(buffer, "';\nend");
 
-		ThrowError::check(isc_dsql_prepare(statusVector, &trHandle, &stmtHandle, 0, buffer,
+		StatusException::check(isc_dsql_prepare(statusVector, &trHandle, &stmtHandle, 0, buffer,
 			SQL_DIALECT_CURRENT, NULL), statusVector);
 
 		inSqlDa = reinterpret_cast<XSQLDA*>(new char[(XSQLDA_LENGTH(count))]);
 		inSqlDa->version = SQLDA_VERSION1;
 		inSqlDa->sqln = count;
-		ThrowError::check(isc_dsql_describe_bind(statusVector, &stmtHandle, SQL_DIALECT_CURRENT, inSqlDa),
+		StatusException::check(isc_dsql_describe_bind(statusVector, &stmtHandle, SQL_DIALECT_CURRENT, inSqlDa),
 			statusVector);
 
 		for (unsigned i = 0; i < count; ++i)
@@ -1128,7 +1128,7 @@
 		isc_db_handle dbHandle = getIscDbHandle(context);
 		isc_tr_handle trHandle = getIscTrHandle(context);
 
-		ThrowError::check(isc_dsql_execute(statusVector, &trHandle, &stmtHandle, SQL_DIALECT_CURRENT,
+		StatusException::check(isc_dsql_execute(statusVector, &trHandle, &stmtHandle, SQL_DIALECT_CURRENT,
 			inSqlDa), statusVector);
 	}
 
@@ -1139,19 +1139,19 @@
 		isc_tr_handle trHandle = getIscTrHandle(context);
 
 		stmtHandle = 0;
-		ThrowError::check(isc_dsql_allocate_statement(statusVector, &dbHandle, &stmtHandle), statusVector);
-		ThrowError::check(isc_dsql_prepare(statusVector, &trHandle, &stmtHandle, 0,
+		StatusException::check(isc_dsql_allocate_statement(statusVector, &dbHandle, &stmtHandle), statusVector);
+		StatusException::check(isc_dsql_prepare(statusVector, &trHandle, &stmtHandle, 0,
 			"select data_source from replicate_config where name = ?",
 			SQL_DIALECT_CURRENT, NULL), statusVector);
 
-		AutoDispose<IStatus> status(master->getStatus());
+		///AutoDispose<IStatus> status(master->getStatus());
 
 		const char* table = metadata->getTriggerTable(status);
-		ThrowError::check(status->get());
+		StatusException::check(status->get());
 
 		// Skip the first exclamation point, separating the module name and entry point.
 		const char* info = strchr(metadata->getEntryPoint(status), '!');
-		ThrowError::check(status->get());
+		StatusException::check(status->get());
 
 		// Skip the second exclamation point, separating the entry point and the misc info (config).
 		if (info)
@@ -1165,7 +1165,7 @@
 		inSqlDa = reinterpret_cast<XSQLDA*>(new char[(XSQLDA_LENGTH(1))]);
 		inSqlDa->version = SQLDA_VERSION1;
 		inSqlDa->sqln = 1;
-		ThrowError::check(isc_dsql_describe_bind(statusVector, &stmtHandle, SQL_DIALECT_CURRENT, inSqlDa),
+		StatusException::check(isc_dsql_describe_bind(statusVector, &stmtHandle, SQL_DIALECT_CURRENT, inSqlDa),
 			statusVector);
 		inSqlDa->sqlvar[0].sqldata = new char[sizeof(short) + inSqlDa->sqlvar[0].sqllen];
 		strncpy(inSqlDa->sqlvar[0].sqldata + sizeof(short), info, inSqlDa->sqlvar[0].sqllen);
@@ -1174,24 +1174,24 @@
 		XSQLDA* outSqlDa = reinterpret_cast<XSQLDA*>(new char[(XSQLDA_LENGTH(1))]);
 		outSqlDa->version = SQLDA_VERSION1;
 		outSqlDa->sqln = 1;
-		ThrowError::check(isc_dsql_describe(statusVector, &stmtHandle, SQL_DIALECT_CURRENT, outSqlDa),
+		StatusException::check(isc_dsql_describe(statusVector, &stmtHandle, SQL_DIALECT_CURRENT, outSqlDa),
 			statusVector);
 		outSqlDa->sqlvar[0].sqldata = new char[sizeof(short) + outSqlDa->sqlvar[0].sqllen + 1];
 		outSqlDa->sqlvar[0].sqldata[sizeof(short) + outSqlDa->sqlvar[0].sqllen] = '\0';
 
-		ThrowError::check(isc_dsql_execute2(statusVector, &trHandle, &stmtHandle, SQL_DIALECT_CURRENT,
+		StatusException::check(isc_dsql_execute2(statusVector, &trHandle, &stmtHandle, SQL_DIALECT_CURRENT,
 			inSqlDa, outSqlDa), statusVector);
-		ThrowError::check(isc_dsql_free_statement(statusVector, &stmtHandle, DSQL_unprepare), statusVector);
+		StatusException::check(isc_dsql_free_statement(statusVector, &stmtHandle, DSQL_unprepare), statusVector);
 
 		delete [] inSqlDa->sqlvar[0].sqldata;
 		delete [] reinterpret_cast<char*>(inSqlDa);
 		inSqlDa = NULL;
 
 		const IParametersMetadata* fields = metadata->getTriggerFields(status);
-		ThrowError::check(status->get());
+		StatusException::check(status->get());
 
 		unsigned count = fields->getCount(status);
-		ThrowError::check(status->get());
+		StatusException::check(status->get());
 
 		char buffer[65536];
 		strcpy(buffer,
@@ -1209,13 +1209,13 @@
 		strcat(buffer, outSqlDa->sqlvar[0].sqldata + sizeof(short));
 		strcat(buffer, "';\nend");
 
-		ThrowError::check(isc_dsql_prepare(statusVector, &trHandle, &stmtHandle, 0, buffer,
+		StatusException::check(isc_dsql_prepare(statusVector, &trHandle, &stmtHandle, 0, buffer,
 			SQL_DIALECT_CURRENT, NULL), statusVector);
 
 		inSqlDa = reinterpret_cast<XSQLDA*>(new char[(XSQLDA_LENGTH(4))]);
 		inSqlDa->version = SQLDA_VERSION1;
 		inSqlDa->sqln = 4;
-		ThrowError::check(isc_dsql_describe_bind(statusVector, &stmtHandle, SQL_DIALECT_CURRENT, inSqlDa),
+		StatusException::check(isc_dsql_describe_bind(statusVector, &stmtHandle, SQL_DIALECT_CURRENT, inSqlDa),
 			statusVector);
 
 		for (unsigned i = 0; i < 4; ++i)
Modified: firebird/trunk/src/include/FirebirdApi.h
===================================================================
--- firebird/trunk/src/include/FirebirdApi.h	2013-02-15 01:21:40 UTC (rev 57658)
+++ firebird/trunk/src/include/FirebirdApi.h	2013-02-15 02:48:54 UTC (rev 57659)
@@ -61,20 +61,12 @@
 #endif
 
 
-class Error
-{
-public:
-	virtual bool FB_CALL addCode(int32 code) = 0;
-	virtual bool FB_CALL addString(const char* str, uint strLength) = 0;
-};
-
-
 // Interface used in cases which an instance is created by one layer and released by another one.
 class Disposable
 {
 public:
 	// Disposes the object.
-	virtual void FB_CALL dispose(Error* error) = 0;
+	virtual void FB_CALL dispose() = 0;
 };
 
 
Modified: firebird/trunk/src/include/firebird/ExternalEngine.h
===================================================================
--- firebird/trunk/src/include/firebird/ExternalEngine.h	2013-02-15 01:21:40 UTC (rev 57658)
+++ firebird/trunk/src/include/firebird/ExternalEngine.h	2013-02-15 02:48:54 UTC (rev 57659)
@@ -64,15 +64,18 @@
 class ExternalContext
 {
 public:
+	// Gets the IMaster associated with this context.
+	virtual IMaster* FB_CALL getMaster() = 0;
+
 	// Gets the ExternalEngine associated with this context.
-	virtual ExternalEngine* FB_CALL getEngine(Error* error) = 0;
+	virtual ExternalEngine* FB_CALL getEngine(IStatus* status) = 0;
 
 	// Gets the Attachment associated with this context.
-	virtual IAttachment* FB_CALL getAttachment(Error* error) = 0;
+	virtual IAttachment* FB_CALL getAttachment(IStatus* status) = 0;
 
 	// Obtained transaction is valid only before control is returned to the engine
 	// or in ExternalResultSet::fetch calls of correspondent ExternalProcedure::open.
-	virtual ITransaction* FB_CALL getTransaction(Error* error) = 0;
+	virtual ITransaction* FB_CALL getTransaction(IStatus* status) = 0;
 
 	virtual const char* FB_CALL getUserName() = 0;
 	virtual const char* FB_CALL getDatabaseName() = 0;
@@ -95,7 +98,7 @@
 class ExternalResultSet : public Disposable
 {
 public:
-	virtual bool FB_CALL fetch(Error* error) = 0;
+	virtual bool FB_CALL fetch(IStatus* status) = 0;
 };
 
 
@@ -105,10 +108,10 @@
 	// This method is called just before execute and informs the engine our requested character
 	// set for data exchange inside that method.
 	// During this call, the context uses the character set obtained from ExternalEngine::getCharSet.
-	virtual void FB_CALL getCharSet(Error* error, ExternalContext* context,
+	virtual void FB_CALL getCharSet(IStatus* status, ExternalContext* context,
 		Utf8* name, uint nameSize) = 0;
 
-	virtual void FB_CALL execute(Error* error, ExternalContext* context,
+	virtual void FB_CALL execute(IStatus* status, ExternalContext* context,
 		void* inMsg, void* outMsg) = 0;
 };
 
@@ -119,13 +122,13 @@
 	// This method is called just before open and informs the engine our requested character
 	// set for data exchange inside that method and ExternalResultSet::fetch.
 	// During this call, the context uses the character set obtained from ExternalEngine::getCharSet.
-	virtual void FB_CALL getCharSet(Error* error, ExternalContext* context,
+	virtual void FB_CALL getCharSet(IStatus* status, ExternalContext* context,
 		Utf8* name, uint nameSize) = 0;
 
 	// Returns a ExternalResultSet for selectable procedures.
 	// Returning NULL results in a result set of one record.
 	// Procedures without output parameters should return NULL.
-	virtual ExternalResultSet* FB_CALL open(Error* error, ExternalContext* context,
+	virtual ExternalResultSet* FB_CALL open(IStatus* status, ExternalContext* context,
 		void* inMsg, void* outMsg) = 0;
 };
 
@@ -157,10 +160,10 @@
 	// This method is called just before execute and informs the engine our requested character
 	// set for data exchange inside that method.
 	// During this call, the context uses the character set obtained from ExternalEngine::getCharSet.
-	virtual void FB_CALL getCharSet(Error* error, ExternalContext* context,
+	virtual void FB_CALL getCharSet(IStatus* status, ExternalContext* context,
 		Utf8* name, uint nameSize) = 0;
 
-	virtual void FB_CALL execute(Error* error, ExternalContext* context,
+	virtual void FB_CALL execute(IStatus* status, ExternalContext* context,
 		Action action, void* oldMsg, void* newMsg) = 0;
 };
 
@@ -190,22 +193,22 @@
 	// The requested character set for data exchange inside methods of this interface should
 	// be copied to charSet parameter.
 	// During this call, the context uses the UTF-8 character set.
-	virtual void FB_CALL open(Error* error, ExternalContext* context,
+	virtual void FB_CALL open(IStatus* status, ExternalContext* context,
 		Utf8* charSet, uint charSetSize) = 0;
 
 	// Attachment is being opened.
-	virtual void FB_CALL openAttachment(Error* error, ExternalContext* context) = 0;
+	virtual void FB_CALL openAttachment(IStatus* status, ExternalContext* context) = 0;
 
 	// Attachment is being closed.
-	virtual void FB_CALL closeAttachment(Error* error, ExternalContext* context) = 0;
+	virtual void FB_CALL closeAttachment(IStatus* status, ExternalContext* context) = 0;
 
 	// Called when engine wants to load object in the cache. Objects are disposed when
 	// going out of the cache.
-	virtual ExternalFunction* FB_CALL makeFunction(Error* error, ExternalContext* context,
+	virtual ExternalFunction* FB_CALL makeFunction(IStatus* status, ExternalContext* context,
 		const IRoutineMetadata* metadata, IRoutineMessage* inMsg, IRoutineMessage* outMsg) = 0;
-	virtual ExternalProcedure* FB_CALL makeProcedure(Error* error, ExternalContext* context,
+	virtual ExternalProcedure* FB_CALL makeProcedure(IStatus* status, ExternalContext* context,
 		const IRoutineMetadata* metadata, IRoutineMessage* inMsg, IRoutineMessage* outMsg) = 0;
-	virtual ExternalTrigger* FB_CALL makeTrigger(Error* error, ExternalContext* context,
+	virtual ExternalTrigger* FB_CALL makeTrigger(IStatus* status, ExternalContext* context,
 		const IRoutineMetadata* metadata, ITriggerMessage* triggerMsg) = 0;
 };
 #define FB_EXTERNAL_ENGINE_VERSION (FB_PLUGIN_VERSION + 6)
Modified: firebird/trunk/src/include/firebird/UdrCppEngine.h
===================================================================
--- firebird/trunk/src/include/firebird/UdrCppEngine.h	2013-02-15 01:21:40 UTC (rev 57658)
+++ firebird/trunk/src/include/firebird/UdrCppEngine.h	2013-02-15 02:48:54 UTC (rev 57659)
@@ -53,7 +53,7 @@
 	class FB_UDR_FUNCTION(name) : public ::Firebird::Udr::Function<FB_UDR_FUNCTION(name)>	\
 	{	\
 	public:	\
-		void initialize(::Firebird::Error* error, void*)	\
+		void initialize(::Firebird::IStatus* /*status*/, void*)	\
 		{	\
 		}
 
@@ -85,17 +85,17 @@
 	FB_UDR_EXECUTE__FUNCTION
 
 #define FB_UDR_EXECUTE__FUNCTION	\
-	virtual void FB_CALL execute(::Firebird::Error* error, ::Firebird::ExternalContext* context, \
+	virtual void FB_CALL execute(::Firebird::IStatus* status, ::Firebird::ExternalContext* context, \
 		void* in, void* out)	\
 	{	\
 		try	\
 		{	\
-			internalExecute(error, context, (InMessage*) in, (OutMessage*) out);	\
+			internalExecute(status, context, (InMessage*) in, (OutMessage*) out);	\
 		}	\
 		FB_UDR__CATCH	\
 	}	\
 	\
-	void internalExecute(::Firebird::Error* error, ::Firebird::ExternalContext* context, \
+	void internalExecute(::Firebird::IStatus* status, ::Firebird::ExternalContext* context, \
 		InMessage* in, OutMessage* out)
 
 
@@ -109,7 +109,7 @@
 	public:	\
 		typedef FB_UDR_PROCEDURE(name) This;	\
 		\
-		void initialize(::Firebird::Error* error, void*)	\
+		void initialize(::Firebird::IStatus* /*status*/, void*)	\
 		{	\
 		}
 
@@ -150,12 +150,12 @@
 	FB_UDR_EXECUTE__PROCEDURE
 
 #define FB_UDR_EXECUTE__PROCEDURE	\
-	virtual ::Firebird::ExternalResultSet* FB_CALL open(::Firebird::Error* error, \
+	virtual ::Firebird::ExternalResultSet* FB_CALL open(::Firebird::IStatus* status, \
 		::Firebird::ExternalContext* context, void* in, void* out)	\
 	{	\
 		try	\
 		{	\
-			return new ResultSet(error, context, this, (InMessage*) in, (OutMessage*) out);	\
+			return new ResultSet(status, context, this, (InMessage*) in, (OutMessage*) out);	\
 		}	\
 		FB_UDR__CATCH	\
 		\
@@ -165,24 +165,24 @@
 	class ResultSet : public ::Firebird::Udr::ResultSet<ResultSet, This, InMessage, OutMessage>	\
 	{	\
 	public:	\
-		ResultSet(::Firebird::Error* error, ::Firebird::ExternalContext* context,	\
+		ResultSet(::Firebird::IStatus* status, ::Firebird::ExternalContext* context,	\
 				This* const procedure, InMessage* const in, OutMessage* const out)	\
 			: ::Firebird::Udr::ResultSet<ResultSet, This, InMessage, OutMessage>(	\
 					context, procedure, in, out)
 
 #define FB_UDR_FETCH_PROCEDURE	\
-	virtual bool FB_CALL fetch(::Firebird::Error* error)	\
+	virtual bool FB_CALL fetch(::Firebird::IStatus* status)	\
 	{	\
 		try	\
 		{	\
-			return internalFetch(error);	\
+			return internalFetch(status);	\
 		}	\
 		FB_UDR__CATCH	\
 		\
 		return 0;	\
 	}	\
 	\
-	bool internalFetch(::Firebird::Error* error)
+	bool internalFetch(::Firebird::IStatus* status)
 
 
 #define FB_UDR_BEGIN_TRIGGER(name)	\
@@ -194,7 +194,7 @@
 	{	\
 	public:	\
 		\
-		void initialize(::Firebird::Error* error, void*)	\
+		void initialize(::Firebird::IStatus* /*status*/, void*)	\
 		{	\
 		}
 
@@ -214,162 +214,54 @@
 	FB_UDR_EXECUTE__TRIGGER
 
 #define FB_UDR_EXECUTE__TRIGGER	\
-	virtual void FB_CALL execute(::Firebird::Error* error, ::Firebird::ExternalContext* context,	\
+	virtual void FB_CALL execute(::Firebird::IStatus* status, ::Firebird::ExternalContext* context,	\
 		::Firebird::ExternalTrigger::Action action, void* oldFields, void* newFields)	\
 	{	\
 		try	\
 		{	\
-			internalExecute(error, context, action, (FieldsMessage*) oldFields, (FieldsMessage*) newFields);	\
+			internalExecute(status, context, action, (FieldsMessage*) oldFields, (FieldsMessage*) newFields);	\
 		}	\
 		FB_UDR__CATCH	\
 	}	\
 	\
-	void internalExecute(::Firebird::Error* error, ::Firebird::ExternalContext* context,	\
+	void internalExecute(::Firebird::IStatus* status, ::Firebird::ExternalContext* context,	\
 		::Firebird::ExternalTrigger::Action action, FieldsMessage* oldFields, FieldsMessage* newFields)
 
 
 #define FB_UDR_INITIALIZE	\
-	void initialize(::Firebird::Error* error, ExternalContext* context)	\
+	void initialize(::Firebird::IStatus* status, ExternalContext* context)	\
 	{	\
 		try	\
 		{	\
-			internalInitialize(error, context);	\
+			internalInitialize(status, context);	\
 		}	\
 		FB_UDR__CATCH	\
 	}	\
 	\
-	void internalInitialize(::Firebird::Error* error, ::Firebird::ExternalContext* context)
+	void internalInitialize(::Firebird::IStatus* status, ::Firebird::ExternalContext* context)
 
 
 #define FB_UDR__CATCH	\
-	catch (const ::Firebird::Udr::ThrowError::Exception& e)	\
+	catch (const ::Firebird::Udr::StatusException& e)	\
 	{	\
-		e.stuff(error);	\
+		e.stuff(status);	\
 	}	\
 	catch (...)	\
 	{	\
-		const char exceptionText[] = "Unrecognized C++ exception";	\
-		\
-		error->addCode(isc_arg_gds);	\
-		error->addCode(isc_random);	\
-		error->addString(exceptionText, sizeof(exceptionText) - 1);	\
+		ISC_STATUS statusVector[] = {	\
+			isc_arg_gds, isc_random, isc_arg_string, (ISC_STATUS) "Unrecognized C++ exception",	\
+			isc_arg_end};	\
+		status->set(statusVector);	\
 	}
 
 
-class ThrowError : public Error
+class StatusException
 {
-private:
-	struct Info
-	{
-		Info()
-			: next(FB_NULL),
-			  str(FB_NULL)
-		{
-		}
-
-		~Info()
-		{
-			if (str)
-				delete [] str;
-		}
-
-		static void free(Info* info)
-		{
-			while (info)
-			{
-				Info* p = info;
-				info = info->next;
-				delete p;
-			}
-		}
-
-		enum { TYPE_CODE, TYPE_STR } type;
-
-		Info* next;
-		int32 code;
-		char* str;
-		int strLength;
-	};
-
 public:
-	class Exception
+	StatusException(const ISC_STATUS* vector)
 	{
-	public:
-		explicit Exception(Info* aInfo)
-			: info(aInfo)
-		{
-		}
+		ISC_STATUS* p = statusVector;
 
-		Exception(const Exception& e)
-			: info(FB_NULL)
-		{
-			Info* end = FB_NULL;
-
-			for (const Info* p = e.info; p; p = p->next)
-			{
-				Info* newInfo = new Info;
-				newInfo->type = p->type;
-				newInfo->code = p->code;
-
-				if (p->str)
-				{
-					newInfo->str = new char[p->strLength];
-					memcpy(newInfo->str, p->str, p->strLength);
-					newInfo->strLength = p->strLength;
-				}
-
-				if (end)
-					end->next = newInfo;
-
-				end = newInfo;
-
-				if (!info)
-					info = newInfo;
-			}
-		}
-
-		~Exception()
-		{
-			Info::free(info);
-		}
-
-	public:
-		void stuff(Error* error) const
-		{
-			for (const Info* p = info; p; p = p->next)
-			{
-				if (p->type == Info::TYPE_CODE)
-					error->addCode(p->code);
-				else if (p->type == Info::TYPE_STR)
-					error->addString(p->str, p->strLength);
-			}
-		}
-
-	private:
-		Info* info;
-	};
-
-public:
-	ThrowError()
-		: start(FB_NULL),
-		  end(FB_NULL)
-	{
-	}
-
-	virtual ~ThrowError()
-	{
-		raise();
-		Info::free(start);
-	}
-
-public:
-	static void check(ISC_STATUS status, const ISC_STATUS* vector)
-	{
-		if (status == 0)
-			return;
-
-		ThrowError error;
-
 		while (*vector != isc_arg_end)
 		{
 			switch (*vector)
@@ -381,84 +273,122 @@
 				case isc_arg_vms:
 				case isc_arg_unix:
 				case isc_arg_win32:
-					error.addCode(*vector++);
-					error.addCode(*vector++);
+					*p++ = *vector++;
+					*p++ = *vector++;
 					break;
 
 				case isc_arg_string:
-					error.addString((const char*) vector[1], strlen((const char*) vector[1]));
-					vector += 2;
+					*p++ = *vector++;
+					*p++ = *vector++;
 					break;
 
 				case isc_arg_cstring:
-					error.addString((const char*) vector[2], vector[1]);
-					vector += 3;
+					*p++ = *vector++;
+					*p++ = *vector++;
+					*p++ = *vector++;
 					break;
 
 				default:
 					return;
 			}
 		}
+
+		*p = isc_arg_end;
 	}
 
+public:
 	static void check(const ISC_STATUS* vector)
 	{
-		check(vector[1], vector);
+		if (vector[1])
+			throw StatusException(vector);
 	}
 
-public:
-	inline operator Firebird::Error* ()
+	static void check(ISC_STATUS status, const ISC_STATUS* vector)
 	{
-		return this;
+		if (status == 0)
+			return;
+
+		check(vector);
 	}
 
 public:
-	virtual bool FB_CALL addCode(Firebird::int32 code)
+	const ISC_STATUS* getStatusVector() const
 	{
-		Info* info = new Info;
-		info->type = Info::TYPE_CODE;
-		info->code = code;
+		return statusVector;
+	}
 
-		if (end)
-			end->next = info;
+	void stuff(IStatus* status) const
+	{
+		status->set(statusVector);
+	}
 
-		end = info;
+private:
+	ISC_STATUS_ARRAY statusVector;
+};
 
-		if (!start)
-			start = info;
+class StatusImpl : public IStatus
+{
+public:
+	StatusImpl(IMaster* master)
+		: delegate(master->getStatus()),
+		  success(true)
+	{
+	}
 
-		return true;
+	virtual int FB_CARG getVersion()
+	{
+		return FB_STATUS_VERSION;
 	}
 
-	virtual bool FB_CALL addString(const char* str, uint strLength)
+	virtual IPluginModule* FB_CARG getModule()
 	{
-		Info* info = new Info;
-		info->type = Info::TYPE_STR;
-		info->str = new char[strLength];
-		memcpy(info->str, str, strLength);
-		info->strLength = strLength;
+		return NULL;
+	}
 
-		if (end)
-			end->next = info;
+	virtual void FB_CARG dispose()
+	{
+		delegate->dispose();
+		delete this;
+	}
 
-		end = info;
+	virtual void FB_CARG set(unsigned int length, const ISC_STATUS* value)
+	{
+		delegate->set(length, value);
+		success = delegate->isSuccess();
+	}
 
-		if (!start)
-			start = info;
+	virtual void FB_CARG set(const ISC_STATUS* value)
+	{
+		delegate->set(value);
+		success = delegate->isSuccess();
+	}
 
-		return true;
+	virtual void FB_CARG init()
+	{
+		delegate->init();
+		success = true;
 	}
 
-private:
-	void raise()
+	virtual const ISC_STATUS* FB_CARG get() const
 	{
-		if (start)
-			throw Exception(start);
+		return delegate->get();
 	}
 
-protected:
-	Info* start;
-	Info* end;
+	virtual int FB_CARG isSuccess() const
+	{
+		return success;
+	}
+
+public:
+	void check()
+	{
+		if (!success)
+			StatusException::check(delegate->get());
+	}
+
+private:
+	IStatus* delegate;
+	bool success;
 };
 
 
@@ -470,19 +400,33 @@
 public:
 	static isc_db_handle getIscDbHandle(ExternalContext* context)
 	{
-		ISC_STATUS_ARRAY status = {0};
+		StatusImpl status(context->getMaster());
+
+		IAttachment* attachment = context->getAttachment(&status);
+		status.check();
+
+		ISC_STATUS_ARRAY statusVector = {0};
 		isc_db_handle handle = 0;
-		fb_get_database_handle(status, &handle, context->getAttachment(ThrowError()));
-		ThrowError::check(status);
+
+		fb_get_database_handle(statusVector, &handle, attachment);
+		StatusException::check(statusVector);
+
 		return handle;
 	}
 
 	static isc_tr_handle getIscTrHandle(ExternalContext* context)
 	{
-		ISC_STATUS_ARRAY status = {0};
+		StatusImpl status(context->getMaster());
+
+		ITransaction* transaction = context->getTransaction(&status);
+		status.check();
+
+		ISC_STATUS_ARRAY statusVector = {0};
 		isc_tr_handle handle = 0;
-		fb_get_transaction_handle(status, &handle, context->getTransaction(ThrowError()));
-		ThrowError::check(status);
+
+		fb_get_transaction_handle(statusVector, &handle, transaction);
+		StatusException::check(statusVector);
+
 		return handle;
 	}
 };
@@ -492,7 +436,7 @@
 class ResultSet : public ExternalResultSet, public Helper
 {
 public:
-	ResultSet(Firebird::ExternalContext* aContext, Procedure* aProcedure,
+	ResultSet(ExternalContext* aContext, Procedure* aProcedure,
 				InMessage* aIn, OutMessage* aOut)
 		: context(aContext),
 		  procedure(aProcedure),
@@ -502,13 +446,13 @@
 	}
 
 public:
-	virtual void FB_CALL dispose(Firebird::Error* /*error*/)
+	virtual void FB_CALL dispose()
 	{
 		delete static_cast<This*>(this);
 	}
 
 protected:
-	Firebird::ExternalContext* const context;
+	ExternalContext* const context;
 	Procedure* const procedure;
 	InMessage* const in;
 	OutMessage* const out;
@@ -531,12 +475,12 @@
 class Function : public ExternalFunction, public Helper
 {
 public:
-	virtual void FB_CALL dispose(Error* /*error*/)
+	virtual void FB_CALL dispose()
 	{
 		delete static_cast<This*>(this);
 	}
 
-	virtual void FB_CALL getCharSet(Error* /*error*/, ExternalContext* /*context*/,
+	virtual void FB_CALL getCharSet(IStatus* /*status*/, ExternalContext* /*context*/,
 		Utf8* /*name*/, uint /*nameSize*/)
 	{
 	}
@@ -562,12 +506,12 @@
 class Procedure : public ExternalProcedure, public Helper
 {
 public:
-	virtual void FB_CALL dispose(Error* /*error*/)
+	virtual void FB_CALL dispose()
 	{
 		delete static_cast<This*>(this);
 	}
 
-	virtual void FB_CALL getCharS...
 
[truncated message content] | 
| 
      
      
      From: <fir...@us...> - 2013-02-16 01:06:10
       | 
| Revision: 57661
          http://sourceforge.net/p/firebird/code/57661
Author:   firebirds
Date:     2013-02-16 01:06:07 +0000 (Sat, 16 Feb 2013)
Log Message:
-----------
nightly update
Modified Paths:
--------------
    firebird/trunk/ChangeLog
    firebird/trunk/src/jrd/build_no.h
    firebird/trunk/src/misc/writeBuildNum.sh
Modified: firebird/trunk/ChangeLog
===================================================================
--- firebird/trunk/ChangeLog	2013-02-15 08:49:39 UTC (rev 57660)
+++ firebird/trunk/ChangeLog	2013-02-16 01:06:07 UTC (rev 57661)
@@ -1,3 +1,17 @@
+ 2013-02-15 02:48  asfernandes 
+   M examples/udr/UdrCppExample.cpp
+   M src/include/FirebirdApi.h
+   M src/include/firebird/ExternalEngine.h
+   M src/include/firebird/UdrCppEngine.h
+   M src/include/firebird/UdrEngine.h
+   D src/jrd/ErrorImpl.cpp
+   D src/jrd/ErrorImpl.h
+   M src/jrd/ExtEngineManager.cpp
+   M src/jrd/ExtEngineManager.h
+   M src/plugins/udr_engine/UdrEngine.cpp
+   M src/yvalve/PluginManager.cpp
+Unifying the external engines API with the new ones.
+
  2013-02-11 01:57  asfernandes 
    M src/dsql/ddl.cpp
    M src/dsql/dsql.h
Modified: firebird/trunk/src/jrd/build_no.h
===================================================================
--- firebird/trunk/src/jrd/build_no.h	2013-02-15 08:49:39 UTC (rev 57660)
+++ firebird/trunk/src/jrd/build_no.h	2013-02-16 01:06:07 UTC (rev 57661)
@@ -3,16 +3,16 @@
                *** DO NOT EDIT ***
   TO CHANGE ANY INFORMATION IN HERE PLEASE
   EDIT src/misc/writeBuildNum.sh
-  FORMAL BUILD NUMBER:30212
+  FORMAL BUILD NUMBER:30213
 */
 
-#define PRODUCT_VER_STRING "3.0.0.30212"
-#define FILE_VER_STRING "WI-T3.0.0.30212"
-#define LICENSE_VER_STRING "WI-T3.0.0.30212"
-#define FILE_VER_NUMBER 3, 0, 0, 30212
+#define PRODUCT_VER_STRING "3.0.0.30213"
+#define FILE_VER_STRING "WI-T3.0.0.30213"
+#define LICENSE_VER_STRING "WI-T3.0.0.30213"
+#define FILE_VER_NUMBER 3, 0, 0, 30213
 #define FB_MAJOR_VER "3"
 #define FB_MINOR_VER "0"
 #define FB_REV_NO "0"
-#define FB_BUILD_NO "30212"
+#define FB_BUILD_NO "30213"
 #define FB_BUILD_TYPE "T"
 #define FB_BUILD_SUFFIX "Firebird 3.0 Unstable"
Modified: firebird/trunk/src/misc/writeBuildNum.sh
===================================================================
--- firebird/trunk/src/misc/writeBuildNum.sh	2013-02-15 08:49:39 UTC (rev 57660)
+++ firebird/trunk/src/misc/writeBuildNum.sh	2013-02-16 01:06:07 UTC (rev 57661)
@@ -9,7 +9,7 @@
 MajorVer=3
 MinorVer=0
 RevNo=0
-BuildNum=30212
+BuildNum=30213
 
 NowAt=`pwd`
 cd `dirname $0`
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
 |