< prev index next >

src/java.base/share/native/libjli/args.c

Print this page




 439         return JNI_FALSE;
 440     }
 441 
 442     if (relaunch) {
 443         return JNI_FALSE;
 444     }
 445 
 446     if (NULL == env) {
 447         return JNI_FALSE;
 448     }
 449 
 450     JLI_ReportMessage(ARG_INFO_ENVVAR, var_name, env);
 451 
 452     // This is retained until the process terminates as it is saved as the args
 453     p = JLI_MemAlloc(JLI_StrLen(env) + 1);
 454     while (*env != '\0') {
 455         while (*env != '\0' && isspace(*env)) {
 456             env++;
 457         }
 458 





 459         arg = p;
 460         while (*env != '\0' && !isspace(*env)) {
 461             if (*env == '"' || *env == '\'') {
 462                 quote = *env++;
 463                 while (*env != quote && *env != '\0') {
 464                     *p++ = *env++;
 465                 }
 466 
 467                 if (*env == '\0') {
 468                     JLI_ReportMessage(ARG_ERROR8, var_name);
 469                     exit(1);
 470                 }
 471                 env++;
 472             } else {
 473                 *p++ = *env++;
 474             }
 475         }
 476 
 477         *p++ = '\0';
 478 




 439         return JNI_FALSE;
 440     }
 441 
 442     if (relaunch) {
 443         return JNI_FALSE;
 444     }
 445 
 446     if (NULL == env) {
 447         return JNI_FALSE;
 448     }
 449 
 450     JLI_ReportMessage(ARG_INFO_ENVVAR, var_name, env);
 451 
 452     // This is retained until the process terminates as it is saved as the args
 453     p = JLI_MemAlloc(JLI_StrLen(env) + 1);
 454     while (*env != '\0') {
 455         while (*env != '\0' && isspace(*env)) {
 456             env++;
 457         }
 458 
 459         // Trailing space
 460         if (*env == '\0') {
 461             break;
 462         }
 463 
 464         arg = p;
 465         while (*env != '\0' && !isspace(*env)) {
 466             if (*env == '"' || *env == '\'') {
 467                 quote = *env++;
 468                 while (*env != quote && *env != '\0') {
 469                     *p++ = *env++;
 470                 }
 471 
 472                 if (*env == '\0') {
 473                     JLI_ReportMessage(ARG_ERROR8, var_name);
 474                     exit(1);
 475                 }
 476                 env++;
 477             } else {
 478                 *p++ = *env++;
 479             }
 480         }
 481 
 482         *p++ = '\0';
 483 


< prev index next >