mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
Don't lose SequenceEvents while pumping events during plugin unload (IDEA-231059)
GitOrigin-RevId: 0e2567983defeee07f8ffc1226f7b527074702ca
This commit is contained in:
committed by
intellij-monorepo-bot
parent
ad1ef8a6ff
commit
3f780cd0da
@@ -4,6 +4,7 @@ package com.intellij.ide.plugins
|
||||
import com.intellij.configurationStore.StoreUtil.Companion.saveDocumentsAndProjectsAndApp
|
||||
import com.intellij.configurationStore.jdomSerializer
|
||||
import com.intellij.configurationStore.runInAutoSaveDisabledMode
|
||||
import com.intellij.ide.IdeEventQueue
|
||||
import com.intellij.ide.SaveAndSyncHandler
|
||||
import com.intellij.ide.plugins.cl.PluginClassLoader
|
||||
import com.intellij.ide.ui.UIThemeProvider
|
||||
@@ -42,7 +43,6 @@ import com.intellij.util.SystemProperties
|
||||
import com.intellij.util.containers.ConcurrentFactoryMap
|
||||
import com.intellij.util.messages.Topic
|
||||
import com.intellij.util.messages.impl.MessageBusImpl
|
||||
import com.intellij.util.ui.UIUtil
|
||||
import com.intellij.util.xmlb.BeanBinding
|
||||
import java.text.SimpleDateFormat
|
||||
import java.util.*
|
||||
@@ -342,7 +342,7 @@ object DynamicPlugins {
|
||||
} catch (e: Exception) {
|
||||
Logger.getInstance(DynamicPlugins.javaClass).error(e)
|
||||
} finally {
|
||||
UIUtil.dispatchAllInvocationEvents()
|
||||
IdeEventQueue.getInstance().flushQueue()
|
||||
|
||||
val classLoaderUnloaded = loadedPluginDescriptor.unloadClassLoader()
|
||||
if (!classLoaderUnloaded) {
|
||||
|
||||
@@ -1797,6 +1797,7 @@ public final class UIUtil {
|
||||
}
|
||||
|
||||
/**
|
||||
* Dispatch all pending invocation events (if any) in the {@link IdeEventQueue}, ignores and removes all other events from the queue.
|
||||
* In tests, consider using {@link com.intellij.testFramework.PlatformTestUtil#dispatchAllInvocationEventsInIdeEventQueue()}
|
||||
* @see #pump()
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user