OSSP CVS Repository

ossp - Check-in [2782]
Not logged in
[Honeypot]  [Browse]  [Home]  [Login]  [Reports
[Search]  [Ticket]  [Timeline
  [Patchset]  [Tagging/Branching

Check-in Number: 2782
Date: 2002-Nov-08 20:46:42 (local)
2002-Nov-08 19:46:42 (UTC)
User:mlelstv
Branch:
Comment: initialize SIO_XSTREAM pointers only when stage is attached read-write.

PR: Submitted by: Reviewed by: Approved by: Obtained from:

Tickets:
Inspections:
Files:
ossp-pkg/sio/sio.c      1.9 -> 1.10     12 inserted, 2 deleted

ossp-pkg/sio/sio.c 1.9 -> 1.10

--- sio.c        2002/11/08 10:34:24     1.9
+++ sio.c        2002/11/08 19:46:42     1.10
@@ -207,8 +207,8 @@
     sios->writer.func  = sios->module->output;
     sios->writer.stage = sios;
 
-    sios->reader.cross = &sios->writer;
-    sios->writer.cross = &sios->reader;
+    sios->reader.cross = NULL;
+    sios->writer.cross = NULL;
 
     sios->reader.tag   = "reader";
     sios->writer.tag   = "writer";
@@ -353,6 +353,11 @@
         ADDTAIL(&sio->writers,hd,&sios->writer);
     }
 
+    if (rw == SIO_MODE_READWRITE) {
+        sios->reader.cross = &sios->writer;
+        sios->writer.cross = &sios->reader;
+    }
+
     sios->reader.al = sio->readers.al;
     sios->writer.al = sio->writers.al;
     sios->rw        = rw;
@@ -391,6 +396,11 @@
             sios->module->closer(sio, sio->readers.al, sios->userdata);
     }
 
+    if (sios->rw == SIO_MODE_READWRITE) {
+        sios->reader.cross = NULL;
+        sios->writer.cross = NULL;
+    }
+
     sios->writer.al = NULL;
     sios->reader.al = NULL;
 

CVSTrac 2.0.1