I am trying to get the above minimal SDL+Cegui example working on OS X with OpenGL 3.2+ renderer using core profile, but it crashes on this line:
Code: Select all
CEGUI::SchemeManager::getSingleton().createFromFile( "OgreTray.scheme" );
GDB outputs this backtrace:
Code: Select all
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_INVALID_ADDRESS at address: 0x0000006700000081
CEGUI::String::length (this=0x6700000081) at String.h:623
623 return d_cplength;
(gdb) bt
#0 CEGUI::String::length (this=0x6700000081) at String.h:623
#1 0x000000010000806d in CEGUI::StringFastLessCompare::operator() (this=0x10412c428, a=@0x6700000081, b=@0x7fff5fbfe868) at String.h:5583
#2 0x0000000100009674 in std::__1::__tree<std::__1::__value_type<CEGUI::String, CEGUI::Scheme*>, std::__1::__map_value_compare<CEGUI::String, std::__1::__value_type<CEGUI::String, CEGUI::Scheme*>, CEGUI::StringFastLessCompare, true>, std::__1::allocator<std::__1::__value_type<CEGUI::String, CEGUI::Scheme*> > >::__lower_bound<CEGUI::String> (this=0x10412c418, __v=@0x7fff5fbfe868, __root=0x6700000061, __result=0x10412c420) at map:460
#3 0x00000001000093b4 in std::__1::__tree<std::__1::__value_type<CEGUI::String, CEGUI::Scheme*>, std::__1::__map_value_compare<CEGUI::String, std::__1::__value_type<CEGUI::String, CEGUI::Scheme*>, CEGUI::StringFastLessCompare, true>, std::__1::allocator<std::__1::__value_type<CEGUI::String, CEGUI::Scheme*> > >::find<CEGUI::String> (this=0x10412c418, __v=@0x7fff5fbfe868) at __tree:2039
#4 0x0000000100005c3c in std::__1::map<CEGUI::String, CEGUI::Scheme*, CEGUI::StringFastLessCompare, std::__1::allocator<std::__1::pair<CEGUI::String const, CEGUI::Scheme*> > >::find () at /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/c++/v1/map:355
#5 0x0000000100005c3c in CEGUI::NamedXMLResourceManager<CEGUI::Scheme, CEGUI::Scheme_xmlHandler>::isDefined (this=0x10412c340, object_name=@0x7fff5fbfe868) at NamedXMLResourceManager.h:355
#6 0x0000000100004ed7 in CEGUI::NamedXMLResourceManager<CEGUI::Scheme, CEGUI::Scheme_xmlHandler>::doExistingObjectAction (this=0x10412c340, object_name={<CEGUI::AllocatedObject<CEGUI::String>> = {<No data fields>}, static npos = <optimized out>, d_cplength = 8, d_reserve = 32, d_encodedbuff = 0x0, d_encodeddatlen = 0, d_encodedbufflen = 0, d_quickbuff = {79, 103, 114, 101, 84, 114, 97, 121, 0, 32767, 0, 0, 1606413440, 32767, 0, 0, 43699, 1, 1606413400, 32767, 1606412560, 32767, 40092, 1, 43699, 1, 1606413400, 32767, 43699, 1, 1606413400, 32767}, d_buffer = 0x0}, object=0x1041346a0, action=CEGUI::XREA_RETURN) at NamedXMLResourceManager.h:388
#7 0x0000000100004e20 in CEGUI::NamedXMLResourceManager<CEGUI::Scheme, CEGUI::Scheme_xmlHandler>::createFromFile (this=0x10412c340, xml_filename=@0x7fff5fbfed08, resource_group=@0x7fff5fbfec58, action=CEGUI::XREA_RETURN) at NamedXMLResourceManager.h:285
#8 0x0000000100003c35 in main () at /Users/jansimek/Development/minimal_sdl_cegui/main.cpp:49
I am using the latest CEGUI 0.8.4