[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [xmlblaster-devel] MS c++ crash on shutdown fix
Martin Johnson wrote:
Ok, otherwise just do a global search&replace to remove the namespace in
demo/c++ and testsuite/src/c++
I have update cvs with changes to get c++ lib running again.
As part of this fix requires the removal of objman from
the test suite will not compile.
The only effect is the init() fini() methods. maybe the class needs to be
renamed for the purpose
of reflecting xmlBlaster initiailization rather than object lifetime
Though perhaps not, I have seen .net 2003 arrive today at work, perhaps the
7.1 compiler allows
it to compile within the namespace as does gcc.
Hi Marcel, Michele,
I was able to reproduce the problem.
The troble with the crash on windows is the relationship existing between
Global (now managed) and CorbaDriverFactory (not managed)
I change CorbaDriverFactory to a 'managed object' destructed prior to
Global all is well.
The fact that this does not occur on Linux adds the the notion that
static globals are not having the destructors called otherwise you would
be seeing similar behaviour. Recall this being one of reasons in pursuing
the object manager along with Global destruction hanging on MS.
To implement I had to alter the way global is created. It is now
pre-allocated to ensure it being the first object created as relationships
These changes fix the crash.
Whilst looking into this I have found some more trouble.
MS compiler does not support template friends defined outside of
to the size
namespace. To workaround this I had to remove Object_Lifetime_Manager from
org::xmlBlaster::util namespace it is now global.
Another observation is removing from the namspace removed 4k from the size
of the lib.
The *extensive* use of namespaces appears to contribute somewhat
of the lib.