|
From: Claudio V. C. <ro...@us...> - 2002-02-25 08:39:10
|
Build Number:752
Update of /cvsroot/firebird/interbase/jrd
In directory usw-pr-cvs1:/tmp/cvs-serv23746
Modified Files:
evl.c
Log Message:
Minor change: substring() can handle binary data directly.
Index: evl.c
===================================================================
RCS file: /cvsroot/firebird/interbase/jrd/evl.c,v
retrieving revision 1.11
retrieving revision 1.12
diff -U3 -r1.11 -r1.12
--- evl.c 16 Feb 2002 03:22:29 -0000 1.11
+++ evl.c 25 Feb 2002 08:39:07 -0000 1.12
@@ -4897,9 +4897,10 @@
SET_TDBB (tdbb);
desc.dsc_dtype = dtype_text;
+desc.dsc_scale = 0;
if (dtype_blob == value->dsc_dtype && (BLOB_text != value->dsc_sub_type
- || (ttype = value->dsc_scale) == ttype_ascii || ttype == ttype_none
+ || (ttype = value->dsc_scale) == ttype_ascii || ttype == ttype_none || ttype == ttype_binary
|| ((obj1 = INTL_obj_lookup (tdbb, type_texttype, ttype, (FPTR_VOID) ERR_post, NULL)) != 0
&& 1 == obj1->texttype_bytes_per_char)))
{
@@ -4962,6 +4963,7 @@
distinguish between user calls and system calls. Unlike the original ASCII substring(),
this one will get correctly the amount of UNICODE characters requested. */
else if (desc.dsc_ttype == ttype_ascii || desc.dsc_ttype == ttype_none
+ || ttype == ttype_binary
/*|| desc.dsc_ttype == ttype_metadata) */)
{
/* Redundant.
|