16.03.2016 16:14, Александр Пешков wrote: > In current code I see that isc_spb_utf8_filename in SPB received by > IService::start() > is completely ignored > > Not ignored but passed to DPBs later
Code seems to be different: ClumpletWriter spb(ClumpletReader::SpbStart, MAX_DPB_SIZE, spbItems, spbLength); if (!utf8Connection) { IntlSpbStart().toUtf8(spb); } I see no spb.find(isc_spb_utf8_filename) here. If (for chance) someone pass utf8 names into IService::start(), but not into attachServiceManager(), the names will be converted twice. > Does this code in attachServiceManager() look like always converted: > bool utfData = spbWriter.find(isc_spb_utf8_filename); > // skip... > if (!utfData) > { > IntlSpb().toUtf8(spbWriter); > } Yes, but later the value of utfData is stored in utf8Connection member, so the tag become sticky and overrides value passed to IService::start(). > It's inserted in IntlParametersBlock.cpp > > UCHAR utf8Tag = getUtf8Tag(); > if (utf8Tag) > { > pb.insertTag(utf8Tag); > } IntlSpbStart::getUtf8Tag() returns 0, so it is not inserted. > it works another way - not like you describe Yep. Another funny thing: isc_spb_dbname in isc_action_svc_db_stats block is not recognized as a string at all. Is it intended to be a backward compatibility bug? -- WBR, SD. ------------------------------------------------------------------------------ Transform Data into Opportunity. Accelerate data analysis in your applications with Intel Data Analytics Acceleration Library. Click to learn more. http://pubads.g.doubleclick.net/gampad/clk?id=278785231&iu=/4140 Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel