diff options
Diffstat (limited to 'src/usr/targeting/common/target.C')
-rw-r--r-- | src/usr/targeting/common/target.C | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/usr/targeting/common/target.C b/src/usr/targeting/common/target.C index 1ee281576..90bfd6850 100644 --- a/src/usr/targeting/common/target.C +++ b/src/usr/targeting/common/target.C @@ -138,6 +138,34 @@ bool Target::_tryGetAttrUnsafe( } //****************************************************************************** +// Target::_tryGetAttrUnsafe +//****************************************************************************** +bool Target::_tryGetAttrUnsafe( + const ATTRIBUTE_ID i_attr, + const uint32_t i_size, + AttrRP* i_attrRP, + ATTRIBUTE_ID* i_pAttrId, + AbstractPointer<void>* i_ppAttrAddr, + void* const io_pAttrData) const +{ + #define TARG_FN "_tryGetAttrUnsafe()" + + bool l_found = false; + + void* l_pAttrData = NULL; + _getAttrPtr(i_attr, i_attrRP, i_pAttrId, i_ppAttrAddr, l_pAttrData); + if (l_pAttrData) + { + memcpy(io_pAttrData, l_pAttrData, i_size); + l_found = true; + } + + return l_found; + + #undef TARG_FN +} + +//****************************************************************************** // Target::_trySetAttr //****************************************************************************** |