Calls a function without tainting the execution path. Meaningless when called from outside of the secure environment.

Used in Blizzard code to call functions which may be tainted or operate on potentially tainted variables. For example, consider the function CloseSpecialWindows, which iterates through the table UISpecialFrames and hides any frames named therein. Addon authors may put the names of their frames in that table to make them automatically close when the user presses the ESC key, but this taints UISpecialFrames. Were the default UI to then call CloseSpecialWindows normally, every frame in UISpecialFrames would become tainted, which could later lead to errors when handlers on those frames call protected functions.

Instead, the default UI uses securecall(CloseSpecialWindows): within CloseSpecialWindows the execution path may become tainted, but afterward the environment remains secure.


See also Secure execution utility functions.

Signature:

... = securecall(function, ...)

Arguments:

  • function - Function to be called (function)
  • ... - Arguments to the function (list)

Returns:

  • ... - Values returned after calling the function (list)
This function does nothing in the standard game client and is used by Blizzard for internal purposes