nsHttpHandler::ReclaimConnection(nsHttpConnection *conn) { NS_ENSURE_ARG_POINTER(conn); NS_ASSERTION(PR_GetCurrentThread() == NS_SOCKET_THREAD, "wrong thread");  PRBool reusable = conn->CanReuse();  LOG(("nsHttpHandler::ReclaimConnection [conn=%x(%s:%d) keep-alive=%d]\n", conn, conn->ConnectionInfo()->Host(), conn->ConnectionInfo()->Port(), reusable));  PR_Lock(mConnectionLock);   mActiveConnections.RemoveElement(conn);  if (reusable) { LOG(("adding connection to idle list [conn=%x]\n", conn));    mIdleConnections.AppendElement(conn);
nsresult ReclaimConnection(nsHttpConnection *conn) { return mConnMgr->ReclaimConnection(conn);
nsHttpHandler::ReclaimConnection(nsHttpConnection *conn){    NS_ENSURE_ARG_POINTER(conn);    NS_ASSERTION(PR_GetCurrentThread() == NS_SOCKET_THREAD, "wrong thread");    PRBool reusable = conn->CanReuse();    LOG(("nsHttpHandler::ReclaimConnection [conn=%x(%s:%d) keep-alive=%d]\n",        conn, conn->ConnectionInfo()->Host(), conn->ConnectionInfo()->Port(), reusable));    PR_Lock(mConnectionLock);    // remove connection from the active connection list    mActiveConnections.RemoveElement(conn);    if (reusable) {        LOG(("adding connection to idle list [conn=%x]\n", conn));        // hold onto this connection in the idle list.  we push it        // to the end of the list so as to ensure that we'll visit        // older connections first before getting to this one.        mIdleConnections.AppendElement(conn);    }    else {        LOG(("closing connection: connection can't be reused\n"));        NS_RELEASE(conn);    }    LOG(("active connection count is now %u\n", mActiveConnections.Count()));    ProcessTransactionQ_Locked();    return NS_OK;}