This forum uses cookies. Click X button to hide this message. What is stored? / Privacy
Total Commander Forum Index Total Commander
Forum - Public Discussion and Support
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Windows 8.1 Pro x64 - crash comctl32.dll
Goto page Previous  1, 2
 
Post new topic   Reply to topic    Total Commander Forum Index -> TC9.1x bug reports (English) Printable version
View previous topic :: View next topic  
Author Message
ghisler(Author)
Site Admin
Site Admin


Joined: 04 Feb 2003
Posts: 35979
Location: Switzerland

PostPosted: Sun Jul 01, 2018 1:00 am    Post subject: Reply with quote

I have added a lot of code in TC 9.20 RC3 to fix the Lister problem:
1. I try to catch the exceptions - when this happens, you won't get a scroll bar
2. When you first open Lister with F3, I open a second copy of Lister and immediately hide it. As long as this hidden copy stays open, the bug will not occur again.

Please test it!

I don't have a solution for the other bug because I'm not controlling the scroll bars there directly - they are normal Listbox windows. But you can open the compare tool as a standalone program:

wincmd.ini
[Configuration]
Comparetool=c:\totalcmd\totalcmd64.exe /S=C
or with spaces:
Comparetool="c:\Program Files\totalcmd\totalcmd64.exe" /S=C
_________________
Author of Total Commander
http://www.ghisler.com
Back to top
View user's profile Send private message Send e-mail Visit poster's website
browny
Member
Member


Joined: 10 Sep 2007
Posts: 158

PostPosted: Tue Jul 03, 2018 6:06 am    Post subject: Reply with quote

ghisler(Author) wrote:
But you can open the compare tool as a standalone program

Usually, a fault in a thread, including thread termination, should not crash the main program.
Some threads that worked fine in XP used to cause exceptions on thread function exit for no obviuous reason in Vista; this had to be handled. There was no GUI involved.


Last edited by browny on Thu Jul 05, 2018 6:13 am; edited 1 time in total
Back to top
View user's profile Send private message
ghisler(Author)
Site Admin
Site Admin


Joined: 04 Feb 2003
Posts: 35979
Location: Switzerland

PostPosted: Wed Jul 04, 2018 8:00 am    Post subject: Reply with quote

It's not a fault in a thread, not even a fault in Total Commander. It seems to happen when a window using scrollbars is closed, and then another window with scrollbars is loaded. Somehow the scrollbar theme gets corrupted and crashes, but only on Windows 8.1. Microsoft has more or less abandoned Windows 8.1 and older, so there is no hope for a fix from their side.

For Lister, I keep a hidden Lister window open in the background to prevent the crash. I haven't had the time yet to test whether this works with compare too somehow.
_________________
Author of Total Commander
http://www.ghisler.com
Back to top
View user's profile Send private message Send e-mail Visit poster's website
browny
Member
Member


Joined: 10 Sep 2007
Posts: 158

PostPosted: Thu Jul 05, 2018 6:33 am    Post subject: Reply with quote

ghisler(Author) wrote:
Somehow the scrollbar theme gets corrupted and crashes, but only on Windows 8.1.

Windows Server 2016.
Syncronize Directories was open, and a number of times Compare by Content was called using Ctrl+F3; sometimes files were deleted on both sides.
RC3 crashed when exiting from Compare.

There was an example above, with non-GUI thread.
The thread's task was successfully completed, but the application was failing on thread termination for whatever reasons.
The idea was to let the thread die, but keep the main program running.
Simple exception catching did this.
Back to top
View user's profile Send private message
ghisler(Author)
Site Admin
Site Admin


Joined: 04 Feb 2003
Posts: 35979
Location: Switzerland

PostPosted: Fri Jul 06, 2018 7:43 am    Post subject: Reply with quote

The fix in TC 9.20 is currently only for Windows 8.1. Windows Server 2016 should be based on Windows 10, and I cannot reproduce the bug on Windows 10 so far.
_________________
Author of Total Commander
http://www.ghisler.com
Back to top
View user's profile Send private message Send e-mail Visit poster's website
browny
Member
Member


Joined: 10 Sep 2007
Posts: 158

PostPosted: Fri Jul 06, 2018 12:31 pm    Post subject: Reply with quote

For the record: final 9.20 64-bit in Windows 8.1 crashed when using Synchronize and Compare.
Back to top
View user's profile Send private message
petermad
Power Member
Power Member


Joined: 05 Feb 2003
Posts: 7865
Location: Valsted, Denmark

PostPosted: Fri Jul 06, 2018 1:32 pm    Post subject: Reply with quote

In TC 9.20 x64 final, when opening Lister for the first time in a TC session, a small Lister window (135x50 pixels) is opened before the full window is displayed and can be seen for approximately a second (this is a slow PC).

If that is the "hidden Lister window" it is pretty annoying.

It seems to open at the same x,y position as the "real" Lister window. Is it posible to open that pre-window behind TC's main window in stead, so the user doesn't have to see it until it has been hidden. Or altenatively let it have the same size as the "real" lister window - then it will just looks like a delay in loading the content of the final Lister window.

Or is that small Lister Window I see, just the real Lister window, but for some reason being collapsed at start?

BTW - I don't have any crashes with TC in my Windows 8.1
_________________
#524
Danish Total Commander Translator
TC 9.20 32+64bit on Win XP 32bit, Win 7, 8.1 & 10 64bit. TC 2.91b3 on Android 6.0

Get Extended Total Commander Menus
Back to top
View user's profile Send private message Send e-mail Visit poster's website
ghisler(Author)
Site Admin
Site Admin


Joined: 04 Feb 2003
Posts: 35979
Location: Switzerland

PostPosted: Sun Jul 08, 2018 2:34 am    Post subject: Reply with quote

Quote:
In TC 9.20 x64 final, when opening Lister for the first time in a TC session, a small Lister window (135x50 pixels) is opened before the full window is displayed and can be seen for approximately a second (this is a slow PC).

If that is the "hidden Lister window" it is pretty annoying.

It is the "hidden window", and it is the ONLY way I found to prevent the crash on Windows 8.1. If I create the window directly hidden, or off screen, then the error still occurs.

Quote:
It seems to open at the same x,y position as the "real" Lister window. Is it posible to open that pre-window behind TC's main window in stead, so the user doesn't have to see it until it has been hidden.

No, when I do this, the error still occurs.

Quote:
I don't have any crashes with TC in my Windows 8.1

It's actually easy to reproduce with TC 9.12: Just open a releatively large text file with F3, close lister with ESC, repeat about 5-10 times.
_________________
Author of Total Commander
http://www.ghisler.com
Back to top
View user's profile Send private message Send e-mail Visit poster's website
petermad
Power Member
Power Member


Joined: 05 Feb 2003
Posts: 7865
Location: Valsted, Denmark

PostPosted: Sun Jul 08, 2018 4:54 am    Post subject: Reply with quote

Quote:
It's actually easy to reproduce with TC 9.12: Just open a releatively large text file with F3, close lister with ESC, repeat about 5-10 times.


I have now tried that - with a 300 Mb file and a 165 Kb file.

I managed to get a crash 3 times from TC 9.12 and I have to open and close the file maybe 50 or more times before it happens. I reboot after each crash.
_________________
#524
Danish Total Commander Translator
TC 9.20 32+64bit on Win XP 32bit, Win 7, 8.1 & 10 64bit. TC 2.91b3 on Android 6.0

Get Extended Total Commander Menus
Back to top
View user's profile Send private message Send e-mail Visit poster's website
ghisler(Author)
Site Admin
Site Admin


Joined: 04 Feb 2003
Posts: 35979
Location: Switzerland

PostPosted: Mon Jul 09, 2018 2:52 am    Post subject: Reply with quote

The user who reported the bug sent me test files where the crash happened after only 5 tries.
_________________
Author of Total Commander
http://www.ghisler.com
Back to top
View user's profile Send private message Send e-mail Visit poster's website
browny
Member
Member


Joined: 10 Sep 2007
Posts: 158

PostPosted: Tue Jul 17, 2018 2:40 am    Post subject: Reply with quote

TC 9.20 64-bit, Windows Server 2016.
Pressed F3 to view Win32.readme.first.txt file, and got the dialog "close" or "debug".

Quote:
> comctl32.dll!SBSetParms() Unknown Non-user code. Symbols loaded.
comctl32.dll!CCSetScrollInfo() Unknown Non-user code. Symbols loaded.
uxtheme.dll!ThemeSetScrollInfoProc(HWND__ * hwnd=0x00000000000a04ae, int nBar=0x00000001, const tagSCROLLINFO * psi=0x0000000001cc3ac0, int fRedraw=0xffffffff) Line 1193 C++ Non-user code. Symbols loaded.
user32.dll!SetScrollInfo() Unknown Non-user code. Symbols loaded.
user32.dll!SetScrollPos() Unknown Non-user code. Symbols loaded.
TOTALCMD64.EXE!00000000005e46f8() Unknown No symbols loaded.
Back to top
View user's profile Send private message
ghisler(Author)
Site Admin
Site Admin


Joined: 04 Feb 2003
Posts: 35979
Location: Switzerland

PostPosted: Tue Jul 17, 2018 4:22 am    Post subject: Reply with quote

Yes, it's the same bug I fix for Windows 8.1. However, Windows Server 2016 is based on Windows 10, so my fix isn't applied there.
_________________
Author of Total Commander
http://www.ghisler.com
Back to top
View user's profile Send private message Send e-mail Visit poster's website
browny
Member
Member


Joined: 10 Sep 2007
Posts: 158

PostPosted: Wed Jul 18, 2018 4:12 am    Post subject: Reply with quote

Does a thread (Lister, Compare by content) must crash the main application? Especially, on thread exit.
Back to top
View user's profile Send private message
ghisler(Author)
Site Admin
Site Admin


Joined: 04 Feb 2003
Posts: 35979
Location: Switzerland

PostPosted: Thu Jul 19, 2018 3:52 am    Post subject: Reply with quote

SetScrollPos isn't actually called from a separate thread. I my tests with Windows 8.1, I can catch the exception in SetScrollPos. However, afterwards, no scroll bars are shown any more, and all further calls to SetScrollPos/SetScrollInfo also crash. It's a bug deep in the Windows 8.1 theme services, and Microsoft doesn't seem to bother. The bug is fixed in Windows 10 (and doesn't appear in Windows 8 or older).
_________________
Author of Total Commander
http://www.ghisler.com
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> TC9.1x bug reports (English) All times are GMT - 6 Hours
Goto page Previous  1, 2
Page 2 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Imprint/Impressum: This site is maintained by Ghisler Software GmbH
Privacy Policy | Datenschutzerklńrung | Politique de ConfidentialitÚ

Using phpBB © phpBB Group