X-Spam-Check-By: sourceware.org Message-ID: <029001c62ebf$032b7a10$0201a8c0@homelarrie> From: "Larrie Carr" To: "Larrie Carr" , "John W. Eaton" Cc: References: <017b01c62daf$7696d140$0201a8c0 AT homelarrie> <17387 DOT 42303 DOT 91508 DOT 260685 AT segfault DOT lan> <01a501c62dba$18fc1b20$0201a8c0 AT homelarrie> Subject: [octave ] LOADPATH recurses only one level of subdirectories (on network drives) Date: Fri, 10 Feb 2006 19:55:35 -0800 MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=response Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com John W. Eaton wrote > Probably the code you are looking for is the function do_subdir in > liboctave/kpse.cc. This file contains a stripped-down version of the > kpathsearch library. Most modifications were to remove TeX-specific > stuff and to convert it to use std::string instead of plain C strings > which historically leaked memory. In any case, that function may use > an optimization to decide when to check for subdirectories. The > optimization looks at the link count of the current directory. If it > is 2, then the assumption is that the current directory does not > contain any subdirectories. That seems to work fine for Unixy > systems. Does that assumption not hold for Cygwin? If so, then I > think the fix is fairly simple as there is also Windows-specific code > in that function. Whether the optimization is performed depends on > what is #defined at compile time, so you'll probably have to do some > checking on a Cygwin system to see what is really going on. Well, after some more experimenting, the problem appears related to using the recursive search feature of LOADPATH on a *network* drive. That is, If the path is located within a physically attached hard drive, octave operates as expected. For instance, /cygdrive/c/test// works all the way down to /cygdrive/c/test/a/b/c/d/e/ If the path is located on a network drive created using windows "Map Network Drive" menu option under "My Computer", octave will only recurse down 1 level of subdirectory. For instance "/usr/share/octave/site/m// does not work. And if I use a cygwin windows mapping instead "/cygdrive/x/cygwin/usr/share/octave/site/m//, it still does not work correctly and recurses down only one level. In my installation, the entire cygwin root is located on a network drive (and no one else uses it). Works just fine for everything else. John, it you got any other hints, I would appreciate it as I'm diving in. Larrie. -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/