Open
Description
What happened
I was using IDEA with one of our Flutter projects. Then I opened a second one flutter_frontend_commons
and on project open via "File -> Recent projects" got an error (see below and screenshot).
Version information
IntelliJ IDEA 2025.1.1
• Flutter plugin io.flutter 85.2.4
• Dart plugin 251.25410.28
Flutter 3.29.3 • channel stable • https://github.com/flutter/flutter.git
Framework • revision ea121f8859 (4 weeks ago) • 2025-04-11 19:10:07 +0000
Engine • revision cf56914b32
Tools • Dart 3.7.2 • DevTools 2.42.3
Exception
null
java.lang.Throwable: Write-unsafe context! Model changes are allowed from write-safe contexts only. Please ensure you're using invokeLater/invokeAndWait with a correct modality state (not "any"). See TransactionGuard documentation for details.
current modality=ModalityState.NON_MODAL
at com.intellij.openapi.diagnostic.Logger.error(Logger.java:375)
at com.intellij.openapi.application.TransactionGuardImpl.assertWriteActionAllowed(TransactionGuardImpl.java:147)
at com.intellij.openapi.vfs.newvfs.RefreshQueueImpl.execute(RefreshQueueImpl.java:62)
at com.intellij.openapi.vfs.newvfs.RefreshSessionImpl.launch(RefreshSessionImpl.java:125)
at com.intellij.openapi.vfs.newvfs.RefreshQueue.refresh(RefreshQueue.java:41)
at com.intellij.openapi.vfs.newvfs.RefreshQueue.refresh(RefreshQueue.java:27)
at com.intellij.openapi.vfs.newvfs.NewVirtualFile.refresh(NewVirtualFile.java:56)
at com.intellij.openapi.vfs.VirtualFile.refresh(VirtualFile.java:678)
at io.flutter.module.FlutterModuleBuilder.findEmbeddedModuleFile(FlutterModuleBuilder.java:249)
at io.flutter.module.FlutterModuleBuilder.addAndroidModule(FlutterModuleBuilder.java:194)
at io.flutter.FlutterInitializer.runActivity(FlutterInitializer.java:148)
at com.intellij.ide.startup.impl.StartupManagerImpl.runOldActivity(StartupManagerImpl.kt:337)
at com.intellij.ide.startup.impl.StartupManagerImpl.doRunPostStartupActivities$lambda$6$lambda$5(StartupManagerImpl.kt:298)
at com.intellij.util.concurrency.ChildContext$runInChildContext$1.invoke(propagation.kt:102)
at com.intellij.util.concurrency.ChildContext$runInChildContext$1.invoke(propagation.kt:102)
at com.intellij.util.concurrency.ChildContext.runInChildContext(propagation.kt:108)
at com.intellij.util.concurrency.ChildContext.runInChildContext(propagation.kt:102)
at com.intellij.util.concurrency.ContextRunnable.run(ContextRunnable.java:27)
at com.intellij.openapi.project.SmartModeScheduler.addLast$lambda$1(SmartModeScheduler.kt:81)
at com.intellij.openapi.project.SmartModeScheduler.addLast$lambda$2(SmartModeScheduler.kt:81)
at com.intellij.openapi.project.SmartModeScheduler$RunnableDelegate.run(SmartModeScheduler.kt:42)
at com.intellij.openapi.project.SmartModeScheduler.doRun(SmartModeScheduler.kt:124)
at com.intellij.openapi.project.SmartModeScheduler.runAllWhileSmart(SmartModeScheduler.kt:116)
at com.intellij.openapi.application.TransactionGuardImpl$1.run(TransactionGuardImpl.java:205)
at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runIntendedWriteActionOnCurrentThread$lambda$7(AnyThreadWriteThreadingSupport.kt:319)
at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWriteIntentReadAction$lambda$6(AnyThreadWriteThreadingSupport.kt:274)
at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWithTemporaryThreadLocal(AnyThreadWriteThreadingSupport.kt:204)
at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWriteIntentReadAction(AnyThreadWriteThreadingSupport.kt:274)
at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWriteIntentReadAction(AnyThreadWriteThreadingSupport.kt:222)
at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runIntendedWriteActionOnCurrentThread(AnyThreadWriteThreadingSupport.kt:318)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:928)
at com.intellij.openapi.application.impl.ApplicationImpl$4.run(ApplicationImpl.java:501)
at com.intellij.util.concurrency.ChildContext$runInChildContext$1.invoke(propagation.kt:102)
at com.intellij.util.concurrency.ChildContext$runInChildContext$1.invoke(propagation.kt:102)
at com.intellij.util.concurrency.ChildContext.runInChildContext(propagation.kt:108)
at com.intellij.util.concurrency.ChildContext.runInChildContext(propagation.kt:102)
at com.intellij.util.concurrency.ContextRunnable.run(ContextRunnable.java:27)
at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:117)
at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:43)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:781)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:728)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:750)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:585)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:482)
at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$12$lambda$11$lambda$10$lambda$9(IdeEventQueue.kt:307)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:864)
at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$12$lambda$11$lambda$10(IdeEventQueue.kt:306)
at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$3(IdeEventQueue.kt:958)
at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:109)
at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:958)
at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$12(IdeEventQueue.kt:301)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:341)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)
