Refactor common code a bit

git-svn-id: svn+ssh://svn.code.sf.net/p/firebird/code/firebird/trunk@58924 65644016-39b1-43b1-bf79-96bc8fe82c15
No need to maintain precedence for temporary blobs. Use correct page space for precedence.

git-svn-id: svn+ssh://svn.code.sf.net/p/firebird/code/firebird/trunk@58925 65644016-39b1-43b1-bf79-96bc8fe82c15
Fixed the issue with recursive CTEs reported by Philippe in firebird-devel.

git-svn-id: svn+ssh://svn.code.sf.net/p/firebird/code/firebird/trunk@58926 65644016-39b1-43b1-bf79-96bc8fe82c15
Fixed bug CORE-4297 : Gfix crashed when description of limbo transaction have size large than 1KB

git-svn-id: svn+ssh://svn.code.sf.net/p/firebird/code/firebird/trunk@58927 65644016-39b1-43b1-bf79-96bc8fe82c15
Protected from unexpected operations with a closed stream.

git-svn-id: svn+ssh://svn.code.sf.net/p/firebird/code/firebird/trunk@58929 65644016-39b1-43b1-bf79-96bc8fe82c15