OSSP CVS Repository

ossp - Difference in ossp-pkg/rc/rc_proc.c versions 1.10 and 1.11
Not logged in
[Honeypot]  [Browse]  [Home]  [Login]  [Reports
[Search]  [Ticket]  [Timeline
  [History

ossp-pkg/rc/rc_proc.c 1.10 -> 1.11

--- rc_proc.c    2002/07/01 15:03:33     1.10
+++ rc_proc.c    2002/07/02 18:03:17     1.11
@@ -77,6 +77,8 @@
     int nFdfunc   = 0;
     int nRet      = 0;
     int nIter     = 0;
+    ex_t Except;
+
     char *sBuf    = NULL;
     char *szSec   = NULL;
     char *szLocex = NULL;
@@ -126,20 +128,26 @@
         if (nRet == -1) /* Handle read errors */
             RC_THROW(RC_ERR_IO);
 
-        for (i = 0; pRc->m_pAnal->m_pszSecs[i]; i++) { /* Iterate over secvec */
-            /* Extract a section from the temp script, and append it */
-            szSec = scriptSection(pTempscript, pRc->m_pAnal->m_pszSecs[i]);
-
-            if (szSec) /* Only call append if the section lookup succeeded */
-                scriptAppend(pRc->m_pScript, szSec, strlen(szSec));
-            else if (configGetval(RC_DBG_VAL)) /* Only show when debug is set */
-                fprintf(stderr, "#Warning: Missing section '%s' in %s!\n", pRc->m_pAnal->m_pszSecs[i], pRc->m_pAnal->m_szRcs[nIter]);
-
-            if (szSec) { /* Cleanup section string */
-                free(szSec);
-                szSec = NULL;
+        try {
+            for (i = 0; pRc->m_pAnal->m_pszSecs[i]; i++) { /* Iterate over */
+                /* Extract a section from the temp script, and append it */
+                szSec = scriptSection(pTempscript, pRc->m_pAnal->m_pszSecs[i]);
+
+                if (szSec) /* Only call append if the section lookup succeeds */
+                    scriptAppend(pRc->m_pScript, szSec, strlen(szSec));
+                else if (configGetval(RC_DBG_VAL)) /* Only show if debug set */
+                    fprintf(stderr, "#Warning: Missing section '%s' in %s!\n",\
+                        pRc->m_pAnal->m_pszSecs[i],\
+                        pRc->m_pAnal->m_szRcs[nIter]);
+
+                if (szSec) { /* Cleanup section string */
+                    free(szSec);
+                    szSec = NULL;
+                }
             }
         }
+        catch(Except)
+            rethrow;
 
         /* Clean up our crap */
         scriptDelete(pTempscript); /* Temp script */

CVSTrac 2.0.1