osmo_io: Return early on error in osmo_iofd_register()

Change-Id: I2561c82e6bf7e2bb5fd699c899238f9c43ea4d9c
diff --git a/src/core/osmo_io.c b/src/core/osmo_io.c
index c9b0b29..b00da63 100644
--- a/src/core/osmo_io.c
+++ b/src/core/osmo_io.c
@@ -421,11 +421,13 @@
 
 	if (fd >= 0)
 		iofd->fd = fd;
-	iofd->closed = false;
 
 	if (osmo_iofd_ops.register_fd)
 		rc = osmo_iofd_ops.register_fd(iofd);
+	if (rc)
+		return rc;
 
+	iofd->closed = false;
 	osmo_iofd_ops.read_enable(iofd);
 	osmo_iofd_ops.write_enable(iofd);