GNU bug report logs - #3542
23.0.94; File access via UNC path slow again under Windows

Previous Next

Packages: w32, emacs;

Reported by: Mathias Dahl <mathias.dahl <at> gmail.com>

Date: Fri, 12 Jun 2009 09:45:04 UTC

Severity: normal

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 3542 in the body.
You can then email your comments to 3542 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#3542; Package emacs. (Fri, 12 Jun 2009 09:45:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Mathias Dahl <mathias.dahl <at> gmail.com>:
New bug report received and forwarded. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. (Fri, 12 Jun 2009 09:45:05 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Mathias Dahl <mathias.dahl <at> gmail.com>
To: emacs-pretest-bug <at> gnu.org
Subject: 23.0.94; File access via UNC path slow again under Windows
Date: Fri, 12 Jun 2009 11:38:59 +0200
Please write in English if possible, because the Emacs maintainers
usually do not have translators to read other languages for them.

Your bug report will be posted to the emacs-pretest-bug <at> gnu.org mailing list.

Please describe exactly what actions triggered the bug
and the precise symptoms of the bug:

1. Start emacs with -Q
2. Open a directory or file by entering its UNC path (e.g. C-x C-f
//server/share/folder/file.txt RET).
3. Notice it is very slow to get it to open.

I reported this before Emacs 21 or 22 was released, and it was fixed
then. In the latest two pretests the problem is now back. Working with
UNC paths is now almost unusable - I have to wait several seconds to
open a file or get a file listing in Dired.

Thanks!

/Mathias

If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
    `bt full' and `xbacktrace'.
If you would like to further debug the crash, please read the file
e:/dat/dl/emacs-23.0.94/etc/DEBUG for instructions.


In GNU Emacs 23.0.94.1 (i386-mingw-nt5.1.2600)
 of 2009-05-24 on SOFT-MJASON
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (3.4)'

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: SVE
  value of $XMODIFIERS: nil
  locale-coding-system: cp1252
  default-enable-multibyte-characters: t

Major mode: Dired by name

Minor modes in effect:
  tooltip-mode: t
  tool-bar-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  global-auto-composition-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
C-x C-f / / g b g f s 1 / a r <tab> 7 5 <tab> d o c
m a n <return> <return> <return> <down> <down> <down>
<return> <help-echo> M-x v e r s <tab> <return> <help-echo>
<help-echo> <help-echo> <help-echo> <menu-bar> <help-menu>
<send-emacs-bug-report>

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
GNU Emacs 23.0.94.1 (i386-mingw-nt5.1.2600) of 2009-05-24 on SOFT-MJASON



bug reassigned from package `emacs' to `emacs,w32'. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> emacsbugs.donarmstrong.com. (Wed, 17 Jun 2009 22:20:08 GMT) Full text and rfc822 format available.

Reply sent to Eli Zaretskii <eliz <at> gnu.org>:
You have taken responsibility. (Thu, 09 Jul 2009 19:00:05 GMT) Full text and rfc822 format available.

Notification sent to Mathias Dahl <mathias.dahl <at> gmail.com>:
bug acknowledged by developer. (Thu, 09 Jul 2009 19:00:06 GMT) Full text and rfc822 format available.

Message #12 received at 3542-done <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: 3542-done <at> debbugs.gnu.org
Subject: Re: bug #3542 (23.0.94; File access via UNC path slow again under Windows)
Date: Thu, 09 Jul 2009 21:50:19 +0300
> From: Mathias Dahl <mathias.dahl <at> gmail.com>
> Date: Sun, 5 Jul 2009 23:01:53 +0200
> 
> I understand that the release of 23.1 is not far away and I am a bit
> worried that this bug won't be solved before that. Is there anything I
> can do to help? I use a lot of UNC file names / paths in my work and
> the current slowness is very annoying (both opening files and listing
> them in Dired). As this was a problem in the past too it isn't
> unreasonable to believe that the bug has reappeared by mistake when
> fixing some other thing (could it be related to TRAMP?).
> 
> I am willing to go bug hunting as long as it's in elisp-land and would
> like to get some hints on where to start digging.
> 
> For details see:
> http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3542
> 
> Thanks!

Fixed with this patch:

2009-07-09  Eli Zaretskii  <eliz <at> gnu.org>

	* w32.c (stat): Treat UNC file names as residing on remote
	drives.  (Bug#3542)

--- src/w32.c.orig	2009-06-21 10:38:18.000000000 +0300
+++ src/w32.c	2009-07-09 16:31:51.250000000 +0300
@@ -3154,11 +3154,13 @@
 	}
     }
 
-  /* GetDriveType needs the root directory of NAME's drive.  */
-  if (!(strlen (name) >= 2 && IS_DEVICE_SEP (name[1])))
-    devtype = GetDriveType (NULL); /* use root of current diectory */
+  if (IS_DIRECTORY_SEP (name[0]) && IS_DIRECTORY_SEP (name[1]))
+    devtype = DRIVE_REMOTE;	   /* assume UNC name is remote */
+  else if (!(strlen (name) >= 2 && IS_DEVICE_SEP (name[1])))
+    devtype = GetDriveType (NULL); /* use root of current drive */
   else
     {
+      /* GetDriveType needs the root directory of NAME's drive.  */
       strncpy (drive_root, name, 3);
       drive_root[3] = '\0';
       devtype = GetDriveType (drive_root);



bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> emacsbugs.donarmstrong.com. (Fri, 07 Aug 2009 14:24:10 GMT) Full text and rfc822 format available.

This bug report was last modified 15 years and 325 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.