Skip to content

Commit 10ea348

Browse files
committed
Fix #8599 - isc_info_sql_relation_alias should not report a quoted alias.
1 parent ed26e8a commit 10ea348

File tree

4 files changed

+8
-8
lines changed

4 files changed

+8
-8
lines changed

src/dsql/ExprNodes.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8916,7 +8916,7 @@ void DerivedFieldNode::setParameterName(dsql_par* parameter) const
89168916
value->setParameterName(parameter);
89178917

89188918
parameter->par_alias = name;
8919-
parameter->par_rel_alias = context->getConcatenatedAlias();
8919+
parameter->par_rel_alias = context->ctx_alias.hasData() ? context->ctx_alias.front().object : MetaName();
89208920
}
89218921

89228922
void DerivedFieldNode::genBlr(DsqlCompilerScratch* dsqlScratch)
@@ -14593,7 +14593,7 @@ static void setParameterInfo(dsql_par* parameter, const dsql_ctx* context)
1459314593
parameter->par_owner_name = context->ctx_procedure->prc_owner;
1459414594
}
1459514595

14596-
parameter->par_rel_alias = context->getConcatenatedAlias();
14596+
parameter->par_rel_alias = context->ctx_alias.hasData() ? context->ctx_alias.front().object : MetaName();
1459714597
}
1459814598

1459914599

src/dsql/dsql.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1284,9 +1284,9 @@ static UCHAR* var_info(const dsql_msg* message,
12841284
case isc_info_sql_relation_alias:
12851285
if (param->par_rel_alias.hasData())
12861286
{
1287-
str = attachment->stringToUserCharSet(tdbb, param->par_rel_alias);
1288-
length = str.length();
1289-
buffer = reinterpret_cast<const UCHAR*>(str.c_str());
1287+
name = attachment->nameToUserCharSet(tdbb, param->par_rel_alias);
1288+
length = name.length();
1289+
buffer = reinterpret_cast<const UCHAR*>(name.c_str());
12901290
}
12911291
else
12921292
length = 0;

src/dsql/dsql.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -601,7 +601,7 @@ class dsql_par : public Firebird::PermanentStorage
601601
MetaName par_name; // Parameter name, if any
602602
QualifiedName par_rel_name; // Relation name, if any
603603
MetaName par_owner_name; // Owner name, if any
604-
Firebird::string par_rel_alias; // Relation alias, if any
604+
MetaName par_rel_alias; // Relation alias, if any
605605
MetaName par_alias; // Alias, if any
606606
dsc par_desc; // Field data type
607607
USHORT par_parameter = 0; // BLR parameter number

src/dsql/make.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -532,8 +532,8 @@ dsql_par* MAKE_parameter(dsql_msg* message, bool sqlda_flag, bool null_flag,
532532
parameter->par_parameter = message->msg_parameter++;
533533

534534
parameter->par_rel_name.clear();
535-
parameter->par_owner_name = NULL;
536-
parameter->par_rel_alias.clear();
535+
parameter->par_owner_name = nullptr;
536+
parameter->par_rel_alias = nullptr;
537537

538538
if (node)
539539
MAKE_parameter_names(parameter, node);

0 commit comments

Comments
 (0)