mirror of
https://github.com/italicsjenga/winit-sonoma-fix.git
synced 2024-12-24 22:31:30 +11:00
Merge pull request #652 from tomaka/rem-gl-common
[Breaking change] Remove public exports of gl_common and libc
This commit is contained in:
commit
bfc46c5670
24
Cargo.toml
24
Cargo.toml
|
@ -13,11 +13,11 @@ build = "build.rs"
|
||||||
[dependencies]
|
[dependencies]
|
||||||
gl_common = "0.1.0"
|
gl_common = "0.1.0"
|
||||||
lazy_static = "0.1.10"
|
lazy_static = "0.1.10"
|
||||||
libc = "0.1"
|
libc = "0.2"
|
||||||
shared_library = "0.1.0"
|
shared_library = "0.1.0"
|
||||||
|
|
||||||
[build-dependencies]
|
[build-dependencies]
|
||||||
gl_generator = "0.1.0"
|
gl_generator = "0.2.0"
|
||||||
khronos_api = "0.0.8"
|
khronos_api = "0.0.8"
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
|
@ -27,22 +27,22 @@ clock_ticks = "0.1.0"
|
||||||
version = "0.1"
|
version = "0.1"
|
||||||
|
|
||||||
[target.i386-apple-ios.dependencies]
|
[target.i386-apple-ios.dependencies]
|
||||||
objc = ">=0.1.0, <=0.1.7"
|
objc = "0.1.8"
|
||||||
|
|
||||||
[target.x86_64-apple-ios.dependencies]
|
[target.x86_64-apple-ios.dependencies]
|
||||||
objc = ">=0.1.0, <=0.1.7"
|
objc = "0.1.8"
|
||||||
|
|
||||||
[target.aarch64-apple-ios.dependencies]
|
[target.aarch64-apple-ios.dependencies]
|
||||||
objc = ">=0.1.0, <=0.1.7"
|
objc = "0.1.8"
|
||||||
|
|
||||||
[target.armv7s-apple-ios.dependencies]
|
[target.armv7s-apple-ios.dependencies]
|
||||||
objc = ">=0.1.0, <=0.1.7"
|
objc = "0.1.8"
|
||||||
|
|
||||||
[target.armv7-apple-ios.dependencies]
|
[target.armv7-apple-ios.dependencies]
|
||||||
objc = ">=0.1.0, <=0.1.7"
|
objc = "0.1.8"
|
||||||
|
|
||||||
[target.x86_64-apple-darwin.dependencies]
|
[target.x86_64-apple-darwin.dependencies]
|
||||||
objc = ">=0.1.0, <=0.1.7"
|
objc = "0.1.8"
|
||||||
cgl = "0.1"
|
cgl = "0.1"
|
||||||
cocoa = "0.1.4"
|
cocoa = "0.1.4"
|
||||||
core-foundation = "0"
|
core-foundation = "0"
|
||||||
|
@ -53,7 +53,7 @@ winapi = "0.2"
|
||||||
shell32-sys = "0.1"
|
shell32-sys = "0.1"
|
||||||
gdi32-sys = "0.1"
|
gdi32-sys = "0.1"
|
||||||
user32-sys = "~0.1.2"
|
user32-sys = "~0.1.2"
|
||||||
kernel32-sys = "0.1"
|
kernel32-sys = "0.2"
|
||||||
dwmapi-sys = "0.1"
|
dwmapi-sys = "0.1"
|
||||||
|
|
||||||
[target.i686-pc-windows-msvc.dependencies]
|
[target.i686-pc-windows-msvc.dependencies]
|
||||||
|
@ -61,7 +61,7 @@ winapi = "0.2"
|
||||||
shell32-sys = "0.1"
|
shell32-sys = "0.1"
|
||||||
gdi32-sys = "0.1"
|
gdi32-sys = "0.1"
|
||||||
user32-sys = "~0.1.2"
|
user32-sys = "~0.1.2"
|
||||||
kernel32-sys = "0.1"
|
kernel32-sys = "0.2"
|
||||||
dwmapi-sys = "0.1"
|
dwmapi-sys = "0.1"
|
||||||
|
|
||||||
[target.x86_64-pc-windows-gnu.dependencies]
|
[target.x86_64-pc-windows-gnu.dependencies]
|
||||||
|
@ -69,7 +69,7 @@ winapi = "0.2"
|
||||||
shell32-sys = "0.1"
|
shell32-sys = "0.1"
|
||||||
gdi32-sys = "0.1"
|
gdi32-sys = "0.1"
|
||||||
user32-sys = "~0.1.2"
|
user32-sys = "~0.1.2"
|
||||||
kernel32-sys = "0.1"
|
kernel32-sys = "0.2"
|
||||||
dwmapi-sys = "0.1"
|
dwmapi-sys = "0.1"
|
||||||
|
|
||||||
[target.x86_64-pc-windows-msvc.dependencies]
|
[target.x86_64-pc-windows-msvc.dependencies]
|
||||||
|
@ -77,7 +77,7 @@ winapi = "0.2"
|
||||||
shell32-sys = "0.1"
|
shell32-sys = "0.1"
|
||||||
gdi32-sys = "0.1"
|
gdi32-sys = "0.1"
|
||||||
user32-sys = "~0.1.2"
|
user32-sys = "~0.1.2"
|
||||||
kernel32-sys = "0.1"
|
kernel32-sys = "0.2"
|
||||||
dwmapi-sys = "0.1"
|
dwmapi-sys = "0.1"
|
||||||
|
|
||||||
[target.i686-unknown-linux-gnu.dependencies]
|
[target.i686-unknown-linux-gnu.dependencies]
|
||||||
|
|
|
@ -13,7 +13,7 @@ pub struct Context {
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn load(window: &glutin::Window) -> Context {
|
pub fn load(window: &glutin::Window) -> Context {
|
||||||
let gl = gl::Gl::load(window);
|
let gl = gl::Gl::load_with(|ptr| window.get_proc_address(ptr) as *const _);
|
||||||
|
|
||||||
let version = unsafe {
|
let version = unsafe {
|
||||||
let data = CStr::from_ptr(gl.GetString(gl::VERSION) as *const _).to_bytes().to_vec();
|
let data = CStr::from_ptr(gl.GetString(gl::VERSION) as *const _).to_bytes().to_vec();
|
||||||
|
|
|
@ -263,7 +263,7 @@ impl GlContext for Window {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
self.context.get_proc_address(addr)
|
self.context.get_proc_address(addr)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -323,7 +323,7 @@ impl GlContext for HeadlessContext {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
self.0.get_proc_address(addr)
|
self.0.get_proc_address(addr)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -252,7 +252,7 @@ impl GlContext for Window {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
self.opengl.get_proc_address(addr)
|
self.opengl.get_proc_address(addr)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -91,7 +91,7 @@ impl GlContext for HeadlessContext {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
fn get_proc_address(&self, _addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, _addr: &str) -> *const () {
|
||||||
let symbol_name: CFString = _addr.parse().unwrap();
|
let symbol_name: CFString = _addr.parse().unwrap();
|
||||||
let framework_name: CFString = "com.apple.opengl".parse().unwrap();
|
let framework_name: CFString = "com.apple.opengl".parse().unwrap();
|
||||||
let framework = unsafe {
|
let framework = unsafe {
|
||||||
|
@ -100,7 +100,7 @@ impl GlContext for HeadlessContext {
|
||||||
let symbol = unsafe {
|
let symbol = unsafe {
|
||||||
CFBundleGetFunctionPointerForName(framework, symbol_name.as_concrete_TypeRef())
|
CFBundleGetFunctionPointerForName(framework, symbol_name.as_concrete_TypeRef())
|
||||||
};
|
};
|
||||||
symbol as *const libc::c_void
|
symbol as *const ()
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
|
|
|
@ -777,7 +777,7 @@ impl GlContext for Window {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
let symbol_name: CFString = FromStr::from_str(addr).unwrap();
|
let symbol_name: CFString = FromStr::from_str(addr).unwrap();
|
||||||
let framework_name: CFString = FromStr::from_str("com.apple.opengl").unwrap();
|
let framework_name: CFString = FromStr::from_str("com.apple.opengl").unwrap();
|
||||||
let framework = unsafe {
|
let framework = unsafe {
|
||||||
|
|
|
@ -284,7 +284,7 @@ impl GlContext for Context {
|
||||||
unsafe { self.egl.GetCurrentContext() == self.context }
|
unsafe { self.egl.GetCurrentContext() == self.context }
|
||||||
}
|
}
|
||||||
|
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
let addr = CString::new(addr.as_bytes()).unwrap();
|
let addr = CString::new(addr.as_bytes()).unwrap();
|
||||||
let addr = addr.as_ptr();
|
let addr = addr.as_ptr();
|
||||||
unsafe {
|
unsafe {
|
||||||
|
|
|
@ -221,7 +221,7 @@ impl GlContext for Window {
|
||||||
true // FIXME:
|
true // FIXME:
|
||||||
}
|
}
|
||||||
|
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
let addr = CString::new(addr.as_bytes()).unwrap();
|
let addr = CString::new(addr.as_bytes()).unwrap();
|
||||||
let addr = addr.as_ptr();
|
let addr = addr.as_ptr();
|
||||||
|
|
||||||
|
|
|
@ -82,7 +82,7 @@ impl GlContext for Context {
|
||||||
unsafe { self.glx.GetCurrentContext() == self.context }
|
unsafe { self.glx.GetCurrentContext() == self.context }
|
||||||
}
|
}
|
||||||
|
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
let addr = CString::new(addr.as_bytes()).unwrap();
|
let addr = CString::new(addr.as_bytes()).unwrap();
|
||||||
let addr = addr.as_ptr();
|
let addr = addr.as_ptr();
|
||||||
unsafe {
|
unsafe {
|
||||||
|
|
|
@ -384,12 +384,12 @@ impl GlContext for Window {
|
||||||
false
|
false
|
||||||
}
|
}
|
||||||
|
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
let addr_c = CString::new(addr).unwrap();
|
let addr_c = CString::new(addr).unwrap();
|
||||||
let path = CString::new("/System/Library/Frameworks/OpenGLES.framework/OpenGLES").unwrap();
|
let path = CString::new("/System/Library/Frameworks/OpenGLES.framework/OpenGLES").unwrap();
|
||||||
unsafe {
|
unsafe {
|
||||||
let lib = dlopen(path.as_ptr(), RTLD_LAZY | RTLD_GLOBAL);
|
let lib = dlopen(path.as_ptr(), RTLD_LAZY | RTLD_GLOBAL);
|
||||||
dlsym(lib, addr_c.as_ptr())
|
dlsym(lib, addr_c.as_ptr()) as *const _
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -106,7 +106,7 @@ impl GlContext for OsMesaContext {
|
||||||
unsafe { osmesa_sys::OSMesaGetCurrentContext() == self.context }
|
unsafe { osmesa_sys::OSMesaGetCurrentContext() == self.context }
|
||||||
}
|
}
|
||||||
|
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
unsafe {
|
unsafe {
|
||||||
let c_str = CString::new(addr.as_bytes().to_vec()).unwrap();
|
let c_str = CString::new(addr.as_bytes().to_vec()).unwrap();
|
||||||
mem::transmute(osmesa_sys::OSMesaGetProcAddress(mem::transmute(c_str.as_ptr())))
|
mem::transmute(osmesa_sys::OSMesaGetProcAddress(mem::transmute(c_str.as_ptr())))
|
||||||
|
|
|
@ -456,7 +456,7 @@ impl GlContext for Window {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
self.context.get_proc_address(addr)
|
self.context.get_proc_address(addr)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -171,7 +171,7 @@ impl GlContext for Context {
|
||||||
unsafe { gl::wgl::GetCurrentContext() == self.context.0 as *const libc::c_void }
|
unsafe { gl::wgl::GetCurrentContext() == self.context.0 as *const libc::c_void }
|
||||||
}
|
}
|
||||||
|
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
let addr = CString::new(addr.as_bytes()).unwrap();
|
let addr = CString::new(addr.as_bytes()).unwrap();
|
||||||
let addr = addr.as_ptr();
|
let addr = addr.as_ptr();
|
||||||
|
|
||||||
|
|
|
@ -365,7 +365,7 @@ impl GlContext for Window {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
match self.context {
|
match self.context {
|
||||||
Context::Wgl(ref c) => c.get_proc_address(addr),
|
Context::Wgl(ref c) => c.get_proc_address(addr),
|
||||||
Context::Egl(ref c) => c.get_proc_address(addr),
|
Context::Egl(ref c) => c.get_proc_address(addr),
|
||||||
|
|
|
@ -807,7 +807,7 @@ impl GlContext for Window {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
match self.x.context {
|
match self.x.context {
|
||||||
Context::Glx(ref ctxt) => ctxt.get_proc_address(addr),
|
Context::Glx(ref ctxt) => ctxt.get_proc_address(addr),
|
||||||
Context::Egl(ref ctxt) => ctxt.get_proc_address(addr),
|
Context::Egl(ref ctxt) => ctxt.get_proc_address(addr),
|
||||||
|
|
|
@ -8,9 +8,6 @@ use PixelFormat;
|
||||||
use PixelFormatRequirements;
|
use PixelFormatRequirements;
|
||||||
use Robustness;
|
use Robustness;
|
||||||
|
|
||||||
use gl_common;
|
|
||||||
use libc;
|
|
||||||
|
|
||||||
use platform;
|
use platform;
|
||||||
|
|
||||||
/// Object that allows you to build headless contexts.
|
/// Object that allows you to build headless contexts.
|
||||||
|
@ -103,8 +100,8 @@ impl HeadlessContext {
|
||||||
///
|
///
|
||||||
/// Contrary to `wglGetProcAddress`, all available OpenGL functions return an address.
|
/// Contrary to `wglGetProcAddress`, all available OpenGL functions return an address.
|
||||||
#[inline]
|
#[inline]
|
||||||
pub fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
pub fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
self.context.get_proc_address(addr) as *const libc::c_void
|
self.context.get_proc_address(addr)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Returns the API that is currently provided by this window.
|
/// Returns the API that is currently provided by this window.
|
||||||
|
@ -120,13 +117,6 @@ impl HeadlessContext {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl gl_common::GlFunctionsSource for HeadlessContext {
|
|
||||||
#[inline]
|
|
||||||
fn get_proc_addr(&self, addr: &str) -> *const libc::c_void {
|
|
||||||
self.get_proc_address(addr)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
impl GlContext for HeadlessContext {
|
impl GlContext for HeadlessContext {
|
||||||
#[inline]
|
#[inline]
|
||||||
unsafe fn make_current(&self) -> Result<(), ContextError> {
|
unsafe fn make_current(&self) -> Result<(), ContextError> {
|
||||||
|
@ -139,7 +129,7 @@ impl GlContext for HeadlessContext {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
self.context.get_proc_address(addr)
|
self.context.get_proc_address(addr)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -29,7 +29,6 @@ extern crate lazy_static;
|
||||||
#[macro_use]
|
#[macro_use]
|
||||||
extern crate shared_library;
|
extern crate shared_library;
|
||||||
|
|
||||||
extern crate gl_common;
|
|
||||||
extern crate libc;
|
extern crate libc;
|
||||||
|
|
||||||
#[cfg(target_os = "windows")]
|
#[cfg(target_os = "windows")]
|
||||||
|
@ -112,7 +111,7 @@ pub trait GlContext {
|
||||||
fn is_current(&self) -> bool;
|
fn is_current(&self) -> bool;
|
||||||
|
|
||||||
/// Returns the address of an OpenGL function.
|
/// Returns the address of an OpenGL function.
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void;
|
fn get_proc_address(&self, addr: &str) -> *const ();
|
||||||
|
|
||||||
/// Swaps the buffers in case of double or triple buffering.
|
/// Swaps the buffers in case of double or triple buffering.
|
||||||
///
|
///
|
||||||
|
|
|
@ -28,7 +28,7 @@ impl GlContext for HeadlessContext {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
self.0.get_proc_address(addr)
|
self.0.get_proc_address(addr)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
#![cfg(target_os = "ios")]
|
#![cfg(target_os = "ios")]
|
||||||
use libc::c_void;
|
|
||||||
|
|
||||||
use GlAttributes;
|
use GlAttributes;
|
||||||
use CreationError;
|
use CreationError;
|
||||||
|
@ -33,7 +32,7 @@ impl HeadlessContext {
|
||||||
}
|
}
|
||||||
|
|
||||||
/// See the docs in the crate root file.
|
/// See the docs in the crate root file.
|
||||||
pub fn get_proc_address(&self, _addr: &str) -> *const c_void {
|
pub fn get_proc_address(&self, _addr: &str) -> *const () {
|
||||||
unimplemented!()
|
unimplemented!()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -359,7 +359,7 @@ impl GlContext for Window {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
match self {
|
match self {
|
||||||
&Window::X(ref w) => w.get_proc_address(addr),
|
&Window::X(ref w) => w.get_proc_address(addr),
|
||||||
&Window::Wayland(ref w) => w.get_proc_address(addr)
|
&Window::Wayland(ref w) => w.get_proc_address(addr)
|
||||||
|
|
|
@ -7,7 +7,6 @@ use GlAttributes;
|
||||||
use GlContext;
|
use GlContext;
|
||||||
use PixelFormat;
|
use PixelFormat;
|
||||||
use PixelFormatRequirements;
|
use PixelFormatRequirements;
|
||||||
use libc;
|
|
||||||
|
|
||||||
use api::osmesa::{self, OsMesaContext};
|
use api::osmesa::{self, OsMesaContext};
|
||||||
|
|
||||||
|
@ -45,7 +44,7 @@ impl GlContext for HeadlessContext {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
self.0.get_proc_address(addr)
|
self.0.get_proc_address(addr)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -4,8 +4,6 @@ pub use api::win32;
|
||||||
pub use api::win32::{MonitorId, get_available_monitors, get_primary_monitor};
|
pub use api::win32::{MonitorId, get_available_monitors, get_primary_monitor};
|
||||||
pub use api::win32::{WindowProxy, PollEventsIterator, WaitEventsIterator};
|
pub use api::win32::{WindowProxy, PollEventsIterator, WaitEventsIterator};
|
||||||
|
|
||||||
use libc;
|
|
||||||
|
|
||||||
use Api;
|
use Api;
|
||||||
use ContextError;
|
use ContextError;
|
||||||
use CreationError;
|
use CreationError;
|
||||||
|
@ -134,7 +132,7 @@ impl GlContext for HeadlessContext {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
match self {
|
match self {
|
||||||
&HeadlessContext::HiddenWindow(ref ctxt) => ctxt.get_proc_address(addr),
|
&HeadlessContext::HiddenWindow(ref ctxt) => ctxt.get_proc_address(addr),
|
||||||
&HeadlessContext::EglPbuffer(ref ctxt) => ctxt.get_proc_address(addr),
|
&HeadlessContext::EglPbuffer(ref ctxt) => ctxt.get_proc_address(addr),
|
||||||
|
|
|
@ -18,9 +18,7 @@ use Window;
|
||||||
use WindowAttributes;
|
use WindowAttributes;
|
||||||
use native_monitor::NativeMonitorId;
|
use native_monitor::NativeMonitorId;
|
||||||
|
|
||||||
use gl_common;
|
|
||||||
use libc;
|
use libc;
|
||||||
|
|
||||||
use platform;
|
use platform;
|
||||||
|
|
||||||
/// Object that allows you to build windows.
|
/// Object that allows you to build windows.
|
||||||
|
@ -397,8 +395,8 @@ impl Window {
|
||||||
///
|
///
|
||||||
/// Contrary to `wglGetProcAddress`, all available OpenGL functions return an address.
|
/// Contrary to `wglGetProcAddress`, all available OpenGL functions return an address.
|
||||||
#[inline]
|
#[inline]
|
||||||
pub fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
pub fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
self.window.get_proc_address(addr) as *const libc::c_void
|
self.window.get_proc_address(addr)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Swaps the buffers in case of double or triple buffering.
|
/// Swaps the buffers in case of double or triple buffering.
|
||||||
|
@ -492,13 +490,6 @@ impl Window {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl gl_common::GlFunctionsSource for Window {
|
|
||||||
#[inline]
|
|
||||||
fn get_proc_addr(&self, addr: &str) -> *const libc::c_void {
|
|
||||||
self.get_proc_address(addr)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
impl GlContext for Window {
|
impl GlContext for Window {
|
||||||
#[inline]
|
#[inline]
|
||||||
unsafe fn make_current(&self) -> Result<(), ContextError> {
|
unsafe fn make_current(&self) -> Result<(), ContextError> {
|
||||||
|
@ -511,7 +502,7 @@ impl GlContext for Window {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
fn get_proc_address(&self, addr: &str) -> *const libc::c_void {
|
fn get_proc_address(&self, addr: &str) -> *const () {
|
||||||
self.get_proc_address(addr)
|
self.get_proc_address(addr)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue