Status: New
Owner: ----
Labels: Type-Defect Priority-Medium

New issue 353 by [email protected]: gvimdiff on Windows generates the same v:fname_out from multiple processes
https://code.google.com/p/vim/issues/detail?id=353

What steps will reproduce the problem?
1. Use gvimdiff -R as the diff tool for Perforce
2. Attempt to diff 8 files at once

What is the expected output? What do you see instead?
I expect to see 8 copies of gvimdiff open showing the diffs of those files

Instead, I get 8 copies of gvimdiff open, usually with one or two complaining:
E810: Cannot read or twite temp files
E97: Cannot create diffs.

What version of the product are you using? On what operating system?
This is VIM 7.4.552 MS-Windows 64-bit GUI version with OLE support compiled by veegee@veegee-win8, running on Windows 7 Professional x64

Please provide any additional information below.

I've used echom in my diffexpr, and the issue appears to be that two different vim processes have picked the same value for v:fname_out.

For example, a successful process shows:
!C:\\program~1\\GnuWin32\\bin\\diff.exe -a C:\Users\paulh\AppData\Local\Temp\VIoD3A5.tmp C:\Users\paulh\AppData\Local\Temp\VInD3A6.tmp C:\Users\paulh\AppData\Local\Temp\VIdD3B5.tmp

and the failed attempt from the same batch shows
!C:\\program~1\\GnuWin32\\bin\\diff.exe -a C:\Users\paulh\AppData\Local\Temp\VIoD3B3.tmp C:\Users\paulh\AppData\Local\Temp\VInD3B4.tmp C:\Users\paulh\AppData\Local\Temp\VIdD3B5.tmp

So it looks like the filename is merely VI[ond]time.tmp but due to minor startup time differences, the output file name for two processes was generated at the same time, leading to the same output file.

Using :diffupdate in the failed gvimdiff instance will successfully generate the diff

--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- You received this message because you are subscribed to the Google Groups "vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui