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; }
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; }