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

Method getFromPage

src/jrd/blb.cpp:2974–2990  ·  view source on GitHub ↗

Used by DPM_get_blob

Source from the content-addressed store, hash-verified

2972
2973// Used by DPM_get_blob
2974void blb::getFromPage(USHORT length, const UCHAR* data)
2975{
2976 if (blb_level == 0)
2977 {
2978 blb_space_remaining = length - BLH_SIZE;
2979 if (length)
2980 memcpy(getBuffer(), data, length);
2981 }
2982 else
2983 {
2984 if (!blb_pages)
2985 blb_pages = vcl::newVector(*blb_transaction->tra_pool, 0);
2986 fb_assert(length % sizeof(ULONG) == 0);
2987 blb_pages->resize(length / sizeof(ULONG));
2988 memcpy(blb_pages->memPtr(), data, length);
2989 }
2990}
2991
2992// Used by DPM_store_blob
2993void blb::storeToPage(USHORT* length, Firebird::Array<UCHAR>& buffer, const UCHAR** data, void* stack)

Callers

nothing calls this directly

Calls 3

getBufferFunction · 0.85
memPtrMethod · 0.80
resizeMethod · 0.45

Tested by

no test coverage detected