File 4001-Unknown-posix-errors-should-include-the-error-reason.patch of Package erlang
From 12a0712f5fd26b62b239bcb190c2d60a7fb23b34 Mon Sep 17 00:00:00 2001
From: Onno Vos <onno-vos-dev@users.noreply.github.com>
Date: Fri, 27 Jan 2023 18:47:04 +0100
Subject: [PATCH] Unknown posix errors should include the error reason
---
lib/kernel/src/erl_erts_errors.erl | 2 +-
lib/kernel/src/erl_kernel_errors.erl | 2 +-
lib/ssl/src/ssl.erl | 2 +-
lib/stdlib/src/erl_posix_msg.erl | 2 +-
lib/stdlib/src/erl_stdlib_errors.erl | 2 +-
5 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/lib/kernel/src/erl_kernel_errors.erl b/lib/kernel/src/erl_kernel_errors.erl
index 80660d46c8..444b66a8f2 100644
--- a/lib/kernel/src/erl_kernel_errors.erl
+++ b/lib/kernel/src/erl_kernel_errors.erl
@@ -75,7 +75,7 @@ format_os_error(_, _, _) ->
maybe_posix_message(Reason) ->
case erl_posix_msg:message(Reason) of
- "unknown POSIX error" ->
+ "unknown POSIX error" ++ _ ->
io_lib:format("open_port failed with reason: ~tp",[Reason]);
PosixStr ->
io_lib:format("~ts (~tp)",[PosixStr, Reason])
diff --git a/lib/ssl/src/ssl.erl b/lib/ssl/src/ssl.erl
index 7d72b15c73..b7473b91a8 100644
--- a/lib/ssl/src/ssl.erl
+++ b/lib/ssl/src/ssl.erl
@@ -2665,7 +2665,7 @@ unexpected_format(Error) ->
file_error_format({error, Error})->
case file:format_error(Error) of
- "unknown POSIX error" ->
+ "unknown POSIX error" ++ _ ->
"decoding error";
Str ->
Str
diff --git a/lib/stdlib/src/erl_posix_msg.erl b/lib/stdlib/src/erl_posix_msg.erl
index e86ba81170..c524288499 100644
--- a/lib/stdlib/src/erl_posix_msg.erl
+++ b/lib/stdlib/src/erl_posix_msg.erl
@@ -172,4 +172,4 @@ message_1(exfull) -> <<"message tables full">>;
message_1(nxdomain) -> <<"non-existing domain">>;
message_1(exbadport) -> <<"inet_drv bad port state">>;
message_1(exbadseq) -> <<"inet_drv bad request sequence">>;
-message_1(_) -> <<"unknown POSIX error">>.
+message_1(Other) -> <<"unknown POSIX error: ", (atom_to_binary(Other))/binary>>.
diff --git a/lib/stdlib/src/erl_stdlib_errors.erl b/lib/stdlib/src/erl_stdlib_errors.erl
index b0daca1838..902da84b8c 100644
--- a/lib/stdlib/src/erl_stdlib_errors.erl
+++ b/lib/stdlib/src/erl_stdlib_errors.erl
@@ -508,7 +508,7 @@ format_io_error_cause(_, _, _, _HasDevice) ->
maybe_posix_message(Cause, HasDevice) ->
case erl_posix_msg:message(Cause) of
- "unknown POSIX error" ->
+ "unknown POSIX error" ++ _ ->
unknown;
PosixStr when HasDevice ->
[io_lib:format("~ts (~tp)",[PosixStr, Cause])];
--
2.35.3