Discovered this the hard way. I'm using this MEL function within an on load watcher pane function to autoload an auxiliary form when the original form loads. Users told me that the auxiliary form was loading twice. Comes to find out, it was loading again when you went back into the update from putting it on hold.
The issue is the GET_FORM_LIST, when executing during an encounter load, only returns the forms in the encounter prior to the form it is running from. My form was the 4th form in the encounter and a trace showed that GET_FORM_LIST was only returning the 3 forms preceding it. I guess a form isn't loaded and available to this function until all the code on the form has loaded/executed. I had to set a document variable the first time my function ran and then look for its existence to keep the auxiliary form from loading again.