src/windows/bin/cmdtoargs.c
Print this page
*** 126,137 ****
--- 126,139 ----
}
if (quotes % 2 == 0) {
*wildcard = JNI_TRUE;
}
if (prev == '\\') {
+ for (i = 0 ; i < slashes ; i++) {
*dest++ = prev;
}
+ }
*dest++ = ch;
break;
default:
if (prev == '\\') {
*** 182,192 ****
src = next_arg(src, arg, &wildcard);
// resize to accommodate another Arg
argv = (StdArg*) JLI_MemRealloc(argv, (nargs+1) * sizeof(StdArg));
argv[nargs].arg = JLI_StringDup(arg);
argv[nargs].has_wildcard = wildcard;
!
nargs++;
} while (src != NULL);
stdargc = nargs;
stdargs = argv;
--- 184,194 ----
src = next_arg(src, arg, &wildcard);
// resize to accommodate another Arg
argv = (StdArg*) JLI_MemRealloc(argv, (nargs+1) * sizeof(StdArg));
argv[nargs].arg = JLI_StringDup(arg);
argv[nargs].has_wildcard = wildcard;
! *arg = NULL;
nargs++;
} while (src != NULL);
stdargc = nargs;
stdargs = argv;
*** 600,609 ****
--- 602,619 ----
v->add("a", FALSE);
v->add("b\\\\", FALSE);
v->add("d", FALSE);
vectors[i++] = v;
+ v= new Vector(argv[0], "\\\\?");
+ v->add("\\\\?", TRUE);
+ vectors[i++] = v;
+
+ v= new Vector(argv[0], "\\\\*");
+ v->add("\\\\*", TRUE);
+ vectors[i++] = v;
+
dotest(vectors);
printf("All tests pass [%d]\n", i);
doexit(0);
}
#endif /* IDE_STANDALONE */