X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-3.3 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: sourceware.org Message-ID: <24501895.post@talk.nabble.com> Date: Wed, 15 Jul 2009 09:49:03 -0700 (PDT) From: Eric Blake To: cygwin AT cygwin DOT com Subject: Re: .#* lock files under X, for files I edit??? In-Reply-To: <24497846.post@talk.nabble.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit References: <23655794 DOT post AT talk DOT nabble DOT com> <4A157FF5 DOT 6030407 AT cornell DOT edu> <23656848 DOT post AT talk DOT nabble DOT com> <4A159713 DOT 50303 AT cornell DOT edu> <23671375 DOT post AT talk DOT nabble DOT com> <4A16BEA9 DOT 8020608 AT cornell DOT edu> <23672879 DOT post AT talk DOT nabble DOT com> <24494476 DOT post AT talk DOT nabble DOT com> <24495013 DOT post AT talk DOT nabble DOT com> <24497846 DOT post AT talk DOT nabble DOT com> X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: 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 > (set (make-local-variable 'purify_flag) t)))) Setting purify-flag wasn't working for me (emacs gave a message about an assertion failure). And my attempt to write an advice didn't seem to work any better (unless I didn't do it correctly): (defadvice lock-buffer (around clearcase-no-lock activate) "Under ClearCase, in Cygwin, do not create lock symlinks. Either format (old: Windows shortcuts; new: real symlinks with utf name) are bad for different reasons." (unless (file-accessible-directory-p (concat (buffer-file-name) "@@")) ad-do-it)) Rather, it seems that the REAL problem is that cygwin1.dll cannot recognize attempts to create symlinks on the clearcase MVFS file system. $ df -T . Filesystem Type 1K-blocks Used Available Use% Mounted on M:/u_fabt_eblake unknown 1024000 512000 512000 50% /project/fabt $ volinfo . Device Type : 7 Characteristics : 10 Volume Name : Serial Number : 36984713 Max Filenamelength : 255 Filesystemname : Flags : 3 FILE_CASE_SENSITIVE_SEARCH : TRUE FILE_CASE_PRESERVED_NAMES : TRUE FILE_UNICODE_ON_DISK : FALSE FILE_PERSISTENT_ACLS : FALSE FILE_FILE_COMPRESSION : FALSE FILE_VOLUME_QUOTAS : FALSE FILE_SUPPORTS_SPARSE_FILES : FALSE FILE_SUPPORTS_REPARSE_POINTS: FALSE FILE_SUPPORTS_REMOTE_STORAGE: FALSE FILE_VOLUME_IS_COMPRESSED : FALSE FILE_SUPPORTS_OBJECT_IDS : FALSE FILE_SUPPORTS_ENCRYPTION : FALSE FILE_NAMED_STREAMS : FALSE FILE_READ_ONLY_VOLUME : FALSE FILE_SEQUENTIAL_WRITE_ONCE : FALSE FILE_SUPPORTS_TRANSACTIONS : FALSE $ touch foo $ ln -s foo bar $ readlink bar || echo $? 1 $ cat bar !~foo $ file bar bar: data Maybe we should be trying to change cygwin to cause symlink() to fail with a proper errno on MVFS, and then revisit the emacs side of the equation to see how emacs handles failure to create a symlink when errno is ENOSYS (or whatever errno cygwin uses). Or maybe it is just a matter of detecting that if the file system does not support DOS attributes (which are essential in creating new-style symlinks), that an old-style symlink must be created on that filesystem. -- Eric Blake -- View this message in context: http://www.nabble.com/.-*-lock-files-under-X%2C-for-files-I-edit----tp23655794p24501895.html Sent from the Cygwin list mailing list archive at Nabble.com. -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple