-
-
Notifications
You must be signed in to change notification settings - Fork 172
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
KeyError caused by name stream not parsing correctly #320
Comments
Here's the output of
|
Interesting... I will try to find out more about where these files came from. Thanks for your help. |
I just pushed a commit to next release with some new code for named properties. Can you let me know if it fixes those files? You can install from that branch with this command:
|
@TheElementalOfDestruction That fixes |
I'll mark this as complete once it's in a final release |
This should now be completely fixed in 0.39.0 |
Bug Metadata
Describe the bug
In some messages, entry names do not parse correctly. Then, when the properties dictionary is built, a KeyError is thrown because a name for the corresponding entry does not exist.
What code did you use or can we use to reproduce this error?
Just called the constructor on my file:
msg = extract_msg.Message(file_path)
Is there a message.msg file you want to share to help us reproduce this?
I can't attach the .msg file since it has sensitive data, but I did extract the binary data from the names stream to share. I've attached that as a .bin file, along with the code I used to extract the binary data, and code that shows the resulting malformed dictionary from the parsing done in the constructor of the
Named
class.Traceback
Additional context
names_repro.zip
names.bin
- a binary representation of the names section of my .msg filenames_bin_extract.py
- code I used to extract the bin filenames_bin_parse.py
- isolated code fromNamed
constructor showing resulting dictionaryThe text was updated successfully, but these errors were encountered: