Hi!

With the latest SVN Equalizer version, it seems that the creation of
eq::Node, eq::Pipe, ... is triggered in eq::Config::init() in the line
'while( !localNode->isRequestServed( packet.requestID ))'.

However, when I call eq::Config::init() from my own Config class, this
does not happen, and this line leads to a crash (valgrind excerpt
attached). All my attempts to narrow down the problem have failed. The
examples work fine, my application crashes, even though I cannot spot a
difference between what eqPly does and what I do. I'm completely lost.

Does someone have an idea what I'm doing wrong? Maybe there's something
obvious that I'm missing?

Martin
-- 
Computer Graphics and Multimedia Systems Group
University of Siegen, Germany
http://www.cg.informatik.uni-siegen.de/
==11406== Jump to the invalid address stated on the next line
==11406==    at 0xD64BDC0: ???
==11406==    by 0x68DA849: 
eq::net::CommandFunc<eq::net::Dispatcher>::operator()(eq::net::Command&) 
(commandFunc.h:48)
==11406==    by 0x68DA2C6: 
eq::net::Dispatcher::invokeCommand(eq::net::Command&) (dispatcher.cpp:121)
==11406==    by 0x694CBBC: eq::net::Session::invokeCommand(eq::net::Command&) 
(session.cpp:746)
==11406==    by 0x68FCD01: eq::net::Node::invokeCommand(eq::net::Command&) 
(node.cpp:1212)
==11406==    by 0x68B3BEE: eq::fabric::Client::invokeCommand(eq::net::Command&) 
(client.cpp:143)
==11406==    by 0x68B38FF: eq::fabric::Client::processCommand() (client.cpp:100)
==11406==    by 0x681EDF4: eq::Config::init(unsigned int) (config.cpp:160)
==11406==    by 0x4A4C2B: eq_config::init(player_init_data const&) 
(player_equalizer.cpp:299)
==11406==    by 0x4A2F46: player_equalizer::open(player_init_data const&) 
(player_equalizer.cpp:694)
==11406==    by 0x4A024B: main (main.cpp:343)
==11406==  Address 0xd64bdc0 is 0 bytes after a block of size 1,536 alloc'd
==11406==    at 0x4C28973: operator new(unsigned long) (vg_replace_malloc.c:261)
==11406==    by 0x68DB9B5: 
__gnu_cxx::new_allocator<eq::net::CommandFunc<eq::net::Dispatcher> 
>::allocate(unsigned long, void const*) (new_allocator.h:89)
==11406==    by 0x68DB570: 
std::_Vector_base<eq::net::CommandFunc<eq::net::Dispatcher>, 
std::allocator<eq::net::CommandFunc<eq::net::Dispatcher> > 
>::_M_allocate(unsigned long) (stl_vector.h:140)
==11406==    by 0x68DACB8: 
std::vector<eq::net::CommandFunc<eq::net::Dispatcher>, 
std::allocator<eq::net::CommandFunc<eq::net::Dispatcher> > 
>::_M_insert_aux(__gnu_cxx::__normal_iterator<eq::net::CommandFunc<eq::net::Dispatcher>*,
 std::v
==11406==    by 0x68DA713: 
std::vector<eq::net::CommandFunc<eq::net::Dispatcher>, 
std::allocator<eq::net::CommandFunc<eq::net::Dispatcher> > 
>::push_back(eq::net::CommandFunc<eq::net::Dispatcher> const&) 
(stl_vector.h:741)
==11406==    by 0x68D9D57: eq::net::Dispatcher::_registerCommand(unsigned int, 
eq::net::CommandFunc<eq::net::Dispatcher> const&, eq::net::CommandQueue*) 
(dispatcher.cpp:61)
==11406==    by 0x682CC57: void 
eq::net::Dispatcher::registerCommand<eq::fabric::Config<eq::Server, eq::Config, 
eq::Observer, eq::Layout, eq::Canvas, eq::Node, 
eq::fabric::ConfigVisitor<eq::Config, eq::fabric::LeafVisitor<eq::Observer>, 
==11406==    by 0x6826E77: eq::fabric::Config<eq::Server, eq::Config, 
eq::Observer, eq::Layout, eq::Canvas, eq::Node, 
eq::fabric::ConfigVisitor<eq::Config, eq::fabric::LeafVisitor<eq::Observer>, 
eq::fabric::ElementVisitor<eq::Layout, eq:
==11406==    by 0x681E57F: 
eq::Config::notifyMapped(eq::base::RefPtr<eq::net::Node>) (config.cpp:82)
==11406==    by 0x694650E: 
eq::net::Session::_setLocalNode(eq::base::RefPtr<eq::net::Node>) 
(session.cpp:99)
==11406==    by 0x68F6B20: eq::net::Node::_addSession(eq::net::Session*, 
eq::base::RefPtr<eq::net::Node>, eq::base::UUID const&) (node.cpp:512)
==11406==    by 0x68FE24E: 
eq::net::Node::_cmdMapSessionReply(eq::net::Command&) (node.cpp:1305)
_______________________________________________
eq-dev mailing list
[email protected]
http://www.equalizergraphics.com/cgi-bin/mailman/listinfo/eq-dev
http://www.equalizergraphics.com

Reply via email to