| 2822 | |
| 2823 | |
| 2824 | void Debugger::PropertyWriter::_WriteProperty(ExprTokenType &aValue, IObject *aThisOverride) |
| 2825 | { |
| 2826 | if (mError) |
| 2827 | return; |
| 2828 | PropertyInfo prop(mProp.fullname, mProp.value.buf); |
| 2829 | if (aThisOverride) |
| 2830 | { |
| 2831 | aThisOverride->AddRef(); |
| 2832 | prop.this_object = aThisOverride; |
| 2833 | } |
| 2834 | // Find the property's "relative" name at the end of the buffer: |
| 2835 | prop.name = mProp.fullname.GetString() + mNameLength; |
| 2836 | if (*prop.name == '.') |
| 2837 | prop.name++; |
| 2838 | // Write the property (and if it contains an object, any child properties): |
| 2839 | prop.value.CopyValueFrom(aValue); |
| 2840 | if (aValue.symbol == SYM_OBJECT) |
| 2841 | aValue.object->AddRef(); |
| 2842 | //prop.page = 0; // "the childrens pages are always the first page." |
| 2843 | prop.pagesize = mProp.pagesize; |
| 2844 | prop.max_data = mProp.max_data; |
| 2845 | prop.max_depth = mProp.max_depth - mDepth; |
| 2846 | mError = mDbg.WritePropertyXml(prop); |
| 2847 | // Truncate back to the parent property name: |
| 2848 | mProp.fullname.Truncate(mNameLength); |
| 2849 | } |
| 2850 | |
| 2851 | |
| 2852 | void Debugger::PropertyWriter::BeginProperty(LPCSTR aName, LPCSTR aType, int aNumChildren, DebugCookie &aCookie) |
nothing calls this directly
no test coverage detected