mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-01-24 00:03:03 +01:00
Fixed CORE-5062 - CHAR_TO_UUID on column with index throws expression evaluation not supported Human readable UUID argument for CHAR_TO_UUID must be of exact length 36.
This commit is contained in:
parent
b07216f5d1
commit
964f91b543
@ -54,6 +54,7 @@
|
|||||||
#include "../dsql/pass1_proto.h"
|
#include "../dsql/pass1_proto.h"
|
||||||
#include "../jrd/blb_proto.h"
|
#include "../jrd/blb_proto.h"
|
||||||
#include "../jrd/cmp_proto.h"
|
#include "../jrd/cmp_proto.h"
|
||||||
|
#include "../jrd/evl_proto.h"
|
||||||
#include "../jrd/gds_proto.h"
|
#include "../jrd/gds_proto.h"
|
||||||
#include "../jrd/inf_proto.h"
|
#include "../jrd/inf_proto.h"
|
||||||
#include "../jrd/jrd_proto.h"
|
#include "../jrd/jrd_proto.h"
|
||||||
@ -2252,6 +2253,22 @@ static void map_in_out( thread_db* tdbb,
|
|||||||
{
|
{
|
||||||
// Safe cast because desc is used as source only.
|
// Safe cast because desc is used as source only.
|
||||||
desc.dsc_address = const_cast<UCHAR*>(in_dsql_msg_buf) + (IPTR) desc.dsc_address;
|
desc.dsc_address = const_cast<UCHAR*>(in_dsql_msg_buf) + (IPTR) desc.dsc_address;
|
||||||
|
|
||||||
|
if (desc.dsc_dtype == dtype_text)
|
||||||
|
{
|
||||||
|
const UCHAR* end = desc.dsc_address + desc.dsc_length;
|
||||||
|
EVL_adjust_text_descriptor(tdbb, &desc);
|
||||||
|
|
||||||
|
for (const UCHAR* p = desc.dsc_address + desc.dsc_length; p < end; ++p)
|
||||||
|
{
|
||||||
|
if (*p != ASCII_SPACE)
|
||||||
|
{
|
||||||
|
ERRD_post(
|
||||||
|
Arg::Gds(isc_arith_except) << Arg::Gds(isc_string_truncation));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
MOVD_move(tdbb, &desc, ¶meter->par_desc);
|
MOVD_move(tdbb, &desc, ¶meter->par_desc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user