[glib: 5/24] gioerror: Add G_IO_ERROR_NO_SUCH_DEVICE to map ENODEV




commit d2ca48ad973d7aa62bcd807964980899d7aba79c
Author: Marco Trevisan (TreviƱo) <mail 3v1n0 net>
Date:   Tue Jun 14 18:30:41 2022 +0200

    gioerror: Add G_IO_ERROR_NO_SUCH_DEVICE to map ENODEV

 gio/gioenums.h    | 4 +++-
 gio/gioerror.c    | 5 +++++
 gio/tests/error.c | 2 +-
 3 files changed, 9 insertions(+), 2 deletions(-)
---
diff --git a/gio/gioenums.h b/gio/gioenums.h
index 0d27c15a2b..b81302db6c 100644
--- a/gio/gioenums.h
+++ b/gio/gioenums.h
@@ -509,6 +509,7 @@ typedef enum {
  *     value, which has this more logical name. Since 2.44.
  * @G_IO_ERROR_NOT_CONNECTED: Transport endpoint is not connected. Since 2.44
  * @G_IO_ERROR_MESSAGE_TOO_LARGE: Message too large. Since 2.48.
+ * @G_IO_ERROR_NO_SUCH_DEVICE: No such device found. Since 2.74
  *
  * Error codes returned by GIO functions.
  *
@@ -577,7 +578,8 @@ typedef enum {
   G_IO_ERROR_BROKEN_PIPE,
   G_IO_ERROR_CONNECTION_CLOSED = G_IO_ERROR_BROKEN_PIPE,
   G_IO_ERROR_NOT_CONNECTED,
-  G_IO_ERROR_MESSAGE_TOO_LARGE
+  G_IO_ERROR_MESSAGE_TOO_LARGE,
+  G_IO_ERROR_NO_SUCH_DEVICE,
 } GIOErrorEnum;
 
 
diff --git a/gio/gioerror.c b/gio/gioerror.c
index 2df120fc6f..a879f2edfc 100644
--- a/gio/gioerror.c
+++ b/gio/gioerror.c
@@ -115,6 +115,11 @@ g_io_error_from_errno (gint err_no)
       break;
 #endif
 
+#ifdef ENODEV
+    case ENODEV:
+      return G_IO_ERROR_NO_SUCH_DEVICE;
+#endif
+
 #ifdef EROFS
     case EROFS:
       return G_IO_ERROR_READ_ONLY;
diff --git a/gio/tests/error.c b/gio/tests/error.c
index 8c7fea8eef..8f28a387e1 100644
--- a/gio/tests/error.c
+++ b/gio/tests/error.c
@@ -272,7 +272,7 @@ test_error_from_errno (void)
 
 #ifdef ENODEV
   g_assert_cmpint (g_io_error_from_errno (ENODEV), ==,
-                   G_IO_ERROR_FAILED);
+                   G_IO_ERROR_NO_SUCH_DEVICE);
 #endif
 
 #ifdef ENFILE


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]