commit:     c77a5796f3ca47d4ffcbfa349f2646aa3f7e1dde
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 13 13:54:01 2025 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Dec 13 13:54:01 2025 +0000
URL:        https://gitweb.gentoo.org/proj/steve.git/commit/?id=c77a5796

Check correct error return from fuse_receive_buf()

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 steve.cxx | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/steve.cxx b/steve.cxx
index ecbf32e..7281e28 100644
--- a/steve.cxx
+++ b/steve.cxx
@@ -727,7 +727,10 @@ static void steve_handle_cuse(evutil_socket_t, short, void 
*userdata) {
        int rd = fuse_session_receive_buf(state->session, &state->buf);
        if (rd <= 0) {
                state->retval = 1;
-               perror("Reading from CUSE failed");
+               if (rd == 0)
+                       std::print(stderr, "EOF from CUSE, exiting (device 
already taken?)\n");
+               else
+                       std::print(stderr, "Reading from CUSE failed: {}", 
strerror(-rd));
                if (event_base_loopbreak(state->evb) == -1) {
                        std::print(stderr, "event_base_loopbreak() failed, 
forcing hard exit");
                        exit(1);

Reply via email to