MCPcopy Create free account
hub / github.com/abbeycode/UnrarKit / ReadCommentData

Method ReadCommentData

Libraries/unrar/arccmt.cpp:143–166  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

141
142
143bool Archive::ReadCommentData(Array<wchar> *CmtData)
144{
145 Array<byte> CmtRaw;
146 if (!ReadSubData(&CmtRaw,NULL,false))
147 return false;
148 size_t CmtSize=CmtRaw.Size();
149 CmtRaw.Push(0);
150 CmtData->Alloc(CmtSize+1);
151 if (Format==RARFMT50)
152 UtfToWide((char *)&CmtRaw[0],CmtData->Addr(0),CmtData->Size());
153 else
154 if ((SubHead.SubFlags & SUBHEAD_FLAGS_CMT_UNICODE)!=0)
155 {
156 RawToWide(&CmtRaw[0],CmtData->Addr(0),CmtSize/2);
157 (*CmtData)[CmtSize/2]=0;
158
159 }
160 else
161 {
162 CharToWide((char *)&CmtRaw[0],CmtData->Addr(0),CmtData->Size());
163 }
164 CmtData->Alloc(wcslen(CmtData->Addr(0))); // Set buffer size to actual comment length.
165 return true;
166}
167
168
169void Archive::ViewComment()

Callers

nothing calls this directly

Calls 7

UtfToWideFunction · 0.85
RawToWideFunction · 0.85
CharToWideFunction · 0.85
PushMethod · 0.80
AllocMethod · 0.80
AddrMethod · 0.80
SizeMethod · 0.45

Tested by

no test coverage detected