PDA

View Full Version : Visual SourceSafe integration causes VSS to hang?


DaveL
07-Feb-2006, 10:12 AM
In evaluating BC I find that when I integrate it with VSS's File Difference custom editor, VSS is unresponsive when BC is active. This is especially painful when checking in a file and using the Diff facility - I usually add comments in the VSS Check In dialog as I step through the changes. Using BC integration this isn't possible since VSS is hung with BC active.

Is this an issue you're aware of - and will you be able to address it?

I'd really like to adopt BC fully, but this is a annoyance for me.

Craig
07-Feb-2006, 11:36 AM
This is a bug in VSS and you should report it to Microsoft. Apparently it just does a dumb wait while the external viewer is running, which would have worked for VSS's built-in WinDiff, but causes the hang you're seeing for any external app.

There is a workaround, but it may cause other problems, so YMMV. Put the following code into a batch file and call the batch file from VSS instead of using BC directly.

start C:\Progra~1\Beyond~1\BC2.exe %1 %2
ping 1.1.1.1 -n 1 -w 500 > NUL
The first line starts BC as a separate process, so VSS doesn't wait for it to finish. The second line is necessary to give BC a little time to load. VSS deletes it's temp files as soon as the batch file finishes, so if BC hasn't at least opened them for reading they'll be deleted before it has a chance to load them. If you're still seeing that behavior try increasing the '500' value; it's in milliseconds, so the example waits 1/2 second.

This should work fine for the "Show Differences" command, but probably won't work well if you're using BC's /mergeoutput switch for merging.

DaveL
08-Feb-2006, 04:00 AM
Thanks, that batch file method gets around the problem for now.

I've submitted a bug report on VSS. If anyone else wants to vote on it you can find it here:

http://lab.msdn.microsoft.com/ProductFee...b5-86990c0de445 (http://lab.msdn.microsoft.com/ProductFeedback/viewfeedback.aspx?feedbackid=9f9f1c6c-505b-498e-bdb5-86990c0de445)