VSS 2005 Crashes When Creating History Report

My VSS 2005 is crashing when I

- Open VSS 2005 Explorer

- Navigate to subfolder

- Right Click - Select View History

- Check "Recursive"

- Enter a recent date

- Click OK

- Click Report

- Both Include Details and Differences are checked

- Clicking either OK or Preview for any of the choices (printer, file, clipboard) causes a "MS VSS Explorer has encoutnered a problem and needs to close". Button choices are Debug, Send Error Report, Dont' Send.

If I click debug, VS opens with a green arrow at the bottom of this method. Unforntuantely I dont know C++, so I dont know any other context to provide

BOOL CStatusBar::SetPaneText(int nIndex, LPCTSTR lpszNewText, BOOL bUpdate)

{

ASSERT_VALID(this);

ASSERT(::IsWindow(m_hWnd));

AFX_STATUSPANE* pSBP = _GetPanePtr(nIndex);

if (!(pSBP->nFlags & SBPF_UPDATE) &&

((lpszNewText == NULL && pSBP->strText.IsEmpty()) ||

(lpszNewText != NULL && pSBP->strText.Compare(lpszNewText) == 0)))

{

// nothing to change

return TRUE;

}

TRY

{

if (lpszNewText != NULL)

pSBP->strText = lpszNewText;

else

pSBP->strText.Empty();

}

CATCH_ALL(e)

{

// Note: DELETE_EXCEPTION(e) not required

return FALSE;

}

END_CATCH_ALL

if (!bUpdate)

{

// can't update now, wait until later

pSBP->nFlags |= SBPF_UPDATE;

return TRUE;

}

pSBP->nFlags &= ~SBPF_UPDATE;

DefWindowProc(SB_SETTEXT, ((WORD)pSBP->nStyle)|nIndex,

(pSBP->nStyle & SBPS_DISABLED) ? NULL :

(LPARAM)(LPCTSTR)pSBP->strText);

return TRUE;

}

[2541 byte] By [VinceP] at [2007-12-25]
# 1

Oh here is versioning information..

- Database host is same machine that I am trying to view history on.

The machine is

Microsoft Windows XP Professional Version 5.1.2600 Service Pack 2 Build 2600

CPU: Processor x86 Family 15 Model 4 Stepping 3 GenuineIntel ~3392 Mhz

Visual Source Safe - V8.0.50727.42

Microsoft Visual Studio 2005 Team Edition for Software Developers

I have run Analyzer on my database and there are no errors.

If I try to view history for an individual file, it seems to work ok.


VinceP at 2007-8-31 > top of Msdn Tech,Visual Studio,Visual Studio Source Control and SourceSafe...
# 2
Vince,
Does this happen on all folders or just a particular one?

Also, next time it happens and you click "Debug", can you open a Stack window (Debug -> Windows -> Stack) and copy/paste the info?

RichardBergMSFT at 2007-8-31 > top of Msdn Tech,Visual Studio,Visual Studio Source Control and SourceSafe...
# 3

I'm having the same problem. Any time I select "Include differences" when generating a history report, VSS crashes. I have experimented in various ways: only running reports on lists of files that are checked in and making sure none were newly added, only running reports on files that are currently checked in and none are checked out, making the history much smaller (down to 3 files). All result in a crash.

Here is a stack trace of the problem:

> msvcr80.dll!_crt_debugger_hook(int _Reserved=) Line 65 C
msvcr80.dll!_invoke_watson(const wchar_t * pszExpression=0x00000000, const wchar_t * pszFunction=0x00000000, const wchar_t * pszFile=0x00000000, unsigned int nLine=0, unsigned int pReserved=0) Line 181 + 0x7 bytes C++
msvcr80.dll!_output_s_l(_iobuf * stream=0x0012c790, const char * format=0x00e97ff8, localeinfo_struct * plocinfo=0x00000000, char * argptr=0x0012c818) Line 1031 + 0x15 bytes C++
msvcr80.dll!_vsnprintf_helper(int (_iobuf *, const char *, localeinfo_struct *, char *)* outfn=0x7814249e, char * string=0x0012c840, unsigned int count=256, const char * format=0x00e97ff8, localeinfo_struct * plocinfo=0x00000000, char * ap=0x0012c818) Line 140 + 0x1d bytes C
msvcr80.dll!_vsnprintf_s_l(char * string=0x0012c840, unsigned int sizeInBytes=256, unsigned int count=255, const char * format=0x00e97ff8, localeinfo_struct * plocinfo=0x00000000, char * ap=0x0012c818) Line 288 + 0x1d bytes C
msvcr80.dll!_snprintf_s(char * string=0x0012c840, unsigned int sizeInBytes=256, unsigned int count=255, const char * format=0x00e97ff8, ...) Line 241 + 0x17 bytes C
ssapi.dll!5c470466()
[Frames below may be incorrect and/or missing, no symbols loaded for ssapi.dll]
ssgui.dll!5c6c2661()
ssapi.dll!5c460b72()
ssapi.dll!5c470071()
ssapi.dll!5c4605dc()
ssapi.dll!5c45fc8c()
ssapi.dll!5c45fca0()
msvcr80.dll!free(void * pBlock=0x5c45d015) Line 115 + 0x5 bytes C
msvcr80.dll!free(void * pBlock=0x00e97ff8) Line 115 + 0x5 bytes C
ssapi.dll!5c45c1d7()
ssapi.dll!5c45bd5f()
ntdll.dll!7c910732()
ntdll.dll!7c910732()
ntdll.dll!7c9106ab()
ntdll.dll!7c9106eb()
ntdll.dll!7c910833()
ntdll.dll!7c910895()
ntdll.dll!7c910833()
ntdll.dll!7c910895()
ntdll.dll!7c912975()
ntdll.dll!7c9129b9()
ntdll.dll!7c910833()
ssapi.dll!5c460b72()
ssapi.dll!5c470071()
ssapi.dll!5c46073a()
ssapi.dll!5c45fd04()
ssapi.dll!5c45f620()
ssapi.dll!5c45fd2f()
ssapi.dll!5c45fd2f()
ssgui.dll!5c6c244b()
user32.dll!77d4e905()
ntdll.dll!7c910732()
ntdll.dll!7c910732()
ntdll.dll!7c9106ab()
ntdll.dll!7c9106eb()
mfc80.dll!CWnd::WindowProc(unsigned int message=15, unsigned int wParam=0, long lParam=0) Line 1741 + 0x17 bytes C++
mfc80.dll!CControlBar::WindowProc(unsigned int nMsg=1525728, unsigned int wParam=1525728, long lParam=1525776) Line 504 + 0xc bytes C++
00000030()
ntdll.dll!7c917786()
mfc80.dll!AfxWndProc(HWND__ * hWnd=0x00000000, unsigned int nMsg=1635018084, unsigned int wParam=1630432361, long lParam=7893107) Line 388 + 0x10 bytes C++
kernel32.dll!7c80a68d()
mfc80.dll!AfxWndProcBase(HWND__ * hWnd=, unsigned int nMsg=, unsigned int wParam=, long lParam=) Line 407 + 0x26 bytes C++
user32.dll!77d48734()
user32.dll!77d48816()
user32.dll!77d4885a()
user32.dll!77d4882a()
ntdll.dll!7c9105c8()
ntdll.dll!7c910551()
ntdll.dll!7c91056d()
user32.dll!77d4b4cb()
user32.dll!77d4b4cb()
user32.dll!77d4b50c()
user32.dll!77d4b51c()
ntdll.dll!7c90eae3()
user32.dll!77d4d82a()
ntdll.dll!7c91056d()
kernel32.dll!7c809988()
kernel32.dll!7c80999b()
comctl32.dll!773de359()
kernel32.dll!7c8399f3()
kernel32.dll!7c80999b()
comctl32.dll!773dece6()
user32.dll!77d48734()
user32.dll!77d4882a()
ntdll.dll!7c9105c8()
ntdll.dll!7c910551()
ntdll.dll!7c91056d()
user32.dll!77d4e905()
mfc80.dll!CWnd::DefWindowProcA(unsigned int nMsg=1025, unsigned int wParam=56, long lParam=2015426127) Line 1035 + 0x13 bytes C++
mfc80.dll!CStatusBar::SetPaneText(int nIndex=1550640273, const char * lpszNewText=0x0012d630, int bUpdate=0) Line 441 C++
ssgui.dll!5c6ed6ae()
ssgui.dll!5c6ce491()
ntdll.dll!7c91056d()
msvcr80.dll!free(void * pBlock=0x0012f708) Line 110 C
ssgui.dll!5c6c1da6()
user32.dll!77d4882a()
user32.dll!77d4b4c0()
user32.dll!77d4b4cb()
user32.dll!77d4b4cb()
user32.dll!77d5ec8d()
user32.dll!77d5eca3()
mfc80.dll!CWnd::WindowProc(unsigned int message=12, unsigned int wParam=0, long lParam=15035032) Line 1741 + 0x17 bytes C++
mfc80.dll!CControlBar::WindowProc(unsigned int nMsg=1525680, unsigned int wParam=1525680, long lParam=1525728) Line 504 + 0xc bytes C++
00000030()
ntdll.dll!7c917786()
mfc80.dll!CThreadLocalObject::GetData(CNoTrackObject * (void)* pfnCreateObject=0x781feec7) Line 430 + 0x5 bytes C++
mfc80.dll!AfxGetModuleThreadState() Line 464 + 0x16 bytes C++
mfc80.dll!afxMapHWND(int bCreate=2015366227) Line 298 + 0x5 bytes C++
mfc80.dll!AfxCallWndProc(CWnd * pWnd=0x00000000, HWND__ * hWnd=0x009c01c4, unsigned int nMsg=12, unsigned int wParam=2147340288, long lParam=1242008) Line 257 + 0x5 bytes C++
mfc80.dll!AfxWndProc(HWND__ * hWnd=0x00000000, unsigned int nMsg=367529199, unsigned int wParam=1242072, long lParam=2015358792) Line 388 + 0x10 bytes C++
kernel32.dll!7c80a68d()
mfc80.dll!AFX_MAINTAIN_STATE2::~AFX_MAINTAIN_STATE2() Line 66 C++
user32.dll!77d6e54f()
ssapi.dll!5c464216()
ssapi.dll!5c470416()
ssapi.dll!5c47067c()
ssapi.dll!5c463f61()
msvcr80.dll!_getptd_noexit() Line 583 + 0x7 bytes C
msvcr80.dll!_stricmp_l(const char * dst=0x00379076, const char * src=0x0012dab0, localeinfo_struct * plocinfo=0x00000000) Line 64 + 0xd bytes C++
msvcr80.dll!_stricmp(const char * dst=0x78200b73, const char * src=0x00154ca8) Line 105 + 0xc bytes C++
mfc80.dll!CProcessLocal<_AFX_BASE_MODULE_STATE>::GetData() Line 216 C++
mfc80.dll!AfxCallWndProc(CWnd * pWnd=0x8b56c3ff, HWND__ * hWnd=0x20468df1, unsigned int nMsg=4229300048, unsigned int wParam=2239241490, long lParam=-1960675904) Line 257 + 0x5 bytes C++
ff7fabe9()

Thanks,

Eric Galyon

Colorado State University

Middleware Group Leader

EricGalyon at 2007-8-31 > top of Msdn Tech,Visual Studio,Visual Studio Source Control and SourceSafe...
# 4
Thanks for the info everyone! There's definitely a bug here. If it's affecting your ability to use SourceSafe, please open a case with Customer Support so it can be considered as a QFE.
RichardBergMSFT at 2007-8-31 > top of Msdn Tech,Visual Studio,Visual Studio Source Control and SourceSafe...
# 5

Thanks for the response... sorry it took me a while to respond. The error happens on some folders but not others. I cant' detect what the pattern is.

I'll see about having my IT people contact your people.

VinceP at 2007-8-31 > top of Msdn Tech,Visual Studio,Visual Studio Source Control and SourceSafe...
# 6

Vince P: I'll see about having my IT people contact your people.

So, have your IT people contacted MS? If not, then I would be happy to do it, we have the same problem.

Richard Berg: There's definitely a bug here. If it's affecting your ability to use SourceSafe, please open a case with Customer Support so it can be considered as a QFE.

Yes, but where do I find "Customer Support"? If I go to http://www.microsoft.com and navigate to Support, it detects I'm swedish, show a new page called (my translation from swedish) "Microsoft Help and Support", and here I find a link "Choose product to find out about your support options" and to make a long story short I'm finally encouraged to pay 300$ or so to create a support incident and this is not an option. So what do I do?

Anyway, a tip for all is to use the command line utility ss.exe to show history and report of changes, it works ok. I would prefer VSS Explorer though.

Best regards,

Malmis

Malmis at 2007-8-31 > top of Msdn Tech,Visual Studio,Visual Studio Source Control and SourceSafe...
# 7
I been waiting to hear from my IT Department/Singularity
VinceP at 2007-8-31 > top of Msdn Tech,Visual Studio,Visual Studio Source Control and SourceSafe...
# 8
Sorry I didn't see this before. If the problem is a bug in SS (crashing obviously is) then you won't be charged. Don't be afraid to reference this thread if you have trouble getting the case escalated to the dev team (me).
RichardBergMSFT at 2007-8-31 > top of Msdn Tech,Visual Studio,Visual Studio Source Control and SourceSafe...
# 9

Everyone I work with who uses VSS 2005 finds that it crashes quite often when simply diffing two files. If you compare a sourcesafe folder with a folder on disk (or another sourcesafe folder), the resulting Folder Differences window that pops up seems to be the culprit. If you then diff any two files from that Folder Differences window, then either upon bringing up the difference window for the two files--or in closing the difference window for the two files--sourcesafe crashes (and you have to start all over diffing your folders, which is painful waste of development time). More precisely, it seems to be the refreshing of that Folder Differences window that causes the crash (just a best guess based on observations thus far).

What has me boggled is how the heck this thing passed MS QA. No doubt many developers at MS have experienced this...it's too blatant an error for everyone to have missed it. (Unless you buy into the rumor that MS developers don't use VSS.) Anyway, please pardon my frustration, but this is a rookie error on their part and today the frustration "straw" finally broke the camel's back for me...hence this post.

When can we expect an SP for this version of VSS (it's the 32-bit version, version # 8.0.50727.42) ?

Thanks.

(NOTE that this is an intermittent problem, but seems to happen more often when Remote Desktop'd over a slow connection where the window refresh rate is much slower than when diffing locally. When diffing locally it still occurs--albeit much less often--but still does occur anywhere from 5% to 10% of the time...and of course, always at the worst possible time. Thank you Murphy.)

Tom128281 at 2007-8-31 > top of Msdn Tech,Visual Studio,Visual Studio Source Control and SourceSafe...
# 10
If one of the diffs contains a "%" character then this is a known issue. There's also a GDI handle leak that may be related. I don't have the KB number handy but both should be available to Customer Support by now.

For what it's worth, I don't know of anyone @ MS who uses VSS.

As you may know VSS did not participate in SP1 but we are starting to plan a standalone service pack. I'll blog details as soon as I can say more.

RichardBergMSFT at 2007-8-31 > top of Msdn Tech,Visual Studio,Visual Studio Source Control and SourceSafe...
# 11

Thanks for the quick response. So it's true MS developers don't use VSS...I've used it from the beginning and since it was always adequate, I've never bothered investigating better alternatives or superious source-control paradigms. After doing some brief research, it appears VSS is considered (by those who appear to know) to NOT employ the most modern source-control practices. But at least that explains why such highly-visible bugs are there in VSS...if the MS developers had been using it themselves, no doubt the product would be much better than it is now.

Our group plans to move over to Team System as soon as our schedule permits...is this what MS developers currently use? (From the sound of things, Team System employs the latest source-control / project-management practices we would want.)

Thanks.

Tom128281 at 2007-8-31 > top of Msdn Tech,Visual Studio,Visual Studio Source Control and SourceSafe...
# 12
VSS was never ever intended to be used by large and/or distributed teams. It would implode with hundreds of people on it, much less the ~30,000 worldwide developers at MS who use the internal Source Depot. I do think it's adequate for small teams who share a LAN, though its competition is undeniably stronger than it was when it shipped in 1993.

We have gotten a couple thousand people onto Team Foundation and plan to steadily increase that number.

RichardBergMSFT at 2007-8-31 > top of Msdn Tech,Visual Studio,Visual Studio Source Control and SourceSafe...
# 13
I will be very happy when you post that a Service pack for Visual Source Safe if available.
I was testing it for use by our SMALL group and I can't even do any kind of history or diff.

Please let us know when a service pack is available.
There are many small development groups who still use VSS and don't have a use for Team Builder.

Regards
Sandy

SandyC at 2007-8-31 > top of Msdn Tech,Visual Studio,Visual Studio Source Control and SourceSafe...
# 14

Has this issue been resolved yet? Is there a hotfix? We are experiencing the same issue when running history reports with details.

EricBa at 2007-8-31 > top of Msdn Tech,Visual Studio,Visual Studio Source Control and SourceSafe...

Visual Studio

Site Classified