src/server/daemon/event_solaris.c

changeset 702
ee80191310ca
parent 552
4ed0e46aa9dc
--- a/src/server/daemon/event_solaris.c	Mon Feb 23 22:28:44 2026 +0100
+++ b/src/server/daemon/event_solaris.c	Tue Feb 24 12:28:58 2026 +0100
@@ -64,7 +64,7 @@
 }
 
 void ev_instance_wait(EventHandler *h) {
-    EventHandlerLinux *ev = (EventHandlerLinux*)h;
+    EventHandlerSolaris *ev = (EventHandlerSolaris*)h;
     void *ret;
     pthread_join(ev->thr, &ret);
 }
@@ -107,7 +107,7 @@
         }
         
         int numfinished = 0;
-        ev->numret = 0;
+        ev->base.numret = 0;
         for(int i=0;i<nev;i++) {
             Event *event = events[i].portev_user;
             if(events[i].portev_source == PORT_SOURCE_AIO) {
@@ -125,7 +125,7 @@
                 free(aiocb);  
             } else {
                 if(event->fn) {
-                    if(event->fn(ev, event)) {
+                    if(event->fn((EventHandler*)ev, event)) {
                         /*
                          * on solaris we have to reassociate the fd after
                          * each event
@@ -153,7 +153,7 @@
             Event *event = finished[i];
             // check again if the finish callback is set
             if(finished[i]->finish) {
-                finished[i]->finish(ev, event);
+                finished[i]->finish((EventHandler*)ev, event);
             }
         }
         // execute return calls
@@ -215,7 +215,7 @@
 }
 
 static int ev_aio(int fd, aiocb_s *cb, WSBool read) {
-    EventHandlerSolaris *ev = cb->evhandler;
+    EventHandlerSolaris *ev = (EventHandlerSolaris*)cb->evhandler;
     if(!ev) {
         return -1;
     }

mercurial