felangel / bloc

A predictable state management library that helps implement the BLoC design pattern
https://bloclibrary.dev
MIT License
11.53k stars 3.37k forks source link

fix: com.bloc.intellij_generator_plugin.action.GenerateBlocAction retains disposed Project #4194

Open ViugiNick opened 2 weeks ago

ViugiNick commented 2 weeks ago
(root): java.lang.Class(com.intellij.openapi.actionSystem.impl.actionholder.ActionRefKt)
(static): kotlin.SynchronizedLazyImpl
_value: com.intellij.openapi.actionSystem.impl.ActionManagerImpl
idToAction: kotlinx.collections.immutable.implementations.immutableMap.PersistentHashMap
node: kotlinx.collections.immutable.implementations.immutableMap.TrieNode
buffer: java.lang.Object[]
[]: kotlinx.collections.immutable.implementations.immutableMap.TrieNode
buffer: java.lang.Object[]
[]: com.bloc.intellij_generator_plugin.action.GenerateBlocAction
dataContext: com.intellij.openapi.actionSystem.impl.PreCachedDataContext
myCachedData: com.intellij.util.containers.FList
myTail: com.intellij.util.containers.FList
myHead: com.intellij.openapi.actionSystem.impl.PreCachedDataContext$ProviderData
table: java.util.concurrent.ConcurrentHashMap$Node[]
[]: java.util.concurrent.ConcurrentHashMap$Node
next: java.util.concurrent.ConcurrentHashMap$Node
val: com.intellij.ide.projectView.impl.ProjectViewImpl
myCopyPasteDelegator: com.intellij.ide.CopyPasteDelegator
myProject: com.intellij.openapi.project.impl.ProjectImpl (disposed)
felangel commented 2 weeks ago

Hi 👋 Thanks for opening an issue! Can you please provide some detailed reproduction steps? Thanks!

ViugiNick commented 2 weeks ago

This snapshot is from the Android Studio memory usage report, so unfortunately we don't have steps to reproduce it.

ViugiNick commented 2 weeks ago

Similar problem with GenerateCubitAction:

(root): java.lang.Class(com.intellij.openapi.actionSystem.impl.actionholder.ActionRefKt)
(static): kotlin.SynchronizedLazyImpl
_value: com.intellij.openapi.actionSystem.impl.ActionManagerImpl
idToAction: kotlinx.collections.immutable.implementations.immutableMap.PersistentHashMap
node: kotlinx.collections.immutable.implementations.immutableMap.TrieNode
buffer: java.lang.Object[]
[]: kotlinx.collections.immutable.implementations.immutableMap.TrieNode
buffer: java.lang.Object[]
[]: com.bloc.intellij_generator_plugin.action.GenerateCubitAction
dataContext: com.intellij.openapi.actionSystem.impl.PreCachedDataContext
myCachedData: com.intellij.util.containers.FList
myTail: com.intellij.util.containers.FList
myHead: com.intellij.openapi.actionSystem.impl.PreCachedDataContext$ProviderData
table: java.util.concurrent.ConcurrentHashMap$Node[]
[]: java.util.concurrent.ConcurrentHashMap$Node
next: java.util.concurrent.ConcurrentHashMap$Node
val: com.intellij.usages.UsageTarget[]
[]: com.intellij.find.findUsages.PsiElement2UsageTargetAdapter
myOptions: com.intellij.find.findUsages.FindUsagesOptions
searchScope: com.intellij.psi.search.ProjectScopeImpl
myProject: com.intellij.openapi.project.impl.ProjectImpl (disposed)