MCPcopy Create free account
hub / github.com/FirebirdSQL/firebird / putSegment

Method putSegment

src/dsql/DsqlBatch.cpp:391–409  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

389}
390
391void DsqlBatch::putSegment(ULONG length, const void* inBuffer)
392{
393 if (m_flags & (1 << FLAG_CURRENT_SEGMENTED))
394 {
395 if (length > MAX_USHORT)
396 {
397 ERR_post(Arg::Gds(isc_imp_exc) << Arg::Gds(isc_blobtoobig) <<
398 Arg::Gds(isc_big_segment) << Arg::Num(length));
399 }
400 USHORT l = length;
401 m_blobs.align(IBatch::BLOB_SEGHDR_ALIGN);
402 m_blobs.put(&l, sizeof(l));
403 m_setBlobSize = true;
404
405 DEB_BATCH(fprintf(stderr, "segment header, "));
406 }
407 m_blobs.put(inBuffer, length);
408 DEB_BATCH(fprintf(stderr, "segment data %u ", length));
409}
410
411void DsqlBatch::addBlobStream(thread_db* tdbb, unsigned length, const void* inBuffer)
412{

Callers

nothing calls this directly

Calls 5

GdsClass · 0.85
NumClass · 0.85
ERR_postFunction · 0.50
alignMethod · 0.45
putMethod · 0.45

Tested by

no test coverage detected