Index: roard/beep.c
===================================================================
--- roard/beep.c	(revision 5381)
+++ roard/beep.c	(revision 5388)
@@ -61,5 +61,6 @@
 
  memset(vio, 0, sizeof(struct roar_vio_calls));
-
+ vio->flags = ROAR_VIO_FLAGS_NONE;
+ vio->refc  = 1;
  vio->inst  = inst;
  vio->read  = beep_read;
Index: roard/container_framework.c
===================================================================
--- roard/container_framework.c	(revision 5381)
+++ roard/container_framework.c	(revision 5388)
@@ -169,6 +169,7 @@
 
  memset(vio, 0, sizeof(struct roar_vio_calls));
- vio->inst = inst;
-
+ vio->flags = ROAR_VIO_FLAGS_NONE;
+ vio->refc  = 1;
+ vio->inst  = inst;
  vio->read  = cont_fw_read;
  vio->write = cont_fw_write;
@@ -238,4 +239,6 @@
 int     cont_pvio_open    (struct roar_vio_calls * vio, void * inst) {
  memset(vio, 0, sizeof(struct roar_vio_calls));
+ vio->flags = ROAR_VIO_FLAGS_NONE;
+ vio->refc  = 1;
 
  vio->inst  = inst;
Index: roard/driver.c
===================================================================
--- roard/driver.c	(revision 5381)
+++ roard/driver.c	(revision 5388)
@@ -220,4 +220,6 @@
     if ( g_driver[i].open == NULL ) { // this is the null driver
      memset(calls, 0, sizeof(struct roar_vio_calls));
+     calls->flags = ROAR_VIO_FLAGS_NONE;
+     calls->refc  = 1;
      calls->read  = roar_vio_null_rw;
      calls->write = roar_vio_null_rw;
Index: roard/driver_alsa.c
===================================================================
--- roard/driver_alsa.c	(revision 5381)
+++ roard/driver_alsa.c	(revision 5388)
@@ -225,4 +225,6 @@
 
  memset(inst, 0, sizeof(struct roar_vio_calls));
+ inst->flags    = ROAR_VIO_FLAGS_NONE;
+ inst->refc     = 1;
 
  inst->inst     = (void*) interface;
Index: roard/driver_ao.c
===================================================================
--- roard/driver_ao.c	(revision 5381)
+++ roard/driver_ao.c	(revision 5388)
@@ -131,4 +131,6 @@
 
  memset(inst, 0, sizeof(struct roar_vio_calls));
+ inst->flags    = ROAR_VIO_FLAGS_NONE;
+ inst->refc     = 1;
  inst->inst     = (void*) aodevice;
  inst->write    = driver_ao_write;
Index: roard/driver_artsc.c
===================================================================
--- roard/driver_artsc.c	(revision 5381)
+++ roard/driver_artsc.c	(revision 5388)
@@ -119,4 +119,6 @@
 
  memset(inst, 0, sizeof(struct roar_vio_calls));
+ inst->flags    = ROAR_VIO_FLAGS_NONE;
+ inst->refc     = 1;
 
  inst->inst     = (void*) self;
Index: roard/driver_jack.c
===================================================================
--- roard/driver_jack.c	(revision 5381)
+++ roard/driver_jack.c	(revision 5388)
@@ -61,4 +61,6 @@
  // set up VIO:
  memset(inst, 0, sizeof(struct roar_vio_calls));
+ inst->flags    = ROAR_VIO_FLAGS_NONE;
+ inst->refc     = 1;
 
  inst->read     = driver_jack_read;
Index: roard/driver_oss.c
===================================================================
--- roard/driver_oss.c	(revision 5381)
+++ roard/driver_oss.c	(revision 5388)
@@ -35,4 +35,6 @@
 
  memset(vio, 0, sizeof(struct roar_vio_calls));
+ vio->flags    = ROAR_VIO_FLAGS_NONE;
+ vio->refc     = 1;
 
  vio->write    = driver_oss_write;
Index: roard/driver_portaudio.c
===================================================================
--- roard/driver_portaudio.c	(revision 5381)
+++ roard/driver_portaudio.c	(revision 5388)
@@ -120,4 +120,6 @@
 
  memset(inst, 0, sizeof(struct roar_vio_calls));
+ inst->flags = ROAR_VIO_FLAGS_NONE;
+ inst->refc  = 1;
 
  inst->inst  = self;
Index: roard/driver_pulsesimple.c
===================================================================
--- roard/driver_pulsesimple.c	(revision 5381)
+++ roard/driver_pulsesimple.c	(revision 5388)
@@ -121,4 +121,6 @@
 
  memset(inst, 0, sizeof(struct roar_vio_calls));
+ inst->flags    = ROAR_VIO_FLAGS_NONE;
+ inst->refc     = 1;
 
  inst->inst     = self;
Index: roard/driver_rsound.c
===================================================================
--- roard/driver_rsound.c	(revision 5381)
+++ roard/driver_rsound.c	(revision 5388)
@@ -167,4 +167,6 @@
 
  memset(inst, 0, sizeof(struct roar_vio_calls));
+ inst->flags    = ROAR_VIO_FLAGS_NONE;
+ inst->refc     = 1;
 
  inst->inst     = self;
Index: roard/driver_shout.c
===================================================================
--- roard/driver_shout.c	(revision 5381)
+++ roard/driver_shout.c	(revision 5388)
@@ -199,4 +199,6 @@
 
  memset(inst, 0, sizeof(struct roar_vio_calls));
+ inst->flags    = ROAR_VIO_FLAGS_NONE;
+ inst->refc     = 1;
  inst->inst     = (void*)shout;
  inst->write    = driver_shout_write;
Index: roard/driver_sndio.c
===================================================================
--- roard/driver_sndio.c	(revision 5381)
+++ roard/driver_sndio.c	(revision 5388)
@@ -32,4 +32,6 @@
 
  memset(vio, 0, sizeof(struct roar_vio_calls));
+ vio->flags    = ROAR_VIO_FLAGS_NONE;
+ vio->refc     = 1;
 
  vio->close    = driver_sndio_close_vio;
Index: roard/driver_sysclock.c
===================================================================
--- roard/driver_sysclock.c	(revision 5381)
+++ roard/driver_sysclock.c	(revision 5388)
@@ -39,4 +39,6 @@
  memset(self, 0, sizeof(struct driver_sysclock));
  memset(inst, 0, sizeof(struct roar_vio_calls));
+ inst->flags    = ROAR_VIO_FLAGS_NONE;
+ inst->refc     = 1;
 
  inst->inst     = self;
Index: roard/driver_wmm.c
===================================================================
--- roard/driver_wmm.c	(revision 5381)
+++ roard/driver_wmm.c	(revision 5388)
@@ -188,4 +188,6 @@
  // VIO Setup:
  memset(inst, 0, sizeof(struct roar_vio_calls));
+ inst->flags    = ROAR_VIO_FLAGS_NONE;
+ inst->refc     = 1;
  inst->inst     = self;
  inst->close    = driver_wmm_close_vio;
Index: roard/sources.c
===================================================================
--- roard/sources.c	(revision 5381)
+++ roard/sources.c	(revision 5388)
@@ -441,4 +441,6 @@
 
  memset(&(ss->vio), 0, sizeof(struct roar_vio_calls));
+ ss->vio.flags    = ROAR_VIO_FLAGS_NONE;
+ ss->vio.refc     = 1;
  ss->vio.read     = sources_radionoise_read;
  ss->vio.close    = sources_radionoise_return_zero;
