summaryrefslogtreecommitdiff
path: root/connectivity
diff options
context:
space:
mode:
authorLionel Elie Mamane <lionel@mamane.lu>2021-03-27 15:44:08 +0100
committerLionel Mamane <lionel@mamane.lu>2021-03-27 17:34:13 +0100
commitd0efd1e280c2b9759dce120dff64e8bac1ab19c1 (patch)
tree6230c65baa1ae990a38def4975babf6c2b34ab0c /connectivity
parent052d3625c75b0f1c6e402b8188f26bcade1f60c4 (diff)
tdf#141115 semi-userfriendly message on UNION query on file driver
Rather than silently returning only the first (left) part of the UNION, error out. Change-Id: I6ed1eba55ad33f149d9010933a3c7a835fce0451 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113207 Reviewed-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Lionel Mamane <lionel@mamane.lu> Tested-by: Jenkins
Diffstat (limited to 'connectivity')
-rw-r--r--connectivity/source/drivers/file/FStatement.cxx7
1 files changed, 7 insertions, 0 deletions
diff --git a/connectivity/source/drivers/file/FStatement.cxx b/connectivity/source/drivers/file/FStatement.cxx
index e04e4fbe5d1b..d181798b2f1e 100644
--- a/connectivity/source/drivers/file/FStatement.cxx
+++ b/connectivity/source/drivers/file/FStatement.cxx
@@ -394,6 +394,13 @@ void OStatement_Base::construct(const OUString& sql)
case OSQLStatementType::Unknown:
m_pConnection->throwGenericSQLException(STR_QUERY_TOO_COMPLEX,*this);
break;
+ case OSQLStatementType::Select:
+ if(SQL_ISRULE(m_aSQLIterator.getParseTree(), union_statement))
+ {
+ m_pConnection->throwGenericSQLException(STR_QUERY_TOO_COMPLEX, *this);
+ }
+ assert(SQL_ISRULE(m_aSQLIterator.getParseTree(), select_statement));
+ break;
default:
break;
}