Microsoft's stdlib.h defines the following: #ifndef _MAC #define _MAX_PATH 260 /* max. length of full pathname */ #define _MAX_DRIVE 3 /* max. length of drive component */ #define _MAX_DIR 256 /* max. length of path component */ #define _MAX_FNAME 256 /* max. length of file name component */ #define _MAX_EXT 256 /* max. length of extension component */
In windef.h, they also define MAX_PATH to be 260. (This is include files that came with VC++ 6.0). Martin ----- Original Message ----- From: "Paul Kinnucan" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Tuesday, October 23, 2001 6:58 AM Subject: Re: jde.el and tramp > > Can anyone help with the question raised in the following > thread? > > Paul > > Jose M Vidal writes: > > > > Yup, 100 is a hack that works for me. I don't know what the actual > > maximums are. > > > > On the other hand, we just need to pick a number bigger than the most > > unreasonably long file name but smaller than infinity. Hmmmm. What is > > 1024? > > > > Sorry, > > Jose > > > > > > On Mon, 22 Oct 2001, [EMAIL PROTECTED] wrote: > > > > > Jose M Vidal writes: > > > > > > > > jde 1.17 will not work with tramp because of the way it keeps > > > > trying to go up the directory hierarchy assuming ange-ftp > > > > usage. It would get into an infinite loop. I fixed this by simply > > > > constraining the length of the directory to 100 characters. I > > > > think this makes the code much > > > > > > Hi Jose, > > > > > > Why did you choose 100 characters? How do you know that there won't > > > be a valid path somewhere that is more than 100 characters. > > > I'm very leery of hacks like this based on someone's estimate > > > of what is a "reasonable" maximum for some value. I'd rather have > > > the maximum be greater than the maximum of the maximum paths > > > supported by Windows and Unix. Is there such a maximum? I vaguely > > > recall reading somewhere that the limit for Windows paths is > > > 256 characters. If Unix and Windows have constraints on path sizes, > > > I'd be much more comfortable adopting this hack. > > > > > > - Paul > > > > > > > more robust. Here is the changed function (from jde.el): > > > > > > > > > > > > (defun jde-find-project-file (dir) > > > > "Finds the next project file upwards in the directory tree > > > > from DIR. Returns nil if it cannot find a project file in DIR > > > > or an ascendant directory." > > > > (let ((file (find jde-project-file-name > > > > (directory-files dir) :test 'string=))) > > > > (if file > > > > (expand-file-name file dir) > > > > (if (< (length dir) 100) > > > > (if (not (jde-root-dir-p dir)) > > > > (jde-find-project-file (concat dir "../"))))))) > > > > > > > > Cheer, and thanks for a *great* product, > > > > Jose > > > > > > > > -- > > > > Jose M. Vidal <[EMAIL PROTECTED]> http://jmvidal.cse.sc.edu > > > > University of South Carolina http://www.multiagent.com > > > > > > > > -- > > Jose M. Vidal <[EMAIL PROTECTED]> http://jmvidal.cse.sc.edu > > University of South Carolina http://www.multiagent.com > > > >