File tree Expand file tree Collapse file tree 2 files changed +28
-24
lines changed
packages/typescript/lib/quickstart Expand file tree Collapse file tree 2 files changed +28
-24
lines changed Original file line number Diff line number Diff line change @@ -82,18 +82,20 @@ export function createAsyncLanguageServicePlugin(
8282 ] ,
8383 new FileMap ( ts . sys . useCaseSensitiveFileNames ) ,
8484 fileName => {
85- let snapshot = info . project . getScriptInfo ( fileName ) ?. getSnapshot ( ) ;
86- if ( ! snapshot ) {
87- // trigger projectService.getOrCreateScriptInfoNotOpenedByClient
88- info . project . getScriptVersion ( fileName ) ;
89- snapshot = info . project . getScriptInfo ( fileName ) ?. getSnapshot ( ) ;
90- }
91- if ( snapshot ) {
92- language . scripts . set ( fileName , snapshot ) ;
93- }
94- else {
95- language . scripts . delete ( fileName ) ;
96- }
85+ try { // getSnapshot could be crashed if the file is too large
86+ let snapshot = info . project . getScriptInfo ( fileName ) ?. getSnapshot ( ) ;
87+ if ( ! snapshot ) {
88+ // trigger projectService.getOrCreateScriptInfoNotOpenedByClient
89+ info . project . getScriptVersion ( fileName ) ;
90+ snapshot = info . project . getScriptInfo ( fileName ) ?. getSnapshot ( ) ;
91+ }
92+ if ( snapshot ) {
93+ language . scripts . set ( fileName , snapshot ) ;
94+ }
95+ else {
96+ language . scripts . delete ( fileName ) ;
97+ }
98+ } catch { }
9799 }
98100 ) ;
99101
Original file line number Diff line number Diff line change @@ -41,18 +41,20 @@ export function createLanguageServicePlugin(
4141 ] ,
4242 new FileMap ( ts . sys . useCaseSensitiveFileNames ) ,
4343 fileName => {
44- let snapshot = info . project . getScriptInfo ( fileName ) ?. getSnapshot ( ) ;
45- if ( ! snapshot ) {
46- // trigger projectService.getOrCreateScriptInfoNotOpenedByClient
47- info . project . getScriptVersion ( fileName ) ;
48- snapshot = info . project . getScriptInfo ( fileName ) ?. getSnapshot ( ) ;
49- }
50- if ( snapshot ) {
51- language . scripts . set ( fileName , snapshot ) ;
52- }
53- else {
54- language . scripts . delete ( fileName ) ;
55- }
44+ try { // getSnapshot could be crashed if the file is too large
45+ let snapshot = info . project . getScriptInfo ( fileName ) ?. getSnapshot ( ) ;
46+ if ( ! snapshot ) {
47+ // trigger projectService.getOrCreateScriptInfoNotOpenedByClient
48+ info . project . getScriptVersion ( fileName ) ;
49+ snapshot = info . project . getScriptInfo ( fileName ) ?. getSnapshot ( ) ;
50+ }
51+ if ( snapshot ) {
52+ language . scripts . set ( fileName , snapshot ) ;
53+ }
54+ else {
55+ language . scripts . delete ( fileName ) ;
56+ }
57+ } catch { }
5658 }
5759 ) ;
5860
You can’t perform that action at this time.
0 commit comments