@@ -86,8 +86,8 @@ export default function parse(argv, i, req, res, err) {
8686 if ( s . length < 2 || s [ 0 ] !== '-' ) { // abc
8787 if ( key = set_ [ opt = s ] ) { if ( noB ( ) ) ext = opt ; }
8888 else if ( key = rst_ [ opt ] ) rst ( ) ;
89- else if ( key = exit_ [ opt ] ) { exit = key ; break ; }
90- else if ( key = _key ) if ( _exit ) { exit = key ; break ; } else set ( s ) ;
89+ else if ( key = exit_ [ opt ] ) { ++ i ; exit = key ; break ; }
90+ else if ( key = _key ) if ( _exit ) { ++ i ; exit = key ; break ; } else set ( s ) ;
9191 else if ( ask ( 'invalid option' ) ) break ;
9292 } else if ( s [ 1 ] !== '-' ) { // -abc
9393 const J = s . length - 1 ;
@@ -103,15 +103,15 @@ export default function parse(argv, i, req, res, err) {
103103 opt = '-' + s [ J ] ;
104104 if ( key = set_ [ opt ] ) { if ( noB ( ) ) ext = opt ; }
105105 else if ( key = rst_ [ opt ] ) rst ( ) ;
106- else if ( key = exit_ [ opt ] ) { exit = key ; break ; }
106+ else if ( key = exit_ [ opt ] ) { ++ i ; exit = key ; break ; }
107107 else if ( ask ( 'invalid option' ) ) break ;
108108 } else if ( s . length > 2 ) { // --opt
109109 const k = s . indexOf ( '=' ) ;
110110 if ( k < 0 ) {
111111 // --opt ...
112112 if ( key = set_ [ opt = s ] ) { if ( noB ( ) ) ext = opt ; }
113113 else if ( key = rst_ [ opt ] ) rst ( ) ;
114- else if ( key = exit_ [ opt ] ) { exit = key ; break ; }
114+ else if ( key = exit_ [ opt ] ) { ++ i ; exit = key ; break ; }
115115 else if ( ask ( 'invalid option' ) ) break ;
116116 continue ;
117117 }
@@ -129,13 +129,13 @@ export default function parse(argv, i, req, res, err) {
129129 } else {
130130 opt = '--' ;
131131 if ( key = _key ) {
132- if ( _exit ) { exit = key ; break ; }
132+ if ( _exit ) { ++ i ; exit = key ; break ; }
133133 const a = res [ key ] , l = argv . length ; ++ i ;
134134 if ( isA ( a ) ) while ( i < l ) a . push ( argv [ i ++ ] ) ;
135135 else if ( i < l ) res [ key ] = argv [ ( i = l ) - 1 ] ;
136136 break ;
137137 }
138- if ( ask ( 'anonymous argument are not allowed' ) ) break ;
138+ if ( ask ( 'anonymous arguments are not allowed' ) ) break ;
139139 }
140140 }
141141 if ( ext ) ask ( 'this option requires an argument' ) ;
0 commit comments