Page MenuHome

Windows: Fix popup in background render.
Needs RevisionPublic

Authored by LazyDodo (LazyDodo) on May 28 2019, 6:17 PM.

Details

Summary

Little bit of history, recently we added a grease_pencil test while running this
test on the azure test farm.

linux crashed
mac crashed
win32/win64 hung and got killed after 2 hours.

Looking into this revealed T65212, but with that fix in place and re-running
the tests this morning same results.

It seems that on a server farm, we can't get an opengl context, which is not
totally crazy. Now I don't know how lin/mac deal with this but on windows
we display a nice popup "Unsupported graphics card" which is great, but it
also does a great job at explaining why the win32/64 builder were hanging
for 2 hours.

Now this patch changes the popup to some printf's however the issue is
I don't like anything about this, and it seems there are much bigger issues
hiding which could also explain the lin/mac crashes.

I left comments in the code to explain better, but the gist of it is
we do not count on getting an opengl context ever failing, and from where
this is happening there is seemingly no graceful way to terminate the render.

For now i've asked @Brecht Van Lommel (brecht) to move this test to the opengl test pool, but
this is probably something we should look at.

Diff Detail

Repository
rB Blender
Branch
no_popup (branched from master)
Build Status
Buildable 3761
Build 3761: arc lint + arc unit

Event Timeline

intern/ghost/intern/GHOST_SystemWin32.cpp
446–449

This seems like a mistake, I think changing this to exit(1) is ok.

Even if it's drastic, there is not much to be done after initializing an OpenGL context fails.

intern/ghost/intern/GHOST_SystemWin32.cpp
446–449

Took a quick peek at the X11 code, that seems to just return NULL and will run into the deref issues mentioned.

Brecht Van Lommel (brecht) requested changes to this revision.Jun 28 2019, 5:32 PM

I think we can just remove the exit() call and return NULL then, and let it crash like it already does. Improving that should not block this.

Further, please remove the code review comments from the code and I think this is good to commit.

This revision now requires changes to proceed.Jun 28 2019, 5:32 PM