Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error #3694 After locking the computer #217

Closed
markknol opened this issue Jan 24, 2014 · 5 comments · May be fixed by #289
Closed

Error #3694 After locking the computer #217

markknol opened this issue Jan 24, 2014 · 5 comments · May be fixed by #289

Comments

@markknol
Copy link
Contributor

When I am developing and testing Flash game in the browser, then lock my computer (in Windows) and then unlock, I get this error:

[Fault] exception, information=Error: Error #3694: The object was disposed by an earlier call of dispose() on it.

This causes to freeze the browser when you have the FlashDevelop debugger enabled.
Would be helpful if this could be fixed.

@aduros
Copy link
Owner

aduros commented Jan 24, 2014

Looks like a Stage3D context loss. They're annoying, but you can handle them by watching System.hasGPU.

That said there may need to be more testing to make sure Flambe never throws this Error, and thinking about how we can make recovery automatic. I don't want to keep textures in memory, but maybe it's possible to automatically redownload them and update in-place.

@markknol
Copy link
Contributor Author

markknol commented Jul 9, 2014

Any ideas on this? It also seem to happen on Android. It would be nice if there was a integrated solution for this.

@markknol
Copy link
Contributor Author

Tried to do some fixes on this again, I would not mind to restart after context lost. I listen to System.hasGPU, and dispose everything on stage and memory, still get this error

Error: Error #3694: The object was disposed by an earlier call of dispose() on it.
    at flash.display3D::VertexBuffer3D/uploadFromVector()
    at flambe.platform.flash::Stage3DBatcher/flush()[C:\xxx\haxe\source\library\flambe\src\flambe\platform\flash\Stage3DBatcher.hx:311]
    at flambe.platform.flash::Stage3DBatcher/prepareDrawTexture()[C:\xxx\haxe\source\library\flambe\src\flambe\platform\flash\Stage3DBatcher.hx:186]
    at flambe.platform.flash::Stage3DGraphics/drawSubTexture()[C:\xxx\haxe\source\library\flambe\src\flambe\platform\flash\Stage3DGraphics.hx:120]
    at flambe.platform.flash::Stage3DGraphics/drawTexture()[C:\xxx\haxe\source\library\flambe\src\flambe\platform\flash\Stage3DGraphics.hx:97]
    at flambe.display::ImageSprite/draw()[C:\xxx\haxe\source\library\flambe\src\flambe\display\ImageSprite.hx:26]
    at flambe.display::Sprite$/render()[C:\xxx\haxe\source\library\flambe\src\flambe\display\Sprite.hx:233]
    at flambe.display::Sprite$/render()[C:\xxx\haxe\source\library\flambe\src\flambe\display\Sprite.hx:249]
    at flambe.display::Sprite$/render()[C:\xxx\haxe\source\library\flambe\src\flambe\display\Sprite.hx:249]
    at flambe.display::Sprite$/render()[C:\xxx\haxe\source\library\flambe\src\flambe\display\Sprite.hx:249]
    at flambe.display::Sprite$/render()[C:\xxx\haxe\source\library\flambe\src\flambe\display\Sprite.hx:249]
    at flambe.display::Sprite$/render()[C:\xxx\haxe\source\library\flambe\src\flambe\display\Sprite.hx:249]
    at flambe.display::Sprite$/render()[C:\xxx\haxe\source\library\flambe\src\flambe\display\Sprite.hx:249]
    at flambe.platform::MainLoop/render()[C:\xxx\haxe\source\library\flambe\src\flambe\platform\MainLoop.hx:64]
    at flambe.platform.flash::FlashPlatform/onRender()[C:\xxx\haxe\source\library\flambe\src\flambe\platform\flash\FlashPlatform.hx:249]

@Antriel
Copy link
Contributor

Antriel commented Aug 27, 2014

It is needed to add checks before accessing some context stuff. I actually managed to implement this for stage3d (didn't bother with webgl). I will try to clean it up and upload it to my fork, making a pull request.

@aduros
Copy link
Owner

aduros commented Aug 27, 2014

@Antriel please do!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants