Compare commits

..

1 Commits

Author SHA1 Message Date
paring 2d2215ce96
fix: use two numbers to send current time 2022-11-26 18:41:06 +09:00
3 changed files with 10 additions and 14 deletions

View File

@ -4,9 +4,8 @@ version = "0.1.0"
edition = "2021"
[dependencies]
chrono = "0.4.23"
skyhook = { path = "./vendor/skyhook/skyhook" }
[lib]
name = "skyhook"
crate-type = ["cdylib"]
crate-type = ["dylib"]

View File

@ -1,11 +1,9 @@
use std::{
ffi::{c_char, CString},
ptr::null,
time::{SystemTime, UNIX_EPOCH},
};
use chrono::NaiveDateTime;
extern crate chrono;
extern crate skyhook;
#[repr(C)]
@ -16,7 +14,7 @@ pub enum NativeEventType {
#[repr(C)]
pub struct NativeEvent {
pub time_sec: i64,
pub time_sec: u64,
pub time_nsec: u32,
pub event_type: NativeEventType,
pub vkey: u16,
@ -33,8 +31,12 @@ fn send_callback(ev: NativeEvent) {
}
}
fn get_time(time: NaiveDateTime) -> (i64, u32) {
(time.timestamp(), time.timestamp_subsec_nanos())
fn get_time(time: SystemTime) -> (u64, u32) {
let dur = time
.duration_since(UNIX_EPOCH)
.expect("Unable to calculate duration");
(dur.as_secs(), dur.subsec_nanos())
}
#[no_mangle]
@ -80,8 +82,3 @@ pub extern "C" fn stop_hook() -> *const c_char {
null()
}
#[no_mangle]
pub extern "C" fn hook_is_running() -> bool {
skyhook::is_running()
}

2
vendor/skyhook vendored

@ -1 +1 @@
Subproject commit ebf908ad35cfcb9b2af3b027fcff6c859e3c1d6f
Subproject commit 530166d47103698a2613e42b47f8c89a91c2363b