Description

Changing parameter names on a function that is in use in another blueprint breaks the pin connections without warning if the blueprint is not saved before restarting the editor.

See the licensee's thread for details screenshots that show the repro steps.

Steps to Reproduce
  1. Open the editor
  2. Create 2 actors (A & B)
  3. In Actor A, add a new function, "Test"
  4. Give it an input and output parameters (bools are fine, "TestInput, TestOutput")
  5. Connect the function node to the return node and connect the input and output boolean params
  6. In Actor B, get a reference to Actor A and call "Test"
  7. For the TestInput, connect a Make Literal Bool node
  8. For the TestOutput, connect it to a Branch node
  9. Compile & Save both blueprints
  10. Back in Actor A, change both Parameter names on the function "Test"
  11. Compile & Save Actor A
  12. Restart the editor (Do not compile/save Actor B after changing the parameter names in Actor A)
  13. Open Actor B

Result: Notice that the pins have been disconnected from the function call, and no warning was given.

Expected: A compiler error would occur, as it does when you change a variable name in one blueprint and then don't save the blueprint it's being referenced in.

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-41828 in the post.

6
Login to Vote

Fixed
ComponentUE - Gameplay - Blueprint Editor
Affects Versions4.144.154.16
Target Fix4.17
Fix Commit3474156
Main Commit3510073
CreatedFeb 9, 2017
ResolvedJun 6, 2017
UpdatedJun 11, 2019