File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -66,7 +66,7 @@ export function dispose<T extends IDisposable>(arg: T | IterableIterator<T> | un
6666 d . dispose ( ) ;
6767 }
6868 }
69- return arg ;
69+ return Array . isArray ( arg ) ? [ ] : arg ;
7070 } else if ( arg ) {
7171 markTracked ( arg ) ;
7272 arg . dispose ( ) ;
Original file line number Diff line number Diff line change @@ -48,6 +48,21 @@ suite('Lifecycle', () => {
4848 assert ( disposable . isDisposed ) ;
4949 assert ( disposable2 . isDisposed ) ;
5050 } ) ;
51+
52+ test ( 'Action bar has broken accessibility #100273' , function ( ) {
53+ let array = [ { dispose ( ) { } } , { dispose ( ) { } } ] ;
54+ let array2 = dispose ( array ) ;
55+
56+ assert . equal ( array . length , 2 ) ;
57+ assert . equal ( array2 . length , 0 ) ;
58+ assert . ok ( array !== array2 ) ;
59+
60+ let set = new Set < IDisposable > ( [ { dispose ( ) { } } , { dispose ( ) { } } ] ) ;
61+ let setValues = set . values ( ) ;
62+ let setValues2 = dispose ( setValues ) ;
63+ assert . ok ( setValues === setValues2 ) ;
64+
65+ } ) ;
5166} ) ;
5267
5368suite ( 'Reference Collection' , ( ) => {
You can’t perform that action at this time.
0 commit comments