fixup npe on additional data; #PY-76613 Fixed

(cherry picked from commit d287d9e07fe024e73551c3ff6e358be291cdc1fe)

IJ-MR-148504

GitOrigin-RevId: 79708c40ff115d77e253fb0095e3b1fa5bbc1d82
This commit is contained in:
Aleksandr Sorotskii
2024-11-04 23:54:16 +01:00
committed by intellij-monorepo-bot
parent 309d62ea8c
commit c45fbf5a97

View File

@@ -17,6 +17,7 @@ import com.jetbrains.python.packaging.management.PythonPackageManager
import com.jetbrains.python.packaging.management.PythonPackageManagerProvider
import com.jetbrains.python.packaging.ui.PyPackageManagementService
import com.jetbrains.python.sdk.PythonSdkAdditionalData
import com.jetbrains.python.sdk.getOrCreateAdditionalData
import com.jetbrains.python.statistics.PyPackagesUsageCollector
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.withContext
@@ -34,7 +35,7 @@ class PackageManagerHolder : Disposable {
* Requires Sdk to be Python Sdk and have PythonSdkAdditionalData.
*/
fun forSdk(project: Project, sdk: Sdk): PythonPackageManager {
val cacheKey = (sdk.sdkAdditionalData as PythonSdkAdditionalData).uuid
val cacheKey = (sdk.getOrCreateAdditionalData()).uuid
return cache.computeIfAbsent(cacheKey) {
PythonPackageManagerProvider.EP_NAME.extensionList