Menu

#924 Remote desktop causes assertion failures on launch and crashes existing IDE session

Undefined
open
nobody
None
Bug_Report
2022-10-13
2020-03-02
raynebc
No

As originally reported here:
http://forums.codeblocks.org/index.php/topic,23158.msg157753.html#msg157753
and further detailed by my subsequent posts in that thread.

Starting with the 5-10-2018 Windows nightly build (WX 311, x64), and including the 3-1-2020 nightly build, dozens of assertion failures are presented when C::B is launched on a remote computer being controlled by Remote Desktop from another Windows (tested with Windows 7 and Windows 10 remote clients). It seems that for unknown reasons, connecting from some client devices like an Android phone doesn't cause this problem. If C::B is already running (ie. if launched locally before the computer is connected to from a Remote Desktop client), the program will display the series of assertion failures and then resume working or in some cases it just seems to crash instead.

The RDP client's settings may not matter, but in the case of using Windows 7 and Windows 10 on the RDP clients (from which I connect to my RDP server, the computer running C::B) I am generally just using the default RDP client settings: Full screen, 16 bit color, play audio on remote computer, auto detect connection quality, persistent bitmap caching.

My version of MinGW is unable to build C::B from source so I can't build with debugging symbols to debug this myself.

Discussion

  • Miguel Gimenez

    Miguel Gimenez - 2020-04-28

    I am now using remote desktop (Windows 7 in both sides) with current trunk (r12073, wx3.1.3) and default options and everything is OK except when doing this:

    • Open C::B in the remote computer
    • Open any file of any project
    • With C::B visible (i.e. not minimized) switch view to the local computer
    • Return to the remote computer
    • The tab in the editor window is now a black rectangle. The other tabs are unaffected.

    Switching editor tabs, minimizing or maximizing C::B, etc only change the black rectangle to whatever was in screen before. The only way to recover the tab behaviour is restarting C::B

    The problems seems related to Scintilla and Direct2D, in fact disabling it everything work as intended.

    Direct2D Black Screen

    In the link they talk about crashes

     

    Last edit: Miguel Gimenez 2020-04-28
  • raynebc

    raynebc - 2020-04-28

    If you can provide a nightly build with debugging symbols I can try to get you a stack trace. I'm not sure the problem described in that link is the same, as the issue I've described isn't random and is reliably reproducible on my end.

     
  • Miguel Gimenez

    Miguel Gimenez - 2020-04-28

    You can try this, I think it has all the needed libraries. It has some minor differences with the nightly, but I don't think they will make a difference.

     
  • Teodor Petrov

    Teodor Petrov - 2020-04-28

    @Miguel Gimenez: Please open a separate issue. We don't use scintilla's d2d renderer. If you can try see if this issue reproduces with the stc sample.

     
  • raynebc

    raynebc - 2020-04-28

    I tried the build Miguel posted but the same two assertion failures are displayed repeatedly several times before the IDE is able to fully launch. In case it matters, in this build, the GetRawData() assertion references line number 1422 instead of the line number I posted back on the forum a long time ago.

    I am finding that this doesn't happen for every RDP client I use. If I connect to my development computer (running C::B) from a desktop running Windows 10 Enterprise LTSC running build 17763.1158, it causes the assertion failures. If I connect from a laptop running Windows 10 Home build 18363.778, it does not cause assertion failures. Possibly newer versions of Windows 10 got improved RDP functionality, or perhaps that's just a coincidence.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.