Hi,
I've noticed it a few times, I run a function or maybe it is a function on another script attached to a different node, and it seems to me that the function calling the external function is finishing its work without waiting for the function it had called, to finish its work, even if I put:
yield(get_tree(), "idle_frame")
yield(get_tree(), "idle_frame")
Still no difference, within the same function if I do yield it will wait a frame and then continue, but if I call a different function, I can put yield within this called function or after it in the calling function, and still the calling function will not wait for the called function to finish it's work, and show it in a frame, my first function is calling an external function that is capturing the current frame on a Viewport and puts it in a TextureRect and covers the Viewport with this TextureRect, I want this to happen first, and only then the Viewport content to be changed, but yield doesn't seem to work here, I believe if I'll put all the code of the external function as a local code on the calling function, it will work, but I would prefer not to do that.