On 6/16/2013 12:44 PM, Chris Morgan wrote: > Hi Wayne. > > > I think the difference may be due to where the app was started. It's > the same build with debug enabled and installed from the kicad testing > repository. The actual directories are odd though, they are off of a > backed up root install from another server and are symlinks that > aren't present in the directory. They are in the backed up directories > udev/devices/fd/ folder but they appear to be created as a product of > the app running I guess or else I'm missing something. > > Chris
Chris, When you run Pcbnew from the command line, do you see a bunch wxLog messages with system errors? There is some system error logging that can occur in the one of the private objects wxDir uses. I'm not sure a broken symlink will trip the system error in question. If you are seeing log messages, that may be why Pcbnew is hanging and not the bad symlinks. There is a known bug with debug builds on Linux that will cause an application to hang when dumping output to the stdout when using KiCad to launch the application. Wayne > > > > On Jun 16, 2013, at 11:25 AM, Wayne Stambaugh <stambau...@verizon.net> wrote: > >> On 6/15/2013 8:12 PM, Chris Morgan wrote: >>> Dick turned out to be correct, that was some good insight there. >>> >>> Attached strace to the process and sure enough it is traversing a >>> directory that has symlinks, several of which appear to be pointing back >>> to the same directory. So, the process is making progress but because of >>> the several symlink loops its taking a long long time to complete. >>> >>> It looks like if we used >>> http://docs.wxwidgets.org/trunk/dir_8h.html#aa45988fae9ce0d0c4f8312a6cf026232a25c09a8059a40281ca2d7919d84b4941 >>> instead >>> of wxDir then we would be able to disable symlink traversal. >>> >>> Chris >>> >>> >>> >>> >>> On Sat, Jun 15, 2013 at 5:46 PM, Chris Morgan <chmor...@gmail.com >>> <mailto:chmor...@gmail.com>> wrote: >>> >>> Ok. Ill see what I can come up with. Good idea on the recursive >>> symlink. Surprised wx wouldn't handle that situation. >>> >>> Ill try to figure it out this evening. >>> >>> Chris >> >> Chris, >> >> When you get time, please try changing: >> >> unsigned cnt = wxDir::GetAllFiles( GetLibraryPathList()[i], &tmp, wxT( >> "*.mod" ) ); >> >> to: >> >> unsigned cnt = wxDir::GetAllFiles( GetLibraryPathList()[i], &tmp, wxT( >> "*.mod" ), wxDIR_DEFAULT | wxDIR_NO_FOLLOW ); >> >> and see if that resolves the problem. It's seems odd to me that it works >> correctly when Pcbnew is run directly from the command line but fails when >> Pcbnew is launched from KiCad. Are you using a debug build? It may be >> possible that wxWidgets is trying log something to stdout and that is what >> is actually causing it hang. >> >> I wont be able to look at this until sometime tonight or tomorrow. I plan >> on enjoying the rest of Fathers Day with the family. Good catch and thanks >> for the help. >> >> Happy Father's Day to all of you fathers out there. >> >> Wayne >> >> >>> >>> >>> >>> On Jun 15, 2013, at 5:31 PM, Dick Hollenbeck <d...@softplc.com >>> <mailto:d...@softplc.com>> wrote: >>> >>> > No idea. This is new code. >>> > >>> > KISYSMOD env var is not used yet, so one option is to comment out >>> the entire block from >>> > 194 to 213. >>> > >>> > But I think Wayne would appreciate getting help nailing the >>> problem. You can try and log >>> > the execution with fprintf(). Using printf() likely won't work, >>> since the output as a >>> > child process is directed into parent process "kicad". >>> > >>> > So fprintf() is a good quick test. Write GetCount() at the top, >>> then each iteration and >>> > the path that you are going into. I think will be informative. >>> gdb is probably not up to >>> > that task. >>> > >>> > Then simply do bzr revert pcbnew/pcbnew.cpp when you are done. >>> > >>> > You might have a circular set of symlinks, who knows. the log >>> file you create will tell. >>> > >>> > >>> > >>> > >>> > >>> > >>> > _______________________________________________ >>> > Mailing list: https://launchpad.net/~kicad-developers >>> > Post to : kicad-developers@lists.launchpad.net >>> <mailto:kicad-developers@lists.launchpad.net> >>> > Unsubscribe : https://launchpad.net/~kicad-developers >>> > More help : https://help.launchpad.net/ListHelp >>> >>> >>> >>> >>> _______________________________________________ >>> Mailing list: https://launchpad.net/~kicad-developers >>> Post to : kicad-developers@lists.launchpad.net >>> Unsubscribe : https://launchpad.net/~kicad-developers >>> More help : https://help.launchpad.net/ListHelp >> >> >> _______________________________________________ >> Mailing list: https://launchpad.net/~kicad-developers >> Post to : kicad-developers@lists.launchpad.net >> Unsubscribe : https://launchpad.net/~kicad-developers >> More help : https://help.launchpad.net/ListHelp > _______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp