For all AvatarEditorService methods that prompt the user to do something, pressing esc on your keyboard will normally close the prompt UI and fire the method’s corresponding “Completed” event with Enum.AvatarPromptResult.PermissionDenied
. However, outfit-related events do not fire, causing outfit-related methods to hang forever. This happens 100% of the time as of 5/23/2023.
This applies to:
-
PromptCreateOutfit()
andPromptCreateOutfitCompleted
-
PromptDeleteOutfit()
andPromptDeleteOutfitCompleted
-
PromptRenameOutfit()
andPromptRenameOutfitCompleted
-
PromptUpdateOutfit()
andPromptUpdateOutfitCompleted
Repro
- Call any outfit-editing method of AvatarEditorService, such as
PromptCreateOutfit()
. - On the prompt window, click “Yes” to confirm that you want to create a new outfit. You can ignore this step for the other 3 affected methods (Delete, Rename, and Update).
- If it asks you to enter an outfit name, click out of the TextBox, otherwise pressing esc will just unfocus the current TextBox.
- Press esc on your keyboard. The window will close, but
PromptCreateOutfitCompleted
will not fire. This means that you cannot callPromptCreateOutfit()
again since Roblox thinks that an outfit creation is still in progress.
Demonstration
AvatarEditorService outfit bug repro.rbxl (51.3 KB)
Here is a simple repro place showcasing this bug. Clicking “Create Outfit” will call PromptCreateOutfit()
and update the status label to indicate that an outfit creation is currently in progress, disabling the button.
When the outfit prompt closes, PromptCreateOutfitCompleted
fires, and the status label updates to indicate that an outfit can be created again, re-enabling the button. However, if you were to press esc to close the prompt, the status label will not update, since PromptCreateOutfitCompleted
does not fire in that case.
This does not showcase the other 3 affected methods (Delete, Rename, and Update), but they would work the same.