File 0894-stdlib-Cuddle-ets_SUITE-t_delete_all_objects_trap.patch of Package erlang

From 19eadbf2993f9eb551438d08b5296b9c4fa0ece3 Mon Sep 17 00:00:00 2001
From: Sverker Eriksson <sverker@erlang.org>
Date: Mon, 3 Mar 2025 14:11:50 +0100
Subject: [PATCH 1/2] stdlib: Cuddle ets_SUITE:t_delete_all_objects_trap

Could fail on DEBUG due to forced trap at table lookup.
---
 lib/stdlib/test/ets_SUITE.erl | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/lib/stdlib/test/ets_SUITE.erl b/lib/stdlib/test/ets_SUITE.erl
index db151e9d14..a7b1856b88 100644
--- a/lib/stdlib/test/ets_SUITE.erl
+++ b/lib/stdlib/test/ets_SUITE.erl
@@ -1113,17 +1113,18 @@ delete_all_objects_trap(Opts, Mode) ->
                 io:format("Wait for ets:delete_all_objects/1 to yield...\n", []),
                 Tester ! {ready, self()},
                 repeat_while(
-                  fun() ->
+                  fun(N) ->
                           case receive_any() of
                               {trace, Tester, out, {ets,internal_delete_all,2}} ->
-                                  false;
+                                  %% Wait for second reschedule as on DEBUG we get a forced trap
+                                  {N =:= 2, N+1};
                               "delete_all_objects done" ->
                                   ct:fail("No trap detected");
                               _M ->
                                   %%io:format("Ignored msg: ~p\n", [_M]),
-                                  true
+                                  {true, N}
                           end
-                  end),
+                  end, 1),
                 case Mode of
                     unfix ->
                         io:format("Unfix table and then exit...\n",[]),
-- 
2.43.0

openSUSE Build Service is sponsored by