diff --git a/dlls/mshtml/protocol.c b/dlls/mshtml/protocol.c
index 5f197fd1628..c87f42e61f6 100644
--- a/dlls/mshtml/protocol.c
+++ b/dlls/mshtml/protocol.c
@@ -602,6 +602,7 @@ static HRESULT WINAPI ResProtocol_Start(IInternetProtocol *iface, LPCWSTR szUrl,
if(!hdll) {
WARN("Could not open dll: %s\n", debugstr_w(url_dll));
IInternetProtocolSink_ReportResult(pOIProtSink, HRESULT_FROM_WIN32(GetLastError()), 0, NULL);
+ mshtml_free(url);
return HRESULT_FROM_WIN32(GetLastError());
}