Whole Tomato Software Forums
Whole Tomato Software Forums
Main Site | Profile | Register | Active Topics | Members | Search | FAQ
User name:
Password:
Save Password
Forgot your password?

 All Forums
 Visual Assist
 Technical Support
 VA freezes on assert in VC++7.1
 New Topic  Topic Locked
 Printer Friendly
Author Previous Topic Topic Next Topic  

beef
Senior Member

Poland
42 Posts

Posted - Jul 30 2005 :  06:25:37 AM  Show Profile
Hello,
I found a strange behaviour during debuging. When my c++ program encounters an 'assert' and I press the 'Try again' button, it normally takes me back to the IDE with the cursor placed on the assert. But, when VA is on, the ide freezes, taking 100% CPU all the time. The only solution is to kill the Visual Studio process by the Task Manager. When VA is off, this not happens. So I must turn off VA every time when I want to debug my program, when is quite annoying and easy to forget. One more thing: sometimes, I am able to take the Visual Studio back to life when I quickly press the 'Disable VA' button just (one-two second) after the 'Try again' after the assert, but later, the IDE do not respond for any clicks. I am not 100% sure, but it seems that breakpoints, on the contrary to asserts, works good.

My info:

VA_X.dll file version 10.1.1418.0 built 2005.06.24
Licensed to:
VA X: [email protected] (5-user license) Support ends 2006.07.20
VA.NET 7.1:
VAOpsWin.dll version 1.2.0.4
DevEnv.exe version 7.10.3077.0
msenv.dll version 7.10.3077.0
Font: Courier New 13(Pixels)
Comctl32.dll version 6.0.2800.1106
WindowsNT 5.1 Build 2600 Dodatek Service Pack. 1
Single processor

Platform: Win32
Stable Includes:
D:\\!work\\STLport-4.6.2\\stlport;
D:\\!work\\boost_1_32_0;
D:\\Visual Studio .NET 2003\\Vc7\\include;
D:\\Visual Studio .NET 2003\\Vc7\\atlmfc\\include;
D:\\Visual Studio .NET 2003\\Vc7\\PlatformSDK\\include\\prerelease;
D:\\Visual Studio .NET 2003\\Vc7\\PlatformSDK\\include;
D:\\Visual Studio .NET 2003\\SDK\\v1.1\\include;

Library Includes:
D:\\!work\\STLport-4.6.2\\src;
D:\\Visual Studio .NET 2003\\Vc7\\atlmfc\\src\\mfc;
D:\\Visual Studio .NET 2003\\Vc7\\atlmfc\\src\\atl;
D:\\Visual Studio .NET 2003\\Vc7\\crt\\src;

Other Includes:

feline
Whole Tomato Software

United Kingdom
18939 Posts

Posted - Jul 31 2005 :  12:22:07 PM  Show Profile
i have just tried this in a basic win32 C++ program, using VS 2003 and VAX 1418

when the program reaches the line:

ASSERT(0);

and i press "try again" i am taken to the IDE just fine. are you able to create a default test MFC application and see if ASSERT works as expected in that? i am wondering if somehow this is a project specific problem. i don't recall hearing about this before, so it could be specific to you and your setup. if so the trick is to work out why.

are you using a localised IDE or OS? sometimes this has been known to cause problems.

zen is the art of being at one with the two'ness
Go to Top of Page

beef
Senior Member

Poland
42 Posts

Posted - Aug 03 2005 :  09:08:42 AM  Show Profile
I am using english (standard) IDE, but on localized, Polish OS.
Hm, ok, I have create a default MFC app and both 'ASSERT' and crt 'assert' (from <assert.h>) works fine with VAX. One thing I haven't mention previously is that my app is OpenGL one (no MFC at all). So, when 'assert' arises, there is the application's openGL window active (on the second monitor - this is another configuration detail I forgot to mention). Maybe this is a source of problems (conflict OpenGL<->Double monitor<->VAX ??). When I will have more time, I will take a closer look.

But.. I found another oddity. The MFC wizard-generated code looks as follows... All strings (including comments) are messed up! Without VAX is ok. I suspect there is one of the 'localized os' specific issue, but all comments are in plain english...

// CAssertTestApp -?+?-?l-?]-?w

BOOL CAssertTestApp::InitInstance()
{
assert(0);
// -?-?-?p+?-?-?+?-?{-?-?-++?-?T-?M-?+?-?++-?w-?+?-?+? ComCtl32.dll 6.0 (-?t) -?H-?+?-?-?-?-+
// -?H-?+?-?+?-?+++?-?-?+?-++?-?-?-?A-?h Windows XP -++?-?n InitCommonControls()-?C-?_-?h-?-?-++?-?A
// -?+?-?+?-?++-?-?-?-?-?+?-?+?-?N-?-?-?+?-?C
InitCommonControls();

CWinApp::InitInstance();

// -?+?-?l-?+? OLE -?{-?-?-?w
if (!AfxOleInit())
{
AfxMessageBox(IDP_OLE_INIT_FAILED);
return FALSE;
}
AfxEnableControlContainer();
// -++?-++?-?+?-?l-?]-?w
// -?p-?G-?z-?-?-?+?-?+?-?o-?+?-?\\-?+?-?+?-?B-+Q-?+?-?+?-?+?-?+?-?-?-?-?-?-?-?i-?+?-?+?+?+?-?j-?p-?A-?z-?i-?H-?q-?U-?C
// -?{-?-?-+X-?-+-?-?-?-?-++?-?n-?-?-?+?-?l-?+?-?`-?-?-?A+?+?-?+?+?x-?s-?]-?w-?+?-?-?-?n-+++-+++-+X
// TODO: -?z+?-?-++?-+A-?+?-?+?-?+?-?-?-?r-?+? (-?+?-?p-?A-?-+-?q-?W-?+?-?+?-?+?+?-?-?W-?+?)
SetRegistryKey(_T("-?-+-+++ AppWizard -?+?-?-?-?+?-?-?+?-?-?+?-?{-?-?"));
LoadStdProfileSettings(4); // -+++-?J-++?-++? INI +?+?-++?-?-? (-?]-?t MRU)
// -?n-++++?-?-?+?-?{-?-?-?-?-?+?-?+?-+d-?-+-?C-?+?-?+?-+d-?-+-?t-?d-?b-?+?-?+?-?B-?+?-?[-?++-?-?-+P+?+?-?++-?-?-?i-?+?-?s-?-?
CMultiDocTemplate* pDocTemplate;
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18939 Posts

Posted - Aug 03 2005 :  8:11:25 PM  Show Profile
i have emailed support about the strange characters in the comments.

i will get back to you about the ASSERT when i have downloaded some test opengl code and tried it to see what happens. but i don't have a dual monitor system on hand, so that may complicate matters.

zen is the art of being at one with the two'ness
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18939 Posts

Posted - Aug 04 2005 :  2:01:59 PM  Show Profile
not knowing anything about opengl i have downloaded and compiled the code from the following article:

http://www.codeproject.com/opengl/openglmousesellection.asp

which seems to be using OpenGL to display the graphics in the window. using VS 2003 and VAX 1418 i have placed the code:

ASSERT(0);

as the first line of code in the function:

void CMouseSelView::OnLButtonDown(UINT nFlags, CPoint point)

when this is triggered and i select "retry" i break into the IDE as expected, and everything is fine. can you try the same experiment? the code compiled easily and quickly for me.

it could be that the problem is project specific, although that does sound slightly odd. i wonder if it has any connection with the display problems on your comment text.

zen is the art of being at one with the two'ness
Go to Top of Page

support
Whole Tomato Software

5566 Posts

Posted - Aug 04 2005 :  5:33:16 PM  Show Profile
With respect to the messed up comments, can you disable "Enhance syntax coloring" in our options dialog? Tell us if it makes a difference.
Go to Top of Page

beef
Senior Member

Poland
42 Posts

Posted - Aug 05 2005 :  03:18:16 AM  Show Profile
Yes, disabling "enhance syntax coloring" solves the problem. More than that, after this a am unable to reproduct the issue even with "enhance syntax coloring" turned back again :\\ The sample OpenGL program works good with asserts, mine still not. Grr, I hate unreproductable errors :) Maybe it has something to do with the fact, that my project uses heavy templates (STL port and stuff, "Use Original intellisense" is on), and reparsing hangs the IDE during switch (but it reparses in the backround...). Does the VAX reparse the project after the switching back to IDE?. Just speculating... I will try to leave the freezeed IDE for several minutes during the coffee break, maybe it is not the permanent hang-up? I would be happy if I can help, because this issue is quaite annoying, and VAX is to good to stop using it :)
Go to Top of Page

HOMO_PROGRAMMATIS
New Member

8 Posts

Posted - Aug 05 2005 :  06:49:43 AM  Show Profile
I should completely agree with that post, and more than that it's a reason for visiting that website today. So,

Throughout all versions of VA beginning with 6 (or 4? Anyway, i mean about 3 years) and for at least WINXP / XP SP1 / 2003 / 2003 SP1 it has great problems for for at least VC++6:
1. Quite a common event, i guess about 10% of reproduction. When VS needs to break the execution (debug-break, breakpoint, assert) VA not only locks VS, but it locks the entire machine. I can't even switch between applications using alt-tab (however, switch window is still displayed) or run Taskmanager. I even keep a small application that kills VS by hotkey launched - it's the only solution that helps to unlock my machine. I thought it's a problem of WinXP before, but then i noticed that disabling VA helps every time (i forgot to say: once a breakpoint locked the machine, it will do so every [every other] time until you reboot machine).
2. Even more common bug, about 70% reproduces in VC++6, eVc3, eVc4: these environments doesn't really exit when i close them. Instead, they stay hung (however, no more windows are displayed and one may think it's closed) until something (i can't say what exactly, a hour or two may pass) occasionally releases that hung, then "msdev.exe accessed invalid adress 0x00000011" and then "msdev.exe accessed invalid adress 0x00000000" messages occur, then msdev finally dies.

I guess that if you will hold a poll on that forum / user emails you will discover that most of users faced these two problems.
Go to Top of Page

HOMO_PROGRAMMATIS
New Member

8 Posts

Posted - Aug 05 2005 :  06:54:39 AM  Show Profile
By the way, the problems i have described are met in for at least VC++6 / VC++6.2 / VC++6.5 / VC++6.6 / eVc3.2 / eVc4.4
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18939 Posts

Posted - Aug 06 2005 :  4:07:36 PM  Show Profile
HOMO_PROGRAMMATIS since i don't recall anyone mentioning bugs like these before i suspect most users are not experiencing these problems. most people would have started shouting by now if this was happening to them.

when you quit the IDE and it does not exit is VAX still parsing the solution? try opening the OFIW dialog and see if this reports that parsing is still in progress. this change is fairly recent, so you can only use this test on a recent version of VAX.

beef can you try and generate a call stack of the IDE hanging? also knowing if it is a permanent hang or not would be useful.

zen is the art of being at one with the two'ness
Go to Top of Page

HOMO_PROGRAMMATIS
New Member

8 Posts

Posted - Aug 06 2005 :  5:56:33 PM  Show Profile
Well... I thought that it's bugs of M$, one in WinXP and one in MSDev. I couldn't even think that it's VA's fault. that's why you don't get these peolpe shouting. Try asking them if they have ever met these bugs... However, i also understand that the problem could arise only in conjunction with another software i always used...

As for parsing - no, msdev is not parsing at that time. When it is hung, you can find it only in taskmanager - all the windows are closed already. Perhaps, the bug is at the dll detaching. And while it is hung, it doesn't consume any processor time.
Go to Top of Page

feline
Whole Tomato Software

United Kingdom
18939 Posts

Posted - Aug 08 2005 :  4:26:47 PM  Show Profile
this is strange. do you seem to get the hang problem when quiting the IDE if VAX is disabled?

are you able to get to attach the debugger to the hung process and get a call stack to try and see what is going on?

have you ever seen the IDE hang if you close it without first opening a project?

zen is the art of being at one with the two'ness
Go to Top of Page

HOMO_PROGRAMMATIS
New Member

8 Posts

Posted - Aug 09 2005 :  08:07:22 AM  Show Profile
1. No, i didn't ever see that hung witout VA. Also, i've asked my friend and he confirmes that behavior on his VS.NET 7 while using VA
2. I will try next time, perhaps 2 or 3 week later (i'm going to leave my work for a while and take a rest)
3. Well... I can't really remember. By the way, is there any debug logging in VA?

However, the bug with the whole windows getting hung is much more important. It seems that VA manages to lock window system in some way as all the running programs stops responding / drawing their windows / whatever unless Msdev is killed via hotkey (i can't even call taskmanager)
Go to Top of Page

sean
Whole Tomato Software

USA
2817 Posts

Posted - Aug 12 2005 :  9:00:12 PM  Show Profile
Anyone care to enable logging to see if anything turns up?
Enable logging on the Performance node of the VA options dialog. Reproduce the problem. Exit the IDE. Zip and send the following files to [email protected] referencing TOPIC_ID=3822.
c:\\va.log
c:\\Program Files\\Visual Assist X\\Startup.log
Logging is disabled automatically when you restart the IDE.
Go to Top of Page

beef
Senior Member

Poland
42 Posts

Posted - Aug 17 2005 :  11:15:18 AM  Show Profile
Finally, I was able to reproduce the bug with logging enabled. I sent the files a found i the c:\\ directory (va.log & VAssist.log) with Startup.log from vax dir. I hope it helps.
Go to Top of Page

sean
Whole Tomato Software

USA
2817 Posts

Posted - Aug 17 2005 :  3:35:32 PM  Show Profile
beef - you asked about reparsing of the project when you switch back to the IDE. On the Performance tree node of the VA Options dialog, do you have "keep symbols in memory for fast response after Alt+Tab"? If so, try turning that off.
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Topic Locked
 Printer Friendly
Jump To:
© 2023 Whole Tomato Software, LLC Go To Top Of Page
Snitz Forums 2000