Handle errors from MakeCurrent and SwapBuffers

This commit is contained in:
Pierre Krieger 2015-06-16 10:15:31 +02:00
parent e48c853b9c
commit f6c26ec593
20 changed files with 123 additions and 62 deletions

View file

@ -7,6 +7,7 @@ use std::collections::VecDeque;
use std::sync::Arc;
use BuilderAttribs;
use ContextError;
use CreationError;
use CursorState;
use Event;
@ -289,7 +290,7 @@ impl Window {
}
impl GlContext for Window {
unsafe fn make_current(&self) {
unsafe fn make_current(&self) -> Result<(), ContextError> {
match self {
&Window::X(ref w) => w.make_current(),
&Window::Wayland(ref w) => w.make_current()
@ -310,7 +311,7 @@ impl GlContext for Window {
}
}
fn swap_buffers(&self) {
fn swap_buffers(&self) -> Result<(), ContextError> {
match self {
&Window::X(ref w) => w.swap_buffers(),
&Window::Wayland(ref w) => w.swap_buffers()

View file

@ -2,6 +2,7 @@
use Api;
use BuilderAttribs;
use ContextError;
use CreationError;
use GlContext;
use PixelFormat;
@ -37,7 +38,7 @@ impl HeadlessContext {
impl GlContext for HeadlessContext {
#[inline]
unsafe fn make_current(&self) {
unsafe fn make_current(&self) -> Result<(), ContextError> {
self.0.make_current()
}
@ -52,7 +53,7 @@ impl GlContext for HeadlessContext {
}
#[inline]
fn swap_buffers(&self) {
fn swap_buffers(&self) -> Result<(), ContextError> {
self.0.swap_buffers()
}