Skip to content

Commit cda608d

Browse files
committed
Misc rust cleanup
1 parent c79287b commit cda608d

File tree

2 files changed

+7
-19
lines changed

2 files changed

+7
-19
lines changed

rust/src/logger.rs

Lines changed: 7 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,10 @@ use binaryninjacore_sys::{
3535
};
3636

3737
use crate::rc::{Ref, RefCountable};
38-
use crate::string::{BnString, IntoCStr};
38+
use crate::string::{raw_to_string, BnString, IntoCStr};
3939
use log;
4040
use log::LevelFilter;
41-
use std::ffi::{CStr, CString};
41+
use std::ffi::CString;
4242
use std::os::raw::{c_char, c_void};
4343
use std::ptr::NonNull;
4444

@@ -138,15 +138,14 @@ impl log::Log for Ref<Logger> {
138138
};
139139

140140
if let Ok(msg) = CString::new(format!("{}", record.args())) {
141-
let percent_s = CString::new("%s").expect("'%s' has no null bytes");
142141
let logger_name = self.name().to_cstr();
143142
unsafe {
144143
BNLog(
145144
self.session_id(),
146145
level,
147146
logger_name.as_ptr(),
148147
0,
149-
percent_s.as_ptr(),
148+
c"%s".as_ptr(),
150149
msg.as_ptr(),
151150
);
152151
}
@@ -160,7 +159,7 @@ unsafe impl Send for Logger {}
160159
unsafe impl Sync for Logger {}
161160

162161
pub trait LogListener: 'static + Sync {
163-
fn log(&self, session: usize, level: Level, msg: &CStr, logger_name: &CStr, tid: usize);
162+
fn log(&self, session: usize, level: Level, msg: &str, logger_name: &str, tid: usize);
164163
fn level(&self) -> Level;
165164
fn close(&self) {}
166165
}
@@ -220,13 +219,9 @@ extern "C" fn cb_log<L>(
220219
{
221220
ffi_wrap!("LogListener::log", unsafe {
222221
let listener = &*(ctxt as *const L);
223-
listener.log(
224-
session,
225-
level,
226-
CStr::from_ptr(msg),
227-
CStr::from_ptr(logger_name),
228-
tid,
229-
);
222+
let msg_str = raw_to_string(msg).unwrap();
223+
let logger_name_str = raw_to_string(logger_name).unwrap();
224+
listener.log(session, level, &msg_str, &logger_name_str, tid);
230225
})
231226
}
232227

rust/tests/collaboration.rs

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,6 @@ fn temp_project_scope<T: Fn(&RemoteProject)>(remote: &Remote, project_name: &str
2020
// TODO: have connected by the time this errors out. Maybe?
2121
let _ = remote.connect();
2222
}
23-
24-
if let Ok(home_dir) = env::var("HOME").or_else(|_| env::var("USERPROFILE")) {
25-
eprintln!("Current user directory: {}", home_dir);
26-
} else {
27-
eprintln!("Unable to determine the current user directory.");
28-
}
29-
3023
let project = remote
3124
.create_project(project_name, "Test project for test purposes")
3225
.expect("Failed to create project");

0 commit comments

Comments
 (0)