fix required arguments check for write -h

This commit is contained in:
john30
2019-09-08 11:10:27 +02:00
parent 3926e9cbf8
commit f8733a5e6b
+5 -3
View File
@@ -1001,12 +1001,14 @@ result_t MainLoop::executeWrite(const vector<string>& args, const string levels,
argPos++;
}
if ((hex && (newDefinition || dstAddress != SYN || !circuit.empty() || args.size() < argPos + 1))
|| (newDefinition && (hex || !circuit.empty() || args.size() < argPos + 1 || args.size() > argPos + 2))) {
if ((args.size() < argPos + 1)
|| (hex && (newDefinition || dstAddress != SYN))
|| (newDefinition && (hex || !circuit.empty() || args.size() > argPos + 2))
|| (!newDefinition && !hex && (circuit.empty() || args.size() > argPos + 2))) {
argPos = 0; // print usage
}
if (argPos == 0 || (!newDefinition && (circuit.empty() || (args.size() != argPos+2 && args.size() != argPos+1)))) {
if (argPos == 0) {
*ostream << "usage: write [-s QQ] [-d ZZ] -c CIRCUIT NAME [VALUE[;VALUE]*]\n"
" or: write [-s QQ] [-d ZZ] -def DEFINITION [VALUE[;VALUE]*] (only if enabled)\n"
" or: write [-s QQ] [-c CIRCUIT] -h ZZPBSBNN[DD]*\n"