Hi,

we have some trouble debugging this...

As far as i understand the code, InternalPlatform::GetInstance() is a singleton (after Meyers, static).

So it shouldn't be possible that there is another InternalPlatform instance created for a second time. This happens for the first plugin, 'system.bundle'.

After executing the singletons instance's getter, code:

--->
InternalPlatform* InternalPlatform::GetInstance()
{
  Poco::Mutex::ScopedLock lock(m_Mutex);
  static InternalPlatform instance;
  return &instance;
}
<---


...the line 'static InternalPlatform instance;' executes the constructor of InternalPlatform again. This leads internally to execution of the base class constructor (Poco::Application), which calls setup(); There, the assertion fails, because the InternalPlatform has already been instantiated.

This second call to the InternalPlatforms constructor chain happens in:
--->
void org_blueberry_osgi_Activator::start(ctkPluginContext* context)
line 38:
InternalPlatform::GetInstance()->GetBundle("system.bundle").Cast<SystemBundle>()
<---

The CallStack is attached. Anyone has an idea what is going wrong?

Regards,

Thomas


        KernelBase.dll!000007fefd2e3172()       
        [Frames below may be incorrect and/or missing, no symbols loaded for 
KernelBase.dll]    
        PocoFoundationd.dll!Poco::Debugger::enter()  Line 135   C++
        PocoFoundationd.dll!Poco::Debugger::enter(const 
std::basic_string<char,std::char_traits<char>,std::allocator<char> > & 
msg="Assertion violation: _pInstance == 0", const char * 
file=0x000007feed779710, int line=122)  Line 153        C++
        PocoFoundationd.dll!Poco::Bugcheck::assertion(const char * 
cond=0x000007feed779760, const char * file=0x000007feed779710, int line=122)  
Line 48 + 0x7a bytes   C++
        PocoUtild.dll!Poco::Util::Application::setup()  Line 124        C++
        PocoUtild.dll!Poco::Util::Application::Application()  Line 91 + 0xd 
bytes       C++
        liborg_blueberry_osgi.dll!berry::InternalPlatform::InternalPlatform()  
Line 64 + 0x37 bytes     C++
        liborg_blueberry_osgi.dll!berry::InternalPlatform::GetInstance()  Line 
75 + 0x28 bytes  C++
>       
> liborg_blueberry_osgi.dll!berry::org_blueberry_osgi_Activator::start(ctkPluginContext
>  * context=0x0000000002535f30)  Line 38 + 0x18 bytes       C++
        CTKPluginFramework.dll!ctkPluginPrivate::start0()  Line 450     C++
        CTKPluginFramework.dll!ctkPluginPrivate::finalizeActivation()  Line 271 
+ 0xd bytes     C++
        CTKPluginFramework.dll!ctkPlugin::start(const QFlags<enum 
ctkPlugin::StartOption> & options={...})  Line 115    C++
        liborg_blueberry_osgi.dll!berry::InternalPlatform::main(const 
std::vector<std::basic_string<char,std::char_traits<char>,std::allocator<char> 
>,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char>
 > > > & args=[0]())  Line 532 + 0x79 bytes     C++
        PocoUtild.dll!Poco::Util::Application::run()  Line 310 + 0x22 bytes     
C++
        liborg_blueberry_osgi.dll!berry::InternalPlatform::Launch()  Line 359   
C++
        liborg_blueberry_osgi.dll!berry::Starter::Run(int & argc=2, char * * 
argv=0x00000000024acc40, Poco::Util::AbstractConfiguration * 
config=0x00000000024b7d90)  Line 57   C++
        ModelGeneration.exe!main(int argc=2, char * * argv=0x00000000024acc40)  
Line 57 + 0x1e bytes    C++
        ModelGeneration.exe!__tmainCRTStartup()  Line 582 + 0x19 bytes  C
        ModelGeneration.exe!mainCRTStartup()  Line 399  C
        kernel32.dll!0000000076c1652d()         
        ntdll.dll!0000000076d4c521()    
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2d-oct
_______________________________________________
mitk-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mitk-users

Reply via email to