unsegfault
This commit is contained in:
@@ -11,11 +11,9 @@ namespace Archimedes {
|
||||
public:
|
||||
int w, h;
|
||||
|
||||
Renderer(void* p = nullptr) : ptr(p) {}
|
||||
|
||||
~Renderer() {}
|
||||
|
||||
bool init() { return r.init(ptr); }
|
||||
bool init(void* ptr) { return r.init(ptr); }
|
||||
|
||||
void render() {
|
||||
r.render(rc, w, h);
|
||||
@@ -30,7 +28,6 @@ namespace Archimedes {
|
||||
private:
|
||||
std::list<std::function<void()>> rc;
|
||||
RendererImpl r;
|
||||
void* ptr;
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -23,12 +23,12 @@ namespace Archimedes {
|
||||
|
||||
data.window = p;
|
||||
data.sendEvent = sendEvent;
|
||||
|
||||
/*
|
||||
if (!SDL_Init(SDL_INIT_VIDEO | SDL_INIT_GAMEPAD)) {
|
||||
std::cerr << "Error: SDL_Init(): " << SDL_GetError() << std::endl;
|
||||
std::cerr << "Error: SDL_Init(): " << SDL_GetError() << std::flush;
|
||||
std::abort();
|
||||
}
|
||||
|
||||
*/
|
||||
#if RENDERER == 1
|
||||
SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1);
|
||||
SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, 24);
|
||||
|
||||
@@ -38,7 +38,7 @@ void WindowModule::onLoad() {
|
||||
app->registerEvent(Archimedes::FocusLostWindowEvent());
|
||||
app->registerEvent(Archimedes::MovedWindowEvent());
|
||||
|
||||
renderer = new Archimedes::Renderer(window->getWindowImpl().getWindow());
|
||||
renderer = new Archimedes::Renderer();
|
||||
}
|
||||
|
||||
void WindowModule::run() {
|
||||
|
||||
@@ -37,7 +37,7 @@ class WindowModule : public Archimedes::Module {
|
||||
window->setRenderer(renderer);
|
||||
|
||||
|
||||
if(!renderer->init()) {
|
||||
if(!renderer->init(window->getWindowImpl().getWindow())) {
|
||||
std::cout << "Renderer init failed!\n";
|
||||
std::abort();
|
||||
}
|
||||
|
||||
@@ -3,9 +3,11 @@
|
||||
void MinimalApp::run() {
|
||||
|
||||
for(std::string m : runOrder) {
|
||||
std::cout << "load" << m << std::endl;
|
||||
modules[m]->onLoad();
|
||||
}
|
||||
|
||||
|
||||
// Main loop
|
||||
while (!done && !runOrder.empty()) {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user