Vector35 / binaryninja-api

Public API, examples, documentation and issues for Binary Ninja
https://binary.ninja/
MIT License
897 stars 200 forks source link

Setting function type unnecessarily creates user symbol #5879

Open VisualEhrmanntraut opened 2 weeks ago

VisualEhrmanntraut commented 2 weeks ago

Version and Platform (required):

Bug Description: Setting a function's type resets its symbol data, removing the symbol's raw name, full name, etc.

Steps To Reproduce: Click on the function and press Y, then specify the new function type and then click accept. The symbol data will now be reset.

Expected Behavior: The raw name, full name, etc should be kept intact and only the function type should be changed.

Screenshots/Video Recording:

Screenshot 2024-08-24 at 11 47 33 Screenshot 2024-08-24 at 11 48 09 Screenshot 2024-08-24 at 11 48 19
plafosse commented 2 weeks ago

I believe whats happening here is that we're creating a "user" symbol which shadows the "auto" symbol. You should still be able to get the auto symbol at that same address with the original information. Though I can see an argument for not making a user symbol when its unnecessary like in this case so I'll leave the issue open.