diff options
| author | Vivian Lim <[email protected]> | 2021-02-06 19:34:51 -0800 |
|---|---|---|
| committer | Vivian Lim <[email protected]> | 2021-02-06 19:34:51 -0800 |
| commit | 8b35effd3cd14843bb4d26f3566741d53fe97b76 (patch) | |
| tree | 10e3a128542960efe0b6301005b5fbc0bd95382d /ctru-rs | |
| parent | tweaks to get it to attempt linking (diff) | |
| download | archived-ctru-rs-8b35effd3cd14843bb4d26f3566741d53fe97b76.tar.xz archived-ctru-rs-8b35effd3cd14843bb4d26f3566741d53fe97b76.zip | |
Support libctru 2.0
Diffstat (limited to 'ctru-rs')
| -rw-r--r-- | ctru-rs/src/applets/swkbd.rs | 5 | ||||
| -rw-r--r-- | ctru-rs/src/console.rs | 2 | ||||
| -rw-r--r-- | ctru-rs/src/sdmc.rs | 4 | ||||
| -rw-r--r-- | ctru-rs/src/services/gspgpu.rs | 6 | ||||
| -rw-r--r-- | ctru-rs/src/thread.rs | 3 |
5 files changed, 11 insertions, 9 deletions
diff --git a/ctru-rs/src/applets/swkbd.rs b/ctru-rs/src/applets/swkbd.rs index 1c14cab..5091539 100644 --- a/ctru-rs/src/applets/swkbd.rs +++ b/ctru-rs/src/applets/swkbd.rs @@ -1,6 +1,7 @@ use std::iter::once; use std::mem; use std::str; +use std::convert::TryInto; use libctru::{self, SwkbdState, swkbdInit, swkbdSetFeatures, swkbdSetHintText, swkbdInputText, swkbdSetButton}; @@ -90,7 +91,7 @@ impl Swkbd { /// (from 1-3). pub fn init(keyboard_type: Kind, num_buttons: i32) -> Self { unsafe { - let mut state = Box::new(mem::uninitialized::<SwkbdState>()); + let mut state = Box::new(SwkbdState::default()); swkbdInit(state.as_mut(), keyboard_type as u32, num_buttons, -1); Swkbd { state } } @@ -127,7 +128,7 @@ impl Swkbd { /// the output will be truncated but should still be well-formed UTF-8 pub fn get_bytes(&mut self, buf: &mut [u8]) -> Result<Button, Error> { unsafe { - match swkbdInputText(self.state.as_mut(), buf.as_mut_ptr(), buf.len()) { + match swkbdInputText(self.state.as_mut(), buf.as_mut_ptr(), buf.len().try_into().unwrap()) { libctru::SWKBD_BUTTON_NONE => Err(self.parse_swkbd_error()), libctru::SWKBD_BUTTON_LEFT => Ok(Button::Left), libctru::SWKBD_BUTTON_MIDDLE => Ok(Button::Middle), diff --git a/ctru-rs/src/console.rs b/ctru-rs/src/console.rs index d1a22e6..eb8df6b 100644 --- a/ctru-rs/src/console.rs +++ b/ctru-rs/src/console.rs @@ -15,7 +15,7 @@ impl Console { /// printing. pub fn init(screen: Screen) -> Self { unsafe { - let mut context = Box::new(mem::uninitialized::<PrintConsole>()); + let mut context = Box::new(PrintConsole::default()); consoleInit(screen.into(), context.as_mut()); Console { context, } } diff --git a/ctru-rs/src/sdmc.rs b/ctru-rs/src/sdmc.rs index 6c435f1..de08a9a 100644 --- a/ctru-rs/src/sdmc.rs +++ b/ctru-rs/src/sdmc.rs @@ -3,7 +3,7 @@ pub struct Sdmc(()); impl Sdmc { pub fn init() -> ::Result<Sdmc> { unsafe { - let r = ::libctru::sdmcInit(); + let r = ::libctru::archiveMountSdmc(); if r < 0 { Err(r.into()) } else { @@ -15,6 +15,6 @@ impl Sdmc { impl Drop for Sdmc { fn drop(&mut self) { - unsafe { ::libctru::sdmcExit() }; + unsafe { ::libctru::archiveUnmountAll() }; } } diff --git a/ctru-rs/src/services/gspgpu.rs b/ctru-rs/src/services/gspgpu.rs index b047493..e1fa12d 100644 --- a/ctru-rs/src/services/gspgpu.rs +++ b/ctru-rs/src/services/gspgpu.rs @@ -51,8 +51,8 @@ pub fn wait_for_event(ev: Event, discard_current: bool) { } } -impl From<::libctru::GSPGPU_FramebufferFormats> for FramebufferFormat { - fn from(g: ::libctru::GSPGPU_FramebufferFormats) -> Self { +impl From<::libctru::GSPGPU_FramebufferFormat> for FramebufferFormat { + fn from(g: ::libctru::GSPGPU_FramebufferFormat) -> Self { use self::FramebufferFormat::*; match g { ::libctru::GSP_RGBA8_OES => Rgba8, @@ -65,7 +65,7 @@ impl From<::libctru::GSPGPU_FramebufferFormats> for FramebufferFormat { } } -impl From<FramebufferFormat> for ::libctru::GSPGPU_FramebufferFormats { +impl From<FramebufferFormat> for ::libctru::GSPGPU_FramebufferFormat { fn from(g: FramebufferFormat) -> Self { use self::FramebufferFormat::*; match g { diff --git a/ctru-rs/src/thread.rs b/ctru-rs/src/thread.rs index a194a3e..481e559 100644 --- a/ctru-rs/src/thread.rs +++ b/ctru-rs/src/thread.rs @@ -892,6 +892,7 @@ mod imp { use std::mem; use std::ptr; use std::time::Duration; + use std::convert::TryInto; use libc; @@ -920,7 +921,7 @@ mod imp { let handle = threadCreate( Some(thread_func), &*p as *const _ as *mut _, - stack_size, + stack_size.try_into().unwrap(), priority, affinity, false, |