Maximus5 / ConEmu

Customizable Windows terminal with tabs, splits, quake-style, hotkeys and more
https://conemu.github.io/
BSD 3-Clause "New" or "Revised" License
8.59k stars 572 forks source link

Assertion error on computer wake #2135

Closed Cellule closed 3 years ago

Cellule commented 4 years ago

Versions

ConEmu build: 200615 x64 OS version: Windows 10 1909 x64 Used shell version (Far Manager, git-bash, cmd, powershell, cygwin, whatever): cmd

Problem description

Whenever my computer wakes up from sleep I get an assertion error

Steps to reproduce

  1. Open ConEmu
  2. Put computer to sleep
  3. Wake up and unlock Windows

Actual results

Assertion error

Additional files

DumpFile ConEmuSettings.xml.txt image

Maximus5 commented 4 years ago

I doesn't see useful information in the dump file unfortunately. And I can't reproduce it on my PC.

Could you reproduce and upload here log files? https://conemu.github.io/en/LogFiles.html

pjacekm commented 4 years ago

I'm experiencing the same issue. It started happening after upgrading ConEmu to the recent "preview" version. Same Windows 10 and ConEmu versions as above. Similar way to reproduce: leave ConEmu open, close notebook lid (mine hibernates instead of sleeping), wake up - error alert pops up:

Assertion: ConEmu 200615 [64] PID=28544, TID=782864
C:\Program Files\ConEmu\ConEmu64.exe
Documents\Personal\conemu\src\ConEmu\ConEmuSize.cpp:1753
-----------------------
mi.Xdpi == dpi.Xdpi && mi.Ydpi == mi.Ydpi
-----------------------

Press <Ignore> to continue your work.

Press <Abort> to throw exception, ConEmu will be terminated!

Press <Retry> to copy text information to clipboard
and report a bug (open project web page).
PreError=0, PostError=0, Result=4

Assertion was occurred (ConEmu64.exe, PID=28544)
ConEmu build 200615 64

Memory dump was saved to
C:\Users\xyz\Desktop\ConEmuTrap\Trap-200615-28544.dmp

Please Zip it and send to developer (via DropBox etc.)
https://conemu.github.io/en/Issues.html

I'd love to send log files, I just can't happen to find them. Where are they located on Windows?

soerennielsen commented 4 years ago

I have the same error. However important bits are missing from reporters description.

It happens to me when:

  1. I work on my laptop without any external screens. ConEmu is open (always is)
  2. Hibernate
  3. Connect to my monitors (which has a different dpi than the laptop screen)
  4. Resume the laptop

The error will be therre on the screen immediately when you log in. Don't need to go to ConEmu window and it doesn't need to be visible.

gilly3 commented 4 years ago

Same error, same repro as @soerennielsen above. But, I also have an easier repro case that works about half the time:

  1. Connect laptop to dock.
  2. Open ConEmu on external monitor.
  3. Remove laptop from dock.
  4. ConEmu appears on laptop monitor with error showing.

I zipped debug logs and memory dump for you.

Assertion: ConEmu 200713 [64] PID=9004, TID=179664
C:\Program Files\ConEmu\ConEmu64.exe
Documents\Personal\conemu\src\ConEmu\ConEmuSize.cpp:1753
-----------------------
mi.Xdpi == dpi.Xdpi && mi.Ydpi == mi.Ydpi
-----------------------

Press <Ignore> to continue your work.

Press <Abort> to throw exception, ConEmu will be terminated!

Press <Retry> to copy text information to clipboard
and report a bug (open project web page).
PreError=0, PostError=0, Result=4

Assertion was occurred (ConEmu64.exe, PID=9004)
ConEmu build 200713 64

Memory dump was saved to
~\Desktop\ConEmuTrap\Trap-200713-9004.dmp

Please Zip it and send to developer (via DropBox etc.)
https://conemu.github.io/en/Issues.html
huancz commented 4 years ago

without looking at the surrounding code, THIS seems questionable:

mi.Xdpi == dpi.Xdpi && mi.Ydpi == mi.Ydpi
                       ^^         ^^

Second part of that assertion is always true -> useless (correcting it wouldn't help with this issue though. Maybe adding the same typo to Xdpi would - there seem to be no ill effects from ignoring the assertion).

micheleissa commented 4 years ago

I have the same issue, I have two external monitors attached and ConEmu is displayed on one of them. Once the laptop goes to hibernate and comes back up I receive this error.

michaelmhoffman commented 4 years ago

I have this problem intermittently when my computer disconnects from its external monitor through a Thunderbolt 3 docking station. A decent way to reproduce is to repeatedly disconnect and reconnect the docking station until it happens.

Happy to send you the memory dump if you want but would rather not post it publicly. Looks like a race condition between the two calls of NearestMonitorInfo(mh_RequestedMonitor) in CConEmuSize::SetRequestedMonitor(HMONITOR).

My suggestion would be a retry-and-backoff approach before triggering an error. Maybe wait 1 s and repeat the operation again a few times before providing an error.

Assertion: ConEmu 200713 [64] PID=13536, TID=982464
C:\Program Files\ConEmu\ConEmu64.exe
Documents\Personal\conemu\src\ConEmu\ConEmuSize.cpp:1753
-----------------------
mi.Xdpi == dpi.Xdpi && mi.Ydpi == mi.Ydpi
-----------------------

Press <Ignore> to continue your work.

Press <Abort> to throw exception, ConEmu will be terminated!

Press <Retry> to copy text information to clipboard
and report a bug (open project web page).
PreError=0, PostError=0, Result=4

Assertion was occurred (ConEmu64.exe, PID=13536)
ConEmu build 200713 64

Memory dump was saved to
C:\Users\mhoffman\Desktop\ConEmuTrap\Trap-200713-13536.dmp
tomdowbelkin commented 4 years ago

I've experienced this lately also, it seems to have started within the last few ConEmu updates. I use Cmder, but the error dialog is pretty much the same as what others are showing. I also have a multi-monitor setup on my laptop, via an HDMI switch-box and a USB-C hub:

Assertion: ConEmu 200713 [64] PID=24196, TID=2235264
C:\tools\cmder\vendor\conemu-maximus5\ConEmu64.exe
Documents\Personal\conemu\src\ConEmu\ConEmuSize.cpp:1753
-----------------------
mi.Xdpi == dpi.Xdpi && mi.Ydpi == mi.Ydpi
-----------------------

Press <Ignore> to continue your work.

Press <Abort> to throw exception, ConEmu will be terminated!

Press <Retry> to copy text information to clipboard
and report a bug (open project web page).
PreError=0, PostError=0, Result=4

Assertion was occurred (ConEmu64.exe, PID=24196)
ConEmu build 200713 64

Memory dump was saved to
C:\Users\tjdow\Desktop\ConEmuTrap\Trap-200713-24196.dmp

Please Zip it and send to developer (via DropBox etc.)
https://conemu.github.io/en/Issues.html

http://wikisend.com/download/447086/ConEmuTrap.zip

peeeeter commented 4 years ago

I wish there was an "I'm experiencing this" counter...

tomdowbelkin commented 4 years ago

So I haven't seen this issue in the last week+, seems it may have been related to a driver or Windows update issue.

peeeeter commented 4 years ago

I still see it, even after several driver updates and things.

AmadeusW commented 4 years ago

I see the same issue. When I woke SurfaceBook (200% scaling, 2000p vertical resolution) up from sleep, but a bunch of apps flickered around the screen as if one of the screens was disconnected. I guess that's because the other monitor (100% scaling, 1920p vertical resolution) was also in sleep mode, and OS considered that screen gone briefly until the screen turned on.

ConEmu build: 200713 x64 OS version: Windows 19041 x64 Used shell version: powershell

Maximus5 commented 4 years ago

https://conemu.github.io/blog/2020/09/28/Build-200928.html

peeeeter commented 4 years ago

I can confirm that this still happens in the new release.

Maximus5 commented 4 years ago

If so, than I need new assertion and logs.

btsimonh commented 4 years ago

Have seen this once since upgrade - personally thought it was when I add a monitor. Will try to grab a dump if it happens again.

Maximus5 commented 4 years ago

To clarify. I'm waiting for a memory dump + (preferably) log files.

btsimonh commented 4 years ago

just attempted reproduction with pulling/plugging HDMI of 2nd monitor, and could not get a fail. So it may be more related to sleep/resume with different monitors? just tried sleep then resume with the monitor removed, no banana. And now sleep with only laptop monitor, resume with external attached. Still no banana. so it must be quite a strange combination of things....

Maximus5 commented 3 years ago

I also tried different combinations. But people still observe asserts and I wonder which conditions lead to that...

soerennielsen commented 3 years ago

I still see the same.

To reproduce:

  1. Have the conemu open
  2. Hibernate (likely also sleep)
  3. Connect to dock / monitors
  4. Resume

I also have a dump file, which I'send directly.

btsimonh commented 3 years ago

that was one scenario i tried yesterday with no result. To be clear, I have conemu running all the time, and have seen this three times in 3 weeks. I pretty much do the same routine every evening and morning with regard to moving the laptop between my workstation with 2nd screen and the living room, so for me it's rare (1/5 chance maybe). good that we have a dump...

soerennielsen commented 3 years ago

Maybe a stupid question, but how do I share a memory dump securely with you guys?

I have a dropbox link, no problem, I just do not want to share a memory dump with the entire internet.

On Fri, 30 Oct 2020 at 08:44, btsimonh notifications@github.com wrote:

that was one scenario i tried yesterday with no result. To be clear, I have conemu running all the time, and have seen this three times in 3 weeks. I pretty much do the same routine every evening and morning with regard to moving the laptop between my workstation with 2nd screen and the living room, so for me it's rare (1/5 chance maybe). good that we have a dump...

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/Maximus5/ConEmu/issues/2135#issuecomment-719362385, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABUG7KGTGTSDCIKHT5XSV63SNJVGVANCNFSM4OB7OODQ .

-- Mvh Søren

Maximus5 commented 3 years ago

@soerennielsen You could send me a link on e-mail (in profile)

Maximus5 commented 3 years ago

https://conemu.github.io/blog/2020/11/01/Build-201101.html

Cellule commented 3 years ago

Haven't had this issue for a while, I assume the fix worked :D closing this for now and will reopen if the issue occurs again Thanks

sferencik commented 3 years ago

Hi, I'm having the exact same issue with build 201124[64]. Can you please reopen the issue? I'm happy to provide the logs.

My case is as described above, but I'll try to describe it more explicitly:

---------------------------
ConEmu 201124 [64]
---------------------------
Assertion: ConEmu 201124 [64] PID=17200, TID=1635264

C:\Program Files\ConEmu\ConEmu64.exe

Documents\Personal\conemu\src\ConEmu\ConEmuSize.cpp:1750

-----------------------

miNew.dpi == dpiNew

-----------------------

Press <Cancel> to continue your work.

Press <Retry> to copy text information to clipboard

and report a bug (open project web page).
---------------------------
Retry   Cancel   
---------------------------
Cellule commented 3 years ago

@sferencik Current latest version is 210912[64] you should look to update first to see if it fixes your issue I also recommend you open a new issue if it still happens as it could be a different issue

sferencik commented 3 years ago

upgraded; will report back if I can repro.

gluttony38 commented 2 years ago

Hi, I have the same issue with 220418 preview (checked for update and no new version available) on Windows 10 19042 coming back from hibernate, but not every time, it seems to be after a long time of hibernate, at least I always have it after hibernate over night from my work laptop, but just try go to hibernate then come back immediately and no issue:

Assertion:
ConEmu 220418 [64] PID=17452 TID=17384 at 05:49:16.367
C:\Program Files\ConEmu\ConEmu64.exe
SRC\conemu\src\ConEmu\ConEmuSize.cpp:1751
-----------------------
miNew.dpi == dpiNew
-----------------------

Press <Cancel> to continue your work.

Press <Retry> to copy text information to clipboard
and report a bug (open project web page).
PreError=6, PostError=0, Result=4

Assertion was occurred (ConEmu64.exe, PID=17452) ConEmu build 220418 64

Memory dump was saved to C:\Users\frpoan0\Desktop\ConEmuTrap\Trap-220418-17452-1.dmp

Assertion report was copied to clipboard Please Zip it and send to developer (via DropBox etc.) https://conemu.github.io/en/Issues.html

Thanks.