Ignore:
Timestamp:
10/09/11 16:15:37 (13 years ago)
Author:
mmamonski
Message:

lost commit :/ thx Dominique

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/pbs_drmaa/submit.c

    r16 r24  
    462462        const fsd_template_t *jt = self->job_template; 
    463463        const char *const *env_v; 
     464        const char *jt_wd; 
     465        char *wd; 
     466        char *env_c = NULL; 
     467        int ii = 0, len = 0; 
    464468 
    465469        env_v = jt->get_v_attr( jt, DRMAA_V_ENV); 
     470        jt_wd    = jt->get_attr( jt, DRMAA_WD ); 
     471         
     472        if (!jt_wd) 
     473        { 
     474                wd = fsd_getcwd(); 
     475        } 
     476        else 
     477        { 
     478                wd = fsd_strdup(jt_wd); 
     479        } 
    466480 
    467481        if (env_v) 
    468482        { 
    469                 char *env_c = NULL; 
    470                 int ii = 0, len = 0; 
    471  
    472483                ii = 0; 
    473484                while (env_v[ii]) { 
     
    475486                        ii++; 
    476487                } 
    477  
    478                 fsd_calloc(env_c, len + 1, char); 
    479                 env_c[0] = '\0'; 
    480  
     488        } 
     489         
     490        len+= strlen("PBS_O_WORKDIR=") + strlen(wd); 
     491 
     492        fsd_calloc(env_c, len + 1, char); 
     493        env_c[0] = '\0'; 
     494 
     495        if (env_v) 
     496        { 
    481497                ii = 0; 
    482498                while (env_v[ii]) { 
     
    486502                } 
    487503 
    488                 env_c[strlen(env_c) -1 ] = '\0'; /*remove the last ',' */ 
    489  
    490                 self->pbs_job_attributes->set_attr(self->pbs_job_attributes, "Variable_List", env_c); 
    491  
    492                 fsd_free(env_c); 
    493504        } 
     505         
     506        strcat(env_c, "PBS_O_WORKDIR="); 
     507        strcat(env_c, wd); 
     508 
     509        self->pbs_job_attributes->set_attr(self->pbs_job_attributes, "Variable_List", env_c); 
     510 
     511        fsd_free(env_c); 
     512        fsd_free(wd); 
    494513} 
    495514 
Note: See TracChangeset for help on using the changeset viewer.