User: ihi Date: 2006/08/04 06:50:12 Modified: dba/connectivity/source/parse/sqliterator.cxx
Log: INTEGRATION: CWS dba204c (1.48.8); FILE MERGED 2006/07/26 10:25:25 fs 1.48.8.1: #66596# getTableNode: add forgotten case table_ref := table_node File Changes: Directory: /dba/connectivity/source/parse/ ========================================== File [changed]: sqliterator.cxx Url: http://dba.openoffice.org/source/browse/dba/connectivity/source/parse/sqliterator.cxx?r1=1.48&r2=1.49 Delta lines: +13 -8 -------------------- --- sqliterator.cxx 10 Jul 2006 14:38:34 -0000 1.48 +++ sqliterator.cxx 4 Aug 2006 13:50:09 -0000 1.49 @@ -530,7 +530,7 @@ traverseOneTableName( _rTables, pNode, aTableRange ); } //----------------------------------------------------------------------------- -const OSQLParseNode* OSQLParseTreeIterator::getTableNode( OSQLTables& _rTables, const OSQLParseNode *pTableRef,::rtl::OUString& aTableRange ) +const OSQLParseNode* OSQLParseTreeIterator::getTableNode( OSQLTables& _rTables, const OSQLParseNode *pTableRef,::rtl::OUString& rTableRange ) { OSL_PRECOND( SQL_ISRULE( pTableRef, table_ref ) || SQL_ISRULE( pTableRef, joined_table ) || SQL_ISRULE( pTableRef, qualified_join ) || SQL_ISRULE( pTableRef, cross_union ) @@ -541,11 +541,11 @@ if ( SQL_ISRULE( pTableRef, joined_table ) ) { - getQualified_join( _rTables, pTableRef->getChild(1), aTableRange ); + getQualified_join( _rTables, pTableRef->getChild(1), rTableRange ); } else if ( SQL_ISRULE( pTableRef, qualified_join ) || SQL_ISRULE( pTableRef, cross_union ) ) { - getQualified_join( _rTables, pTableRef, aTableRange ); + getQualified_join( _rTables, pTableRef, rTableRange ); } else { @@ -553,12 +553,12 @@ { if ( SQL_ISPUNCTUATION( pTableRef->getChild(0), "{" ) ) { // { OJ joined_table } - getQualified_join( _rTables, pTableRef->getChild(2), aTableRange ); + getQualified_join( _rTables, pTableRef->getChild(2), rTableRange ); } else { // table_node as range_variable op_column_commalist pTableNameNode = pTableRef->getChild(0); - aTableRange = pTableRef->getChild(2)->getTokenValue(); + rTableRange = pTableRef->getChild(2)->getTokenValue(); } } else if ( pTableRef->count() == 3 ) @@ -569,7 +569,7 @@ if ( SQL_ISRULE( pQueryExpression, select_statement ) ) { getSelect_statement( *m_pImpl->m_pSubTables, pQueryExpression ); - aTableRange = pTableRef->getChild(2)->getTokenValue(); + rTableRange = pTableRef->getChild(2)->getTokenValue(); } else { @@ -579,8 +579,13 @@ else if ( pTableRef->count() == 6 ) { // '(' joined_table ')' as range_variable op_column_commalist - getQualified_join( _rTables, pTableRef->getChild(1), aTableRange ); - aTableRange = pTableRef->getChild(4)->getTokenValue(); + getQualified_join( _rTables, pTableRef->getChild(1), rTableRange ); + rTableRange = pTableRef->getChild(4)->getTokenValue(); + } + else if ( pTableRef->count() == 1 ) + { + // table_node + pTableNameNode = pTableRef->getChild(0); } else OSL_ENSURE( false, "OSQLParseTreeIterator::getTableNode: unhandled case!" ); --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
