IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Dec 13, 2004, 10:49:56 AM (22 years ago)
Author:
desonia
Message:

fixed errors caused indirectly from the psList change.

Location:
trunk/psLib/src/sysUtils
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/psLib/src/sysUtils/psErrorCodes.c

    r2681 r2703  
    77 *  @author Robert DeSonia, MHPCC
    88 *
    9  *  @version $Revision: 1.13 $ $Name: not supported by cvs2svn $
    10  *  @date $Date: 2004-12-10 02:50:15 $
     9 *  @version $Revision: 1.14 $ $Name: not supported by cvs2svn $
     10 *  @date $Date: 2004-12-13 20:49:56 $
    1111 *
    1212 *  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
     
    7979        while ((desc = (psErrorDescription*)psListGetNext(iter)) != NULL) {
    8080            if (desc->code == code) {
     81                psFree(iter);
    8182                return desc;
    8283            }
    8384        }
     85        psFree(iter);
    8486    }
    8587    return NULL;
     
    140142        dynamicErrorCodes = psListAlloc(NULL);
    141143        p_psMemSetPersistent(dynamicErrorCodes,true);
     144
     145        p_psMemSetPersistent(dynamicErrorCodes->iterators,true);
     146        p_psMemSetPersistent(dynamicErrorCodes->iterators->data,true);
     147        for (int i = 0; i < dynamicErrorCodes->iterators->n;i++) {
     148            p_psMemSetPersistent(dynamicErrorCodes->iterators->data[i],true);
     149        }
    142150    }
    143151
  • trunk/psLib/src/sysUtils/psMemory.c

    r2562 r2703  
    88*  @author Robert Lupton, Princeton University
    99*
    10 *  @version $Revision: 1.46 $ $Name: not supported by cvs2svn $
    11 *  @date $Date: 2004-12-01 00:56:32 $
     10*  @version $Revision: 1.47 $ $Name: not supported by cvs2svn $
     11*  @date $Date: 2004-12-13 20:49:56 $
    1212*
    1313*  Copyright 2004 Maui High Performance Computing Center, University of Hawaii
     
    431431        psMemBlock* ptr = ((psMemBlock* ) vptr) - 1;
    432432
    433         psError(PS_ERR_MEMORY_DEREF_USAGE,true,
    434                 PS_ERRORTEXT_psMemory_MULTIPLE_FREE,
     433        psAbort(__func__,PS_ERRORTEXT_psMemory_MULTIPLE_FREE,
    435434                ptr->id, ptr->file, ptr->lineno, file, lineno);
    436 
    437         return;
    438     }
     435    }
     436
     437    if (checkMemBlock(ptr, __func__) != 0) {
     438        memProblemCallback(ptr, file, lineno);
     439        psAbort(__func__,"Memory Corruption Detected.");
     440    }
     441
    439442    (void)p_psMemDecrRefCounter(vptr, file, lineno);    // this handles the free, if required.
    440443}
Note: See TracChangeset for help on using the changeset viewer.