Moving material function together with material doesn't update the material

Moving material function together with a material that uses it to another folder doesn’t update the material references to the material function.

Steps to reproduce:

  1. Create C++ project with no starter content based on First person shooter.

  2. Use Unreal Editor to initialize git repo with default .gitignore

  3. Use button “Add new” in content browser to add third person c++ content

  4. Create folders structure “Content/Materials/UE_Mannequin”

  5. Select content of “Content/Mannequin/Character/Materials” (that includes a material, a material instance and a folder “MaterialLayers” that contains material functions) and drag-n-drop it to “Content/Materials/UE_Mannequin”

  6. Right click on “Content” → “Fixup redirectors”

  7. Save everything

  8. Close Unreal Editor

  9. Run “git add *”, “git add -u”, “git commit -m “test””

  10. Run “git clean -dxf”

  11. Double-click on .uproject

Expected result: project opens with no errors

Actual result: project opens with multiple errors about material not being able to find material functions. Material doesn’t work, and it doesn’t contain enough information to manually restore what was lost. Call nodes to the material functions are replaced with “Unspecified function” and are not wired up.

Additional info: if you open material after step 7 and inspect material function call, you’ll see that it points to an old address.

Hey Kulexandr-

Thank you for submitting a bug report. I have reproduced this issue and logged a report for it here Unreal Engine Issues and Bug Tracker (UE-50896) . You can track the report’s status as the issue is reviewed by our development staff. Please be aware that this issue may not be prioritized or fixed soon.

Cheers