diff --git a/dlls/mshtml/mshtml_private.h b/dlls/mshtml/mshtml_private.h
index 374b6c0059a..b19dbfa1261 100644
--- a/dlls/mshtml/mshtml_private.h
+++ b/dlls/mshtml/mshtml_private.h
@@ -38,6 +38,7 @@
#define NS_ERROR_FAILURE ((nsresult)0x80004005L)
#define NS_NOINTERFACE ((nsresult)0x80004002L)
#define NS_ERROR_NOT_IMPLEMENTED ((nsresult)0x80004001L)
+#define NS_ERROR_NOT_AVAILABLE ((nsresult)0x80040111L)
#define NS_ERROR_INVALID_ARG ((nsresult)0x80070057L)
#define NS_ERROR_UNEXPECTED ((nsresult)0x8000ffffL)
#define NS_ERROR_UNKNOWN_PROTOCOL ((nsresult)0x804b0012L)
diff --git a/dlls/mshtml/nsio.c b/dlls/mshtml/nsio.c
index eb7aa73a495..8967fa13a77 100644
--- a/dlls/mshtml/nsio.c
+++ b/dlls/mshtml/nsio.c
@@ -1052,9 +1052,14 @@ static nsresult NSAPI nsChannel_GetRequestSucceeded(nsIHttpChannel *iface,
{
nsChannel *This = NSCHANNEL_THIS(iface);
- FIXME("(%p)->(%p)\n", This, aRequestSucceeded);
+ TRACE("(%p)->(%p)\n", This, aRequestSucceeded);
- return NS_ERROR_NOT_IMPLEMENTED;
+ if(!This->response_status)
+ return NS_ERROR_NOT_AVAILABLE;
+
+ *aRequestSucceeded = (This->response_status < 400);
+
+ return NS_OK;
}
static nsresult NSAPI nsChannel_GetResponseHeader(nsIHttpChannel *iface,