--NOT PART OF DEFAULT BUILD--

XMLterm changes only.
Some code cleanup for Finalize methods.


git-svn-id: svn://10.0.0.236/trunk@80818 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
svn%xmlterm.org
2000-10-10 04:51:11 +00:00
parent 5476b22ec2
commit 0a8feabc0d
4 changed files with 37 additions and 18 deletions

View File

@@ -456,6 +456,8 @@ NS_IMETHODIMP mozLineTerm::SuspendAux(PRBool aSuspend)
*/
NS_IMETHODIMP mozLineTerm::Close(const PRUnichar* aCookie)
{
XMLT_LOG(mozLineTerm::Close,20, ("\n"));
if (!mCookie.EqualsWithConversion(aCookie)) {
XMLT_ERROR("mozLineTerm::Close: Error - Cookie mismatch\n");
return NS_ERROR_FAILURE;
@@ -481,6 +483,8 @@ NS_IMETHODIMP mozLineTerm::Close(const PRUnichar* aCookie)
*/
NS_IMETHODIMP mozLineTerm::CloseAux(void)
{
XMLT_LOG(mozLineTerm::CloseAux,20, ("\n"));
if (lterm_close(mLTerm) == 0) {
return NS_OK;
} else {

View File

@@ -167,9 +167,7 @@ mozXMLTermSession::mozXMLTermSession() :
mozXMLTermSession::~mozXMLTermSession()
{
if (mInitialized) {
Finalize();
}
Finalize();
}
@@ -191,6 +189,8 @@ NS_IMETHODIMP mozXMLTermSession::Init(mozIXMLTerminal* aXMLTerminal,
mPresShell = aPresShell; // presentation shell; no addref
mDOMDocument = aDOMDocument; // DOM document; no addref
mInitialized = PR_TRUE;
mScreenRows = nRows;
mScreenCols = nCols;
mTopScrollRow = mScreenRows - 1;
@@ -247,8 +247,6 @@ NS_IMETHODIMP mozXMLTermSession::Init(mozIXMLTerminal* aXMLTerminal,
result = AppendOutput(prefaceText, nullStyle, PR_TRUE);
#endif
mInitialized = PR_TRUE;
XMLT_LOG(mozXMLTermSession::Init,31,("exiting\n"));
return result;
}
@@ -258,6 +256,13 @@ NS_IMETHODIMP mozXMLTermSession::Init(mozIXMLTerminal* aXMLTerminal,
NS_IMETHODIMP mozXMLTermSession::Finalize(void)
{
if (!mInitialized)
return NS_OK;
XMLT_LOG(mozXMLTermSession::Finalize,30,("\n"));
mInitialized = PR_FALSE;
mScreenNode = nsnull;
mOutputBlockNode = nsnull;
@@ -281,7 +286,7 @@ NS_IMETHODIMP mozXMLTermSession::Finalize(void)
mPresShell = nsnull;
mDOMDocument = nsnull;
mInitialized = PR_FALSE;
XMLT_LOG(mozXMLTermSession::Finalize,32,("END\n"));
return NS_OK;
}

View File

@@ -93,9 +93,7 @@ mozXMLTermShell::mozXMLTermShell() :
mozXMLTermShell::~mozXMLTermShell()
{
if (mInitialized) {
Finalize();
}
Finalize();
}
@@ -224,6 +222,8 @@ mozXMLTermShell::Init(nsIDOMWindowInternal* aContentWin,
if (!aContentWin)
return NS_ERROR_NULL_POINTER;
mInitialized = PR_TRUE;
mContentWindow = aContentWin; // no addref
nsCOMPtr<nsIScriptGlobalObject> globalObj = do_QueryInterface(mContentWindow,
@@ -284,8 +284,13 @@ mozXMLTermShell::Close(const PRUnichar* aCookie)
NS_IMETHODIMP
mozXMLTermShell::Finalize(void)
{
if (!mInitialized)
return NS_OK;
XMLT_LOG(mozXMLTermShell::Finalize,10,("\n"));
mInitialized = PR_FALSE;
if (mXMLTerminal) {
// Finalize and release reference to XMLTerm object owned by us
mXMLTerminal->Finalize();
@@ -295,7 +300,7 @@ mozXMLTermShell::Finalize(void)
mContentAreaDocShell = nsnull;
mContentWindow = nsnull;
mInitialized = PR_FALSE;
XMLT_LOG(mozXMLTermShell::Finalize,12,("END\n"));
return NS_OK;
}

View File

@@ -126,9 +126,7 @@ mozXMLTerminal::mozXMLTerminal() :
mozXMLTerminal::~mozXMLTerminal()
{
if (mInitialized) {
Finalize();
}
Finalize();
}
@@ -232,9 +230,12 @@ NS_IMETHODIMP mozXMLTerminal::Init(nsIDocShell* aDocShell,
if (!aDocShell)
return NS_ERROR_NULL_POINTER;
if (mDocShell)
if (mInitialized)
return NS_ERROR_ALREADY_INITIALIZED;
// Initialization flag
mInitialized = PR_TRUE;
mDocShell = aDocShell; // containing docshell; no addref
mXMLTermShell = aXMLTermShell; // containing xmlterm shell; no addref
@@ -252,9 +253,6 @@ NS_IMETHODIMP mozXMLTerminal::Init(nsIDocShell* aDocShell,
mPromptExpr.SetLength(0);
mInitInput = args;
// Initialization completed
mInitialized = PR_TRUE;
if ((aURL != nsnull) && (*aURL != 0)) {
// Load URL and activate XMLTerm after loading
XMLT_LOG(mozXMLTerminal::Init,22,("setting DocLoaderObs\n"));
@@ -294,6 +292,13 @@ NS_IMETHODIMP mozXMLTerminal::Init(nsIDocShell* aDocShell,
// De-initialize XMLTerminal
NS_IMETHODIMP mozXMLTerminal::Finalize(void)
{
if (!mInitialized)
return NS_OK;
XMLT_LOG(mozXMLTerminal::Finalize,20,("\n"));
mInitialized = PR_FALSE;
if (mXMLTermSession) {
// Finalize XMLTermSession object and delete it (it is not ref. counted)
mXMLTermSession->Finalize();
@@ -349,7 +354,7 @@ NS_IMETHODIMP mozXMLTerminal::Finalize(void)
mPresShell = nsnull;
mXMLTermShell = nsnull;
mInitialized = PR_FALSE;
XMLT_LOG(mozXMLTerminal::Finalize,22,("END\n"));
return NS_OK;
}