Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  <19951996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  Index 1994  <19951996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020 
<== Date ==> <== Thread ==>

Subject: Bug with initDatabase()
From: <greene%denali.UUCP@cub.kscorp.com>
Date: Tue, 11 Jul 1995 14:40:32 -0600 (MDT)
I've encountered a bug while porting EPICS to the Hytec CAMAC controller.
The problem is in initDatabase() which is called by iocInit().  The
interesting part is how this function ever worked.

The problem is in the first call to ellFirst().  If there are no
records defined for a specific type, then the field precLoc->preclist
is null.  However, the call to ellFirst() does not check for this
condition and will return a garbage pointer.  This works fine with
the NI VXI cpu030 card because the data at 0x0 is also 0x0 which causes
the for-loop to continue with the next record type.  However, with
the Hytec card, 0x0 is the start of EPROM which contains non-zero
data.

Obviously I can easily fix this by checking for a null preclist value
but I'm curious how this works on other controllers.  I'm also concerned
with other areas in the EPICS code which might pass a null ELLLIST value
to ellFirst().

--
--------------------------------------------------------------------------------
                                Greg Greene
                                KineticSystems Corp.
                                ph:    303-220-7455 x13
                                fax:   303-220-7458
                                email: greene@kscorp.com
--------------------------------------------------------------------------------

Navigate by Date:
Prev: GUI Documentation Ross Segelken
Next: Bug in initDatabase() Patavalis Nikos
Index: 1994  <19951996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020 
Navigate by Thread:
Prev: GUI Documentation Ross Segelken
Next: Re: Bug with initDatabase() Marty Kraimer
Index: 1994  <19951996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020 
ANJ, 10 Aug 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·