From 4ee5f13638d368729f7221453520fd5f78f0b755 Mon Sep 17 00:00:00 2001 From: Robbert van der Helm Date: Wed, 1 Mar 2023 19:53:36 +0100 Subject: [PATCH] Log assert_no_alloc failures using the logger This can now finally be enabled thanks to NIH-log explicitly supporting reentrant logging. This finally resolves #30. --- Cargo.lock | 1 + Cargo.toml | 8 +------- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 59046f37..a3aad805 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -177,6 +177,7 @@ version = "1.1.2" source = "git+https://github.com/robbert-vdh/rust-assert-no-alloc.git?branch=nih-plug#95120d996240a2c279a6067502e11b62d30563a6" dependencies = [ "backtrace", + "log", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 9379e80c..fd44c13e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -95,13 +95,7 @@ widestring = "1.0.0-beta.1" # Used for the `assert_process_allocs` feature. This fork includes support for # the log crate and printing backtraces on allocation failure so you can trace # the allocation back to a place in the code. -# TODO: The `log` feature causes would pipe these messages through our logger -# which is great in theory, but if the allocation failure happens as part -# of the logger then this will cause the program to hang indefinitely -# because simplelog gates the log function behind a mutex. At some point -# we should implement our own logger and enable this feature. That way we -# can also use CLAP's logging extension. -assert_no_alloc = { git = "https://github.com/robbert-vdh/rust-assert-no-alloc.git", branch = "nih-plug", features = ["backtrace"], optional = true } +assert_no_alloc = { git = "https://github.com/robbert-vdh/rust-assert-no-alloc.git", branch = "nih-plug", features = ["backtrace", "log"], optional = true } # Used for the `standalone` feature # NOTE: OpenGL support is not needed here, but rust-analyzer gets confused when