denis-fokin / ChooseRuntime

JetBrains-based IDE Runtime switcher
43 stars 12 forks source link

NoSuchElementException on canceling download process #11

Open tatiana-o opened 4 years ago

tatiana-o commented 4 years ago

Steps:

  1. open "Choose Runtime" dialog
  2. select any non-local runtime
  3. click install
  4. while "Download" popup is shown, press Esc

Wrong behaviour:

java.util.NoSuchElementException: Sequence is empty.
    at kotlin.sequences.SequencesKt___SequencesKt.first(_Sequences.kt:107)
    at bootRuntime.command.Install.javaHomeFromInstallationPath(Install.kt:21)
    at bootRuntime.command.Install.access$javaHomeFromInstallationPath(Install.kt:15)
    at bootRuntime.command.Install$actionPerformed$1.accept(Install.kt:33)
    at bootRuntime.command.Install$actionPerformed$1.accept(Install.kt:15)
    at bootRuntime.command.Command$1.run(Command.java:38)
    at com.intellij.openapi.progress.impl.CoreProgressManager$TaskRunnable.run(CoreProgressManager.java:888)
    at com.intellij.openapi.progress.impl.CoreProgressManager$5.run(CoreProgressManager.java:441)
    at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:163)
    at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:585)
    at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:531)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:59)
    at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:150)
    at com.intellij.openapi.application.impl.ApplicationImpl.lambda$null$4(ApplicationImpl.java:441)
    at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:221)
    at com.intellij.util.ConcurrencyUtil.lambda$underThreadNameRunnable$3(ConcurrencyUtil.java:209)
    at com.intellij.openapi.application.impl.ApplicationImpl$1.run(ApplicationImpl.java:238)
    at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.lang.Thread.run(Thread.java:834)