Add error handling to decode_text function#48
Conversation
That makes sense. Implemented in a5e68d7. |
decode_text function
Schamper
left a comment
There was a problem hiding this comment.
Maybe make this accessible with some changes like:
- Add an
errorsargument to_parse_valueand prepare it to the parse function here:dissect.esedb/dissect/esedb/record.py
Line 268 in ca05543
- Add
errorstoget():dissect.esedb/dissect/esedb/record.py
Line 198 in ca05543
- And
as_dict():dissect.esedb/dissect/esedb/record.py
Line 235 in ca05543
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #48 +/- ##
==========================================
+ Coverage 78.53% 80.35% +1.82%
==========================================
Files 16 16
Lines 1444 1410 -34
==========================================
- Hits 1134 1133 -1
+ Misses 310 277 -33
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|

This PR demonstrates that the EseDB parser is unable to parse the LongText value from the column
4625-System_Search_AutoSummaryin the record withWorkID=1017in the tableSystemIndex_PropertyStore.The value passed to
dissect.esedb.c_esedb.decode_textseems to be partially utf-16-le. Perhaps the record is not parsed correctly?Could you weigh in here @Schamper?