diff --git a/.travis.yml b/.travis.yml index 38ce288..a9548b1 100644 --- a/.travis.yml +++ b/.travis.yml @@ -27,9 +27,9 @@ os: script: - cd surfman - cargo build --verbose - - cargo build --verbose --features=sm-osmesa - cargo build --verbose --features=sm-angle-default - cargo build --verbose --features=sm-wayland-default + - cargo build --verbose --features=sm-winit - rustup target add arm-linux-androideabi - cargo build --verbose --target=arm-linux-androideabi - rustup target add aarch64-pc-windows-msvc diff --git a/surfman/src/platform/android/context.rs b/surfman/src/platform/android/context.rs index 84e088d..26bda80 100644 --- a/surfman/src/platform/android/context.rs +++ b/surfman/src/platform/android/context.rs @@ -86,7 +86,8 @@ impl Device { unsafe { // Create the EGL context. - let egl_context = context::create_context(egl_display, descriptor)?; + let gl_api = self.gl_api(); + let egl_context = context::create_context(egl_display, descriptor, gl_api)?; // Create a dummy pbuffer. let pbuffer = context::create_dummy_pbuffer(egl_display, egl_context); diff --git a/surfman/src/platform/windows/angle/surface.rs b/surfman/src/platform/windows/angle/surface.rs index 73f06bf..55054c0 100644 --- a/surfman/src/platform/windows/angle/surface.rs +++ b/surfman/src/platform/windows/angle/surface.rs @@ -10,6 +10,7 @@ use crate::gl; use crate::platform::generic::egl::device::EGL_FUNCTIONS; use crate::platform::generic::egl::error::ToWindowingApiError; use crate::platform::generic::egl::ffi::EGL_D3D_TEXTURE_2D_SHARE_HANDLE_ANGLE; +use crate::platform::generic::egl::ffi::EGL_D3D_TEXTURE_ANGLE; use crate::platform::generic::egl::ffi::EGL_DXGI_KEYED_MUTEX_ANGLE; use crate::platform::generic::egl::ffi::EGL_EXTENSION_FUNCTIONS; use crate::{Error, SurfaceAccess, SurfaceID, SurfaceInfo, SurfaceType}; @@ -158,11 +159,11 @@ impl Device { ]; EGL_FUNCTIONS.with(|egl| { - let egl_surface = if let Some(HandleOrTexture::Texture(texture)) = share_handle { + let egl_surface = if let Some(share_handle) = share_handle { let surface = - egl.CreatePbufferFromClientBuffer(self.native_display.egl_display(), + egl.CreatePbufferFromClientBuffer(self.egl_display, EGL_D3D_TEXTURE_ANGLE, - texture as *const _, + share_handle as *const _, egl_config, attributes.as_ptr()); assert_ne!(surface, egl::NO_SURFACE);