EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Stream device problem with redirection in @mismatch
From: ruzickaj <[email protected]>
To: Dirk Zimoch <[email protected]>
Cc: Tech Talk <[email protected]>
Date: Thu, 09 Apr 2015 10:01:50 +0200
Dear Dirk,
thank you very much for patch.
Now I´m not able to test it, but I sent your answer person, which solve IOC now.

       Jan



On 2015-04-08 11:37, Dirk Zimoch wrote:
On 08.04.2015 11:20, Dirk Zimoch wrote:
 >
/usr/local/epics/support/stream/StreamDevice-2-6/lib/linux-x86_64/libstream.so(_ZN6Stream15getFieldAddressEPKcR12StreamBuffer+0xcd)[0x7f9c3d4bd34d]


I found the bug in getFieldAddress:

         // FIELD in this record or VAL in other record
         char fullname[PVNAME_SZ + 1];
         sprintf(fullname, "%s.%s", name(), fieldname);
         if (dbNameToAddr(fullname, &dbaddr) != OK)
         {
             // VAL in other record
             sprintf(fullname, "%s.VAL", fieldname);
             if (dbNameToAddr(fullname, &dbaddr) != OK) return false;
         }

The first sprintf prints
$(device):StatEnable.$(device):StatEnableInterlock which is way too
long. My fault. I will send a patch soon....

Dirk


Try this:
        // FIELD in this record or VAL in other record
        StreamBuffer fullname;
        fullname.print("%s.%s", name(), fieldname);
        if (dbNameToAddr(fullname(), &dbaddr) != OK)
        {
            // VAL in other record
            fullname.clear().print("%s.VAL", fieldname);
            if (dbNameToAddr(fullname(), &dbaddr) != OK) return false;
        }

(in src/StreamEpics.cc function getFieldAddress)

Dirk

References:
Stream device problem with redirection in @mismatch ruzickaj
Re: Stream device problem with redirection in @mismatch Dirk Zimoch
Re: Stream device problem with redirection in @mismatch ruzickaj
Re: Stream device problem with redirection in @mismatch Dirk Zimoch
Re: Stream device problem with redirection in @mismatch Dirk Zimoch

Navigate by Date:
Prev: Re: StreaDevice formating problem Jörn Wüstenfeld
Next: caQtDM 3.9.1 Release Brands Helge (PSI)
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Stream device problem with redirection in @mismatch Dirk Zimoch
Next: Re: Stream device problem with redirection in @mismatch Michael Johnson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  <20152016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 16 Dec 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·