SFML community forums
Help => Window => Topic started by: marek3571 on June 17, 2011, 07:56:03 am
-
Hi,
I keep getting a runtime error when trying to create a window with SFML 2.0 when the class itself was constructed on a different thread.
class testThread : public MyThread //not derived from sf::Thread
{
public:
testThread() : foo(), MyThread() { } //thread starts upon construction
void run()
{
foo.Create(sf::VideoMode(800, 600), "Test Window");
foo.Close();
}
private:
sf::Window foo;
};
When I try to run this, it crashes in sf::Window::Close() on the line delete myContext;
with the error Unhandled exception at 0x000007fef35cf78f (sfml-window-d-2.dll) in SFML test.exe: 0xC0000005: Access violation reading location 0xffffffffffffffff."
However, I found that if I added sf::Window bar;
right before foo.Create(), the whole thing worked. What am I doing wrong???
-
Well, i just looked a little closer and discovered that the problem is actually the way i handled my threads. The constructor was still running when foo.Create() was called.