Esempio n. 1
0
void
deleteJobInfo( JobInfo* jobinfo )
/* purpose: destructor
 * paramtr: runinfo (IO): valid AppInfo structure to destroy. */
{
  /* paranoia */
  if ( jobinfo == NULL ) 
    return;

#ifdef EXTRA_DEBUG
  debugmsg( "# deleteJobInfo(%p)\n", jobinfo );
#endif

  if ( jobinfo->isValid ) {
    if ( jobinfo->argv[0] != NULL && jobinfo->argv[0] != jobinfo->copy )
      free((void*) jobinfo->argv[0]); /* from findApp() allocation */
    deleteStatInfo( &jobinfo->executable );
  }

  if ( jobinfo->copy != NULL ) {
    free( (void*) jobinfo->copy );
    free( (void*) jobinfo->argv );
    jobinfo->copy = 0;
  }

  deleteProcInfo(jobinfo->children);
  jobinfo->children = NULL;

  /* final invalidation */
  jobinfo->isValid = 0;
}
Esempio n. 2
0
void deleteJobInfo(JobInfo* jobinfo) {
    /* purpose: destructor
     * paramtr: runinfo (IO): valid AppInfo structure to destroy. */
    if (jobinfo == NULL) {
        return;
    }

    if (jobinfo->isValid) {
        if (jobinfo->argv[0] != NULL && jobinfo->argv[0] != jobinfo->copy) {
            free((void*) jobinfo->argv[0]); /* from pathfind() allocation */
        }
        deleteStatInfo(&jobinfo->executable);
    }

    if (jobinfo->copy != NULL) {
        free((void*) jobinfo->copy);
        free((void*) jobinfo->argv);
        jobinfo->copy = 0;
    }

    deleteProcInfo(jobinfo->children);
    jobinfo->children = NULL;

    /* final invalidation */
    jobinfo->isValid = 0;
}