Skip to content

Commit cd9b7cb

Browse files
committed
fix ResolveHtmlEntitiesTemp() (fixes #4942)
1 parent 9565df5 commit cd9b7cb

1 file changed

Lines changed: 9 additions & 4 deletions

File tree

src/utils/HtmlPullParser.cpp

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -180,15 +180,20 @@ const char* ResolveHtmlEntities(const char* s, const char* end, Allocator* alloc
180180

181181
// convenience function for the above that always allocates
182182
char* ResolveHtmlEntities(const char* s, size_t len) {
183-
const char* tmp = ResolveHtmlEntities(s, s + len, nullptr);
184-
if (tmp == s) {
183+
const char* res = ResolveHtmlEntities(s, s + len, nullptr);
184+
if (res == s) {
185+
// ensure 0-terminated string is returned
185186
return str::Dup(s, len);
186187
}
187-
return (char*)tmp;
188+
return (char*)res;
188189
}
189190

190191
TempStr ResolveHtmlEntitiesTemp(const char* s, size_t len) {
191-
auto res = ResolveHtmlEntities(s, s + len, GetTempAllocator());
192+
const char* res = ResolveHtmlEntities(s, s + len, GetTempAllocator());
193+
if (res == s) {
194+
// ensure 0-terminated string is returned
195+
return str::DupTemp(s, len);
196+
}
192197
return (TempStr)res;
193198
}
194199

0 commit comments

Comments
 (0)