Skip to content

Instantly share code, notes, and snippets.

@riverdusty
Created May 4, 2018 11:01
Show Gist options
  • Save riverdusty/292bc37888a1cbb8847006b3d54618ca to your computer and use it in GitHub Desktop.
Save riverdusty/292bc37888a1cbb8847006b3d54618ca to your computer and use it in GitHub Desktop.
Manually fix Pharo Image resolve: issues
[ FileLocator localDirectory resolve asAbsolute ]
on: Exception
do: [ :ex | SystemResolver classVarNamed: #UserLocalDirectory put: nil ].
(Smalltalk imageDirectory resolve containsReference: FileLocator localDirectory resolve asAbsolute)
ifFalse: [ OmSessionStore defaultBaseLocator: nil ].
(Smalltalk imageDirectory resolve containsReference: OmSessionStore defaultBaseLocator resolve asAbsolute)
ifFalse: [ OmSessionStore defaultBaseLocator: nil ].
OmSessionStore allInstances do: [ :o |
o refresh.
(Smalltalk imageDirectory resolve containsReference: o store fileReference asAbsolute)
ifFalse: [ o instVarNamed: #currentStore put: nil].
].
(Smalltalk imageDirectory resolve containsReference: SystemResolver userLocalDirectory resolve asAbsolute)
ifFalse: [ SystemResolver classVarNamed: #UserLocalDirectory put: nil ].
(Smalltalk imageDirectory resolve = MCDirectoryRepository defaultDirectoryName asFileReference)
ifFalse: [ MCDirectoryRepository defaultDirectoryName: nil ].
(Smalltalk imageDirectory resolve = MCCacheRepository cacheDirectory asFileReference)
ifFalse: [ MCCacheRepository reset. ]. "MCCacheRepository resetIfInvalid."
GTPlayBook cacheDirectory: nil.
(Smalltalk imageDirectory resolve containsReference: GTPlayBook cacheDirectory resolve asAbsolute)
ifFalse: [ GTPlayBook cacheDirectory: nil ].
(Smalltalk imageDirectory resolve containsReference: GTPlayBook stashDirectory resolve asAbsolute)
ifFalse: [ GTPlayBook stashDirectory: nil ].
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment