File tree 2 files changed +16
-10
lines changed
2 files changed +16
-10
lines changed Original file line number Diff line number Diff line change @@ -988,8 +988,10 @@ func (e *ProcessEnv) GetResolver() (Resolver, error) {
988
988
// already know the view type.
989
989
if len (e .Env ["GOMOD" ]) == 0 && len (e .Env ["GOWORK" ]) == 0 {
990
990
e .resolver = newGopathResolver (e )
991
+ } else if r , err := newModuleResolver (e , e .ModCache ); err != nil {
992
+ e .resolverErr = err
991
993
} else {
992
- e .resolver , e . resolverErr = newModuleResolver ( e , e . ModCache )
994
+ e .resolver = Resolver ( r )
993
995
}
994
996
}
995
997
Original file line number Diff line number Diff line change @@ -313,15 +313,19 @@ func (r *ModuleResolver) ClearForNewScan() Resolver {
313
313
// TODO(rfindley): move this to a new env.go, consolidating ProcessEnv methods.
314
314
func (e * ProcessEnv ) ClearModuleInfo () {
315
315
if r , ok := e .resolver .(* ModuleResolver ); ok {
316
- resolver , resolverErr := newModuleResolver (e , e .ModCache )
317
- if resolverErr == nil {
318
- <- r .scanSema // acquire (guards caches)
319
- resolver .moduleCacheCache = r .moduleCacheCache
320
- resolver .otherCache = r .otherCache
321
- r .scanSema <- struct {}{} // release
322
- }
323
- e .resolver = resolver
324
- e .resolverErr = resolverErr
316
+ resolver , err := newModuleResolver (e , e .ModCache )
317
+ if err != nil {
318
+ e .resolver = nil
319
+ e .resolverErr = err
320
+ return
321
+ }
322
+
323
+ <- r .scanSema // acquire (guards caches)
324
+ resolver .moduleCacheCache = r .moduleCacheCache
325
+ resolver .otherCache = r .otherCache
326
+ r .scanSema <- struct {}{} // release
327
+
328
+ e .UpdateResolver (resolver )
325
329
}
326
330
}
327
331
You can’t perform that action at this time.
0 commit comments