diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 34650e9..4cfcb34 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -3,41 +3,8 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -157,7 +98,6 @@ - TerminalColor conte terminal_cursor term @@ -187,6 +127,7 @@ use Borrow fmt + STD_OUTPUT_HANDLE crossterm_cursor @@ -248,10 +189,8 @@ @@ -274,10 +215,10 @@ - @@ -427,7 +368,7 @@ - + @@ -617,15 +558,15 @@ - + - - + @@ -694,34 +635,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -769,6 +682,10 @@ + + + + @@ -898,13 +815,6 @@ - - - - - - - @@ -958,13 +868,6 @@ - - - - - - - @@ -985,20 +888,6 @@ - - - - - - - - - - - - - - @@ -1006,13 +895,6 @@ - - - - - - - @@ -1058,8 +940,71 @@ - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/kernel/windows_kernel/kernel.rs b/src/kernel/windows_kernel/kernel.rs index 7341c85..3a9f781 100644 --- a/src/kernel/windows_kernel/kernel.rs +++ b/src/kernel/windows_kernel/kernel.rs @@ -307,9 +307,9 @@ pub fn write_char_buffer(handle: HANDLE, buf: &[u8]) // get string from u8[] and parse it to an c_str let mut data = str::from_utf8(buf).unwrap(); - let c_str = CString::new(data); - let ptr: *const u16 = c_str.unwrap().as_ptr() as *const u16; - + let c_str = CString::new(data).unwrap(); + let ptr: *const u16 = c_str.as_ptr() as *const u16; + panic!("{:?}", ptr); // get current position let current_pos = COORD {X: csbi.dwCursorPosition.X, Y: csbi.dwCursorPosition.Y}; diff --git a/src/state/state_manager.rs b/src/state/state_manager.rs index fe58955..0acceed 100644 --- a/src/state/state_manager.rs +++ b/src/state/state_manager.rs @@ -4,6 +4,7 @@ use super::commands::IStateCommand; use super::commands::shared_commands::EmptyCommand; use std::rc::Rc; +use std::sync::Mutex; use std::collections::HashMap; /// Struct that stores the changed states of the terminal.