My Experience & Discussion - Engine Crashing while renaming Widgets

uem_s02_navigating_menus_in_c

#1

Hey Guys,
This post is about something I faced and how I managed to get it working as someone else might face the same problem. If you have a better way to deal with this very problem please do share with me.

While doing the challenge for this lecture I faced a strange behavior. I did complete the challenge but for future proofing the reference/bindings I went to rename the Buttons. And every time I renamed a Button, the engine crashed with a long call stack which I didn’t completely understand.

What I inferred from this was the engine must have cached the reference/binding and crashing the engine as renaming the widget may not update the pointer reference. So as a workaround, I commented out the UPROPERTY(meta = (BindWidget)) for each widget I wanted to rename, compiled the code and renamed it successfully as the binding no longer exists. Then uncommented and recompiled and made sure everything was working. :tada: :tada: :tada:


#2

Good call Sandeep. Thanks for sharing this. Keep up the great work.


#3

I really am enjoying this course and pretty much every course you and @ben have made. Great work guys :smiley:


#4

An alternative method to get around this while potentially more of a pain is to create a new Widget with the name you are changing to, then compile the code with the changed name. You may now change the old Widget name because it is no longer bound. I do think your method might be an easier work around though.