Skip to content

Commit d000145

Browse files
committed
fix the leaks
1 parent 6f94a69 commit d000145

3 files changed

Lines changed: 5 additions & 7 deletions

File tree

.github/workflows/ci.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -384,10 +384,10 @@ jobs:
384384
fail-fast: false
385385
matrix:
386386
include:
387+
# We don't run memory sanitizer as it provides many false positives
388+
# for std
387389
- sanitizer: asan
388390
sanitizer_flags: "-Zsanitizer=address,leak"
389-
- sanitizer: msan
390-
sanitizer_flags: "-Zsanitizer=memory"
391391
- sanitizer: tsan
392392
sanitizer_flags: "-Zsanitizer=thread"
393393
name: "Rust tests (${{ matrix.sanitizer }})"

vortex-ffi/src/expression.rs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -433,11 +433,6 @@ mod tests {
433433
let array = StructArray::try_new(names, fields, 4, Validity::NonNullable);
434434

435435
unsafe {
436-
let expression = vx_expression_and(ptr::null(), 2);
437-
assert!(expression.is_null());
438-
let expression = vx_expression_or(ptr::null(), 2);
439-
assert!(expression.is_null());
440-
441436
let array = vx_array::new(Arc::new(array.unwrap().into_array()));
442437

443438
let root = vx_expression_root();
@@ -470,6 +465,7 @@ mod tests {
470465
assert_eq!(array.to_bit_buffer(), expected.to_bit_buffer());
471466
}
472467
vx_expression_free(expression_and123);
468+
vx_array_free(applied_array);
473469

474470
let expression_or123 = vx_expression_or(expressions_ptr, 2);
475471
assert!(!expression_or123.is_null());
@@ -481,6 +477,7 @@ mod tests {
481477
let expected = BoolArray::from_iter([true, true, true, false]);
482478
assert_eq!(array.to_bit_buffer(), expected.to_bit_buffer());
483479
}
480+
vx_array_free(applied_array);
484481

485482
vx_expression_free(expression_or123);
486483

vortex-ffi/src/lib.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ pub(crate) unsafe fn to_string(ptr: *const c_char) -> String {
4242
}
4343

4444
pub(crate) unsafe fn to_string_vec(ptr: *const *const c_char, len: usize) -> Vec<String> {
45+
#[allow(clippy::expect_used)]
4546
(0..len)
4647
.map(|i: usize| unsafe {
4748
to_string(*ptr.offset(i.try_into().expect("pointer offset overflow")))

0 commit comments

Comments
 (0)