Thanks for testing this Chris. I'll commit the patch some time today. On 6/15/2016 8:14 PM, Chris Pavlina wrote: > Tested on Linux with NFS and SSHFS mounts, no issue here either. > > On Wed, Jun 15, 2016 at 09:18:21AM -0400, Wayne Stambaugh wrote: >> Thanks Simon. I'll commit the patch as soon as I get a chance to test >> it on Linux. >> >> On 6/14/2016 5:12 PM, Simon Wells wrote: >>> Also tested the patch here, and works fine >>> >>> On Wed, Jun 15, 2016 at 8:49 AM, Wayne Stambaugh <[email protected]> >>> wrote: >>>> Apparently so. I just add a dummy text file to the remote project >>>> folder and the text file showed up in the kicad file window. I deleted >>>> the file and it disappeared from the kicad file window. Who knew? >>>> >>>> On 6/14/2016 4:47 PM, Simon Wells wrote: >>>>> Does windows even support filesystemwatcher events on network drives? >>>>> as would that not make for quite heavy loads on the network? >>>>> >>>>> On Wed, Jun 15, 2016 at 8:38 AM, Wayne Stambaugh <[email protected]> >>>>> wrote: >>>>>> On 6/14/2016 4:34 PM, Simon Wells wrote: >>>>>>> It was when opening pcbnew, in each project. >>>>>>> >>>>>>> I will test your patch locally as soon as my updated build is done and >>>>>>> see whether it causes any issues. Just thought i would test without >>>>>>> first to see if it would be better for it to be ifdef'd out on osx. >>>>>>> >>>>>>> I haven't actually looked into the code but based on what you have >>>>>>> said i assume a fresh filesystemwacther is being created for each >>>>>>> project open? Would it not be better to just create once on invocation >>>>>>> and then use RemoveAll()/RemoveTree() on project switch? >>>>>> >>>>>> That's what I changed. I got rid of the deleting a creating a new >>>>>> wxFileSystemWatcher on every project change. I just call RemoveAll() on >>>>>> every project switch(). I'll check to see if I need to call >>>>>> RemoveTree(). I would have thought RemoveAll() would include the tree >>>>>> but I could be wrong. It's odd that it only happens when switching from >>>>>> a remote project to a local project. >>>>>> >>>>>>> >>>>>>> Simon >>>>>>> >>>>>>> On Wed, Jun 15, 2016 at 8:28 AM, Wayne Stambaugh <[email protected]> >>>>>>> wrote: >>>>>>>> Hey Simon, >>>>>>>> >>>>>>>> I was seeing the crash when switching back to a local project using the >>>>>>>> MRU list as well before my patch. After my patch, the problem went >>>>>>>> away. I didn't test opening a new local project but I suspect the >>>>>>>> crash >>>>>>>> would occur since the same code is called. I'm not sure how the GAL >>>>>>>> changes would effect kicad since it doesn't contain any GAL code and >>>>>>>> the >>>>>>>> windows the require GAL are not created until you launch them from >>>>>>>> KiCad >>>>>>>> unless something has changed since the last time I looked. Thanks for >>>>>>>> testing this. I'm going to try to allocate m_watcher on the stack and >>>>>>>> see if destroying the wxFileSystemWatcher object at a different time >>>>>>>> makes a difference. >>>>>>>> >>>>>>>> Wayne >>>>>>>> >>>>>>>> On 6/14/2016 4:21 PM, Simon Wells wrote: >>>>>>>>> Hi Wayne, >>>>>>>>> >>>>>>>>> I have tested this on OSX with a mounted network drive, i think that >>>>>>>>> is the most equivalent to a mapped network drive on windows. And do >>>>>>>>> not see a crash, But i switched back to the local project using the >>>>>>>>> recent project list. Does it occur if you use that list as well or >>>>>>>>> only if you do a fresh open project? >>>>>>>>> >>>>>>>>> I am running 6923 currently, Will update as i had a different crash >>>>>>>>> occur but believe its due to the opengl changes which have been fixed >>>>>>>>> in 6931/2 >>>>>>>>> >>>>>>>>> Simon >>>>>>>>> >>>>>>>>> On Wed, Jun 15, 2016 at 2:39 AM, Wayne Stambaugh >>>>>>>>> <[email protected]> wrote: >>>>>>>>>> I found a nasty wxFileSystemWatcher bug on windows (and possibly >>>>>>>>>> other >>>>>>>>>> platforms) when switching between a project on a mapped network >>>>>>>>>> drive to >>>>>>>>>> a project on a local drive. This crashes kicad every time. It >>>>>>>>>> doesn't >>>>>>>>>> crash when switching from a local drive to a mapped network drive. I >>>>>>>>>> fixed the project switching crash by not deleting and creating a new >>>>>>>>>> m_watcher object every time a project is loaded. However, kicad >>>>>>>>>> still >>>>>>>>>> segfaults when running in gdb in the tree view window dtor when the >>>>>>>>>> m_watcher object is deleted. I tried disconnecting and unlinking the >>>>>>>>>> event handler with no luck. The only thing I didn't try was >>>>>>>>>> allocating >>>>>>>>>> m_watcher on the stack rather than the heap which I would prefer not >>>>>>>>>> to >>>>>>>>>> do. Before I commit this patch, could I get one of our OSX devs and >>>>>>>>>> Linux devs to test this patch to make sure it doesn't break anything >>>>>>>>>> on >>>>>>>>>> these platforms. If you could test the current code by switching >>>>>>>>>> between remote and local projects to see if it crashes, that would >>>>>>>>>> useful information to have as well. >>>>>>>>>> >>>>>>>>>> Thanks, >>>>>>>>>> >>>>>>>>>> Wayne >>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> Mailing list: https://launchpad.net/~kicad-developers >>>>>>>>>> Post to : [email protected] >>>>>>>>>> Unsubscribe : https://launchpad.net/~kicad-developers >>>>>>>>>> More help : https://help.launchpad.net/ListHelp >>>>>>>>>> >> >> _______________________________________________ >> Mailing list: https://launchpad.net/~kicad-developers >> Post to : [email protected] >> Unsubscribe : https://launchpad.net/~kicad-developers >> More help : https://help.launchpad.net/ListHelp
_______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : [email protected] Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp

