diff --git a/deps/rabbit/src/rabbit_disk_monitor.erl b/deps/rabbit/src/rabbit_disk_monitor.erl index e095481353..28b4cb3eba 100644 --- a/deps/rabbit/src/rabbit_disk_monitor.erl +++ b/deps/rabbit/src/rabbit_disk_monitor.erl @@ -180,8 +180,12 @@ code_change(_OldVsn, State, _Extra) -> safe_ets_lookup(Key, Default) -> try - [{Key, Value}] = ets:lookup(?ETS_NAME, Key), - Value + case ets:lookup(?ETS_NAME, Key) of + [{Key, Value}] -> + Value; + [] -> + Default + end catch error:badarg -> Default diff --git a/deps/rabbit/test/unit_disk_monitor_mocks_SUITE.erl b/deps/rabbit/test/unit_disk_monitor_mocks_SUITE.erl index 80fa3d2e09..ae16cbb379 100644 --- a/deps/rabbit/test/unit_disk_monitor_mocks_SUITE.erl +++ b/deps/rabbit/test/unit_disk_monitor_mocks_SUITE.erl @@ -88,7 +88,7 @@ disk_monitor_enable1(_Config) -> application:set_env(rabbit, disk_monitor_failure_retry_interval, 100), ok = rabbit_sup:stop_child(rabbit_disk_monitor_sup), ok = rabbit_sup:start_delayed_restartable_child(rabbit_disk_monitor, [1000]), - undefined = rabbit_disk_monitor:get_disk_free(), + unknown = rabbit_disk_monitor:get_disk_free(), Cmd = case os:type() of {win32, _} -> " Le volume dans le lecteur C n’a pas de nom.\n" " Le numéro de série du volume est 707D-5BDC\n"