ole32: fix property deletion memory leak in IPropertyStorage

Fixed a memory leak in IPropertyStorage_fnDeleteMultiple when deleting properties by name. Previously, when deleting a property by its name, the code only removed the property from the propid_to_prop dictionary but failed to clean up the bidirectional mapping between property names and IDs in the propid_to_name and name_to_propid dictionaries. This resulted in orphaned dictionary entries and memory leaks.

The fix ensures proper cleanup of both dictionaries when deleting properties by name by:

  1. Looking up the property name in the name_to_propid dictionary
  2. Removing the property from propid_to_prop dictionary
  3. Also removing the bidirectional mappings from propid_to_name and name_to_propid dictionaries

Signed-off-by: Jiajin Cui cuijiajin@uniontech.com

Merge request reports

Loading