Fix apparent memory leak in coderules messages view.

Use SoftReference wrapping TraceObject to avoid out of memory
error.
This commit is contained in:
Fedor Isakov 2020-05-05 11:42:25 +02:00
parent a15a6b3f1d
commit 56c341f615
2 changed files with 42 additions and 2 deletions

View File

@ -55,6 +55,7 @@
<import index="g1qu" ref="498d89d2-c2e9-11e2-ad49-6cf049e62fe5/java:com.intellij.util.ui(MPS.IDEA/)" />
<import index="hyam" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.awt.event(JDK/)" />
<import index="qqrq" ref="498d89d2-c2e9-11e2-ad49-6cf049e62fe5/java:com.intellij.ui.components(MPS.IDEA/)" />
<import index="mpcv" ref="6354ebe7-c22a-4a0f-ac54-50b52ab9b065/java:java.lang.ref(JDK/)" />
</imports>
<registry>
<language id="28f9e497-3b42-4291-aeba-0a1039153ab1" name="jetbrains.mps.lang.plugin">
@ -2898,8 +2899,13 @@
<ref role="37wK5l" to="wyt6:~StringBuilder.toString()" resolve="toString" />
</node>
</node>
<node concept="37vLTw" id="1vxei$1pZxj" role="37wK5m">
<ref role="3cqZAo" node="1vxei$17IvL" resolve="to" />
<node concept="2ShNRf" id="4ourwoEhXBd" role="37wK5m">
<node concept="1pGfFk" id="4ourwoEierz" role="2ShVmc">
<ref role="37wK5l" to="mpcv:~SoftReference.&lt;init&gt;(java.lang.Object)" resolve="SoftReference" />
<node concept="37vLTw" id="4ourwoEieWR" role="37wK5m">
<ref role="3cqZAo" node="1vxei$17IvL" resolve="to" />
</node>
</node>
</node>
</node>
</node>

View File

@ -25305,6 +25305,40 @@
</node>
</node>
</node>
<node concept="3clFbJ" id="4ourwoEigm$" role="3cqZAp">
<node concept="3clFbS" id="4ourwoEigmA" role="3clFbx">
<node concept="3clFbF" id="4ourwoEikP5" role="3cqZAp">
<node concept="37vLTI" id="4ourwoEilxC" role="3clFbG">
<node concept="2OqwBi" id="4ourwoEio8H" role="37vLTx">
<node concept="1eOMI4" id="4ourwoEimXh" role="2Oq$k0">
<node concept="10QFUN" id="4ourwoEimXg" role="1eOMHV">
<node concept="37vLTw" id="4ourwoEimXf" role="10QFUP">
<ref role="3cqZAo" node="1G9Y_Qv775k" resolve="hintObject" />
</node>
<node concept="3uibUv" id="4ourwoEinLF" role="10QFUM">
<ref role="3uigEE" to="mpcv:~Reference" resolve="Reference" />
</node>
</node>
</node>
<node concept="liA8E" id="4ourwoEioiG" role="2OqNvi">
<ref role="37wK5l" to="mpcv:~Reference.get()" resolve="get" />
</node>
</node>
<node concept="37vLTw" id="4ourwoEikP3" role="37vLTJ">
<ref role="3cqZAo" node="1G9Y_Qv775k" resolve="hintObject" />
</node>
</node>
</node>
</node>
<node concept="2ZW3vV" id="4ourwoEiixw" role="3clFbw">
<node concept="3uibUv" id="4ourwoEij5L" role="2ZW6by">
<ref role="3uigEE" to="mpcv:~Reference" resolve="Reference" />
</node>
<node concept="37vLTw" id="4ourwoEihKW" role="2ZW6bz">
<ref role="3cqZAo" node="1G9Y_Qv775k" resolve="hintObject" />
</node>
</node>
</node>
<node concept="3clFbJ" id="1G9Y_Qv7axm" role="3cqZAp">
<node concept="2ZW3vV" id="1G9Y_Qv7cLV" role="3clFbw">
<node concept="3uibUv" id="2qsG4AwFpzh" role="2ZW6by">