[Msxml2.DOMDocument.6.0].load() does not report an error for non-url string arguments. It returns a boolean value if the load was successful or not. If loading was not successful it returns false so you simply need to check against $com(XSL).result after the call to detect a load failure:

Code
if (!$com(XSL, load, 1, bstr, %xstl) || $comerr) {
  ; com related error
}
elseif (!$com(XSL).result) {
  ; load failed; you can dispatch parseError and check it's .reason property to get a plain text message as to why the load failed
}


I know it may seem like it would throw an error for a non-url input due to the page linked below mentioning E_INVALIDARGS but that error is only returned if the input type of load() is not of an applicable type


.load()
"Return Values
Boolean. Returns True if the load succeeded; False if the load failed."

"xmlSource
An indicator of the source XML to parse. This may be an URL (String/BSTR), a Request object (in an ASP page), an IStream, SAFEARRAY of bytes (VT_ARRAY|VT_UI1), a DOMDocument object, or any object that supports IStream, ISequentialStream, or IPersistStream."

parseError members


In short this is not a bug in mIRC, but rather scripter error.

Last edited by FroggieDaFrog; 06/09/20 02:35 PM. Reason: grammar

I am SReject
My Stuff