-
Notifications
You must be signed in to change notification settings - Fork 163
Open
Labels
Description
Version: 23.0.23089.01 x64
Reproducer:
- Select some folder. Use Property > Advanced > Edit specific property. Pick e.g. 0x70102. (The PT_BINARY editor comes up.) Set text "xx" or something small. Close the editor with OK. (The property is saved.)
- Select 0x70102 from the right pane if not already the case. Use Property > Selected property > As stream > Binary. (The PT_BINARY editor comes up again.) Set a text which is longer than 65536 characters. Close the editor wik OK. (The property is saved.)
- The right pane switches property 0x70102 to 0x7000a with red icon with PT_ERROR+MAPI_E_NOT_ENOUGH_MEMORY. (Legit.) Now delete the property with the DEL key.
- Observe the property is not deleted. According to the MFCMAPI logfile,
CSingleMAPIPropListCtrl::OnDeleteProperty deleting property 0x0007000a.
DeleteProperty: Deleting prop 0x00070000 from MAPI item 000001C68DF1DCC0.
When a small-size property is deleted, the log would read something like this
CSingleMAPIPropListCtrl::OnDeleteProperty deleting property 0x00070003.
DeleteProperty: Deleting prop 0x00070003 from MAPI item 000002BCE5B1AA20.
It looks like MFCMAPI is erroneously using the proptag returned in IMAPITable rather than the original one as returned by GetPropList.