You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by pe...@apache.org on 2001/11/30 23:19:15 UTC
cvs commit: xml-xerces/c/src/internal XMLScanner.hpp XMLScanner.cpp
peiyongz 01/11/30 14:19:15
Modified: c/src/internal XMLScanner.hpp XMLScanner.cpp
Log:
cleanUp function made member function
cleanUp object moved to file scope
Revision Changes Path
1.38 +10 -0 xml-xerces/c/src/internal/XMLScanner.hpp
Index: XMLScanner.hpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/internal/XMLScanner.hpp,v
retrieving revision 1.37
retrieving revision 1.38
diff -u -r1.37 -r1.38
--- XMLScanner.hpp 2001/11/20 18:51:44 1.37
+++ XMLScanner.hpp 2001/11/30 22:19:15 1.38
@@ -56,6 +56,10 @@
/*
* $Log: XMLScanner.hpp,v $
+ * Revision 1.38 2001/11/30 22:19:15 peiyongz
+ * cleanUp function made member function
+ * cleanUp object moved to file scope
+ *
* Revision 1.37 2001/11/20 18:51:44 tng
* Schema: schemaLocation and noNamespaceSchemaLocation to be specified outside the instance document. New methods setExternalSchemaLocation and setExternalNoNamespaceSchemaLocation are added (for SAX2, two new properties are added).
*
@@ -534,6 +538,13 @@
void scanReset(XMLPScanToken& toFill);
bool checkXMLDecl(bool startWithAngle);
+
+ // -----------------------------------------------------------------------
+ // Notification that lazy data has been deleted
+ // -----------------------------------------------------------------------
+ static void reinitScannerMutex();
+
+ static void reinitMsgLoader();
private :
// -----------------------------------------------------------------------
1.78 +10 -7 xml-xerces/c/src/internal/XMLScanner.cpp
Index: XMLScanner.cpp
===================================================================
RCS file: /home/cvs/xml-xerces/c/src/internal/XMLScanner.cpp,v
retrieving revision 1.77
retrieving revision 1.78
diff -u -r1.77 -r1.78
--- XMLScanner.cpp 2001/11/28 20:33:10 1.77
+++ XMLScanner.cpp 2001/11/30 22:19:15 1.78
@@ -55,7 +55,7 @@
*/
/*
- * $Id: XMLScanner.cpp,v 1.77 2001/11/28 20:33:10 tng Exp $
+ * $Id: XMLScanner.cpp,v 1.78 2001/11/30 22:19:15 peiyongz Exp $
*/
@@ -98,10 +98,14 @@
// Local static data
// ---------------------------------------------------------------------------
static XMLUInt32 gScannerId;
-static XMLMsgLoader* gMsgLoader = 0;
static bool sRegistered = false;
+
static XMLMutex* sScannerMutex = 0;
+static XMLRegisterCleanup scannerMutexCleanup;
+static XMLMsgLoader* gMsgLoader = 0;
+static XMLRegisterCleanup cleanupMsgLoader;
+
// ---------------------------------------------------------------------------
// Local const data
//
@@ -122,7 +126,7 @@
// -----------------------------------------------------------------------
// Cleanup for the message loader
// -----------------------------------------------------------------------
-static void reinitMsgLoader()
+void XMLScanner::reinitMsgLoader()
{
delete gMsgLoader;
gMsgLoader = 0;
@@ -131,7 +135,7 @@
// -----------------------------------------------------------------------
// Cleanup for the scanner mutex
// -----------------------------------------------------------------------
-static void reinitScannerMutex()
+void XMLScanner::reinitScannerMutex()
{
delete sScannerMutex;
sScannerMutex = 0;
@@ -144,7 +148,7 @@
//
static XMLMutex& gScannerMutex()
{
- static XMLRegisterCleanup scannerMutexCleanup;
+
if (!sScannerMutex)
{
XMLMutex* tmpMutex = new XMLMutex;
@@ -160,7 +164,7 @@
// If we got here first, then register it and set the registered flag
if (!sRegistered)
{
- scannerMutexCleanup.registerCleanup(reinitScannerMutex);
+ scannerMutexCleanup.registerCleanup(XMLScanner::reinitScannerMutex);
sRegistered = true;
}
}
@@ -936,7 +940,6 @@
//
void XMLScanner::commonInit()
{
- static XMLRegisterCleanup cleanupMsgLoader;
//
// We have to do a little init that involves statics, so we have to
---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-cvs-help@xml.apache.org