removing hard coded "http" string and using GetScheme() instead.

cleaning up a memory leak
This commit is contained in:
dougt%netscape.com 1999-08-03 02:15:30 +00:00
parent f13ed0caa9
commit 3c1d894f1c

View File

@ -118,7 +118,8 @@ nsHTTPHandler::NewChannel(const char* verb, nsIURI* i_URL,
{
nsresult rv;
nsHTTPChannel* pChannel = nsnull;
char* scheme = 0;
char* scheme = nsnull;
char* handlerScheme = nsnull;
// Initial checks...
if (!i_URL || !o_Instance) {
@ -126,7 +127,17 @@ nsHTTPHandler::NewChannel(const char* verb, nsIURI* i_URL,
}
i_URL->GetScheme(&scheme);
if (0 == PL_strcasecmp(scheme, "http")) {
GetScheme(&handlerScheme);
if (scheme != nsnull && handlerScheme != nsnull &&
0 == PL_strcasecmp(scheme, handlerScheme))
{
if (scheme)
nsCRT::free(scheme);
if (handlerScheme)
nsCRT::free(handlerScheme);
nsCOMPtr<nsIURI> channelURI;
PRUint32 count;
PRInt32 index;
@ -171,6 +182,12 @@ nsHTTPHandler::NewChannel(const char* verb, nsIURI* i_URL,
return rv;
}
if (scheme)
nsCRT::free(scheme);
if (handlerScheme)
nsCRT::free(handlerScheme);
NS_ERROR("Non-HTTP request coming to HTTP Handler!!!");
//return NS_ERROR_MISMATCHED_URL;
return NS_ERROR_FAILURE;