Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

bug#12621: Win32 (Ver:24.2); Crashes when files from shared folders are accessed

13 views
Skip to first unread message

Arvind Devarajan

unread,
Oct 10, 2012, 11:32:54 PM10/10/12
to 12...@debbugs.gnu.org
{Precondition}
PC-Local: The PC in which emacs is running.
PC-Remote: The PC in which a file is created in a folder, that is shared.
PC-Local has a shortcut/mapping to the shared folder in PC-Remote. It
can hence access the file in PC-Remote via this shortcut/mapped drive.

{Action}
Start Emacs in PC-Local, and open the file in PC-Remote (either by C-x f
or just drag-and-drop)

{Observation}
Emacs crashes.

{Expected}
No such crash, and the file is editable/readable depending on the
permissions on the file.

{Emacs details}
In GNU Emacs 24.2.1 (i386-mingw-nt5.1.2600)
of 2012-08-29 on MARVIN
Windowing system distributor `Microsoft Corp.', version 5.1.2600
Configured using:
`configure --with-gcc (4.6) --cflags
-ID:/devel/emacs/libs/libXpm-3.5.8/include
-ID:/devel/emacs/libs/libXpm-3.5.8/src
-ID:/devel/emacs/libs/libpng-dev_1.4.3-1/include
-ID:/devel/emacs/libs/zlib-dev_1.2.5-2/include
-ID:/devel/emacs/libs/giflib-4.1.4-1/include
-ID:/devel/emacs/libs/jpeg-6b-4/include
-ID:/devel/emacs/libs/tiff-3.8.2-1/include
-ID:/devel/emacs/libs/gnutls-3.0.9/include'

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: ENU
  value of $XMODIFIERS: nil
  locale-coding-system: cp1252
  default enable-multibyte-characters: t

Major mode: Org

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

Recent input:
M-x r e p o r t - <tab> <return>

Recent messages:
`epa-file' already enabled
Loading d:/vbox/shared/.emacs.d/custom.el (source)...
Loading delsel...done
Loading paren...done
Loading d:/vbox/shared/.emacs.d/custom.el (source)...done
Loading d:/vbox/shared/.emacs.d/extensions/org-outlook.el (source)...done
Loading d:/vbox/shared/.emacs.d/init.el (source)...done
For information about GNU Emacs and the GNU system, type C-h C-a.
OVERVIEW
CONTENTS...done

Load-path shadows:
None found.

Features:
(shadow sort gnus-util mail-extr emacsbug message rfc822 mml mml-sec
mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils
mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr
mail-utils org-wl org-w3m org-vm org-rmail org-mhe org-mew org-irc
org-jsinfo org-infojs org-html org-exp ob-exp org-exp-blocks find-func
org-agenda org-info org-gnus org-docview org-bibtex bibtex org-bbdb
org-outlook org-protocol org byte-opt warnings bytecomp byte-compile
cconv macroexp advice help-fns advice-preload ob-emacs-lisp ob-tangle
ob-ref ob-lob ob-table org-footnote org-src ob-comint ob-keys ob ob-eval
org-pcomplete pcomplete comint ansi-color ring org-list org-faces
org-compat org-entities org-macs noutline outline easy-mmode format-spec
regexp-opt cal-menu easymenu calendar cal-loaddefs autoinsert
org-install server paren delsel cus-start cus-load aes epa-file epa
derived epg epg-config cl time-date tooltip ediff-hook vc-hooks
lisp-float-type mwheel dos-w32 disp-table ls-lisp w32-win w32-vars
tool-bar dnd fontset image fringe lisp-mode register page menu-bar
rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax
facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak
czech european ethiopic indian cyrillic chinese case-table epa-hook
jka-cmpr-hook help simple abbrev minibuffer loaddefs button faces
cus-face files text-properties overlay sha1 md5 base64 format env
code-pages mule custom widget hashtable-print-readable backquote
make-network-process multi-tty emacs)

Eli Zaretskii

unread,
Oct 15, 2012, 1:44:13 PM10/15/12
to Arvind Devarajan, 12...@debbugs.gnu.org
[Please keep the bug address on the CC list.]

> From: Arvind Devarajan <arvind.d...@outlook.com>
> Date: Mon, 15 Oct 2012 09:12:57 +0530
>
> I did some more experiments this weekend, and I noticed the following:
> 1. This does not depend on my customizations
> 2. Interestingly, and I noticed this after your reply, that you were right in not able to reproduce this (blame me for this). I am surprised that it happens only when I access a shared folder that actually exists on a Linux system - it is shared via Samba.

This is important info, thanks.

> 3. When emacs crashed, I clicked the 'more info' link that windows crash-handler shows. It gave this info: ModName: rpcrt4.dll, ModVer: 5.1.2600.6022 (only relavant info shown).
>
> Since I am more a Linux user, and have no experience on setting up a windows debug environment, I am not in a position to give you call stack. I shall attempt this over this week if you say the above info is not sufficient.

Unfortunately, it isn't sufficient.

First, please right-click on "My Computer", select "Manage", then
expand "Event Viewer" in the left pane (by clicking on the "+" sign to
its left), then click "Application". Now find in the right pane the
log entry for the crash, double-click on that line, and click the
copy to clipboard button on the right near the top, below the two
buttons with arrows. Finally, paste from the clipboard to your mailer
and post everything here. This might at least give us the address
where Emacs crashed.

However, I think that this, too, will be insufficient, because the
address will be within rpcrt4.dll, which is not part of Emacs. So
please do install a Windows port of GDB from here:

http://sourceforge.net/projects/mingw/files/MinGW/Extension/gdb/GDB-7.5/gdb-7.5-1-mingw32-bin.tar.lzma/download

and then run it under GDB. When it crashes, please post here the
backtrace you get.

It is advisable to do this with the development snapshot, available
from here:

http://alpha.gnu.org/gnu/emacs/windows/

This is because snapshot binaries are not stripped of the debug info,
so you will be able to produce a more meaningful information with GDB.

TIA



Eli Zaretskii

unread,
Oct 15, 2012, 3:55:51 PM10/15/12
to arvind.d...@outlook.com, 12...@debbugs.gnu.org
Please also try setting w32-get-true-file-attributes to t before you
type "C-x C-f" to open a remote file. Does that crash as well?



Eli Zaretskii

unread,
Oct 16, 2012, 1:32:43 PM10/16/12
to Arvind Devarajan, 12...@debbugs.gnu.org
> From: Arvind Devarajan <arvind.d...@outlook.com>
> Date: Tue, 16 Oct 2012 19:09:42 +0530
> CC: "12...@debbugs.gnu.org" <12...@debbugs.gnu.org>
>
> 1) Problem does not occur in the development snapshot

That's good news, thanks.

> 2) I anyway collected the backtrace via MinGW gdb. I can just take the development snapshot, but I think it might be interesting for you to know the reason:

This explains quite a lot. I still don't fully understand why the
system call crashed so deeply inside the RPC DLL, but maybe now it's
not as important to understand that, because the next Emacs release
will probably work OK, since it's based on the code in the development
snapshot.

One thing to try in v24.2 is set w32-get-true-file-attributes to a nil
value before opening the file. This should bypass the call to
LookupAccountSid, the API whose call crashed.

For the record, what do you see if you type "C-x d" to invoke Dired on
the directory whose files crash Emacs 24.2? I'm mainly interested in
the owner and the group shown by Dired for those files. Please try
this in both versions of Emacs (v24.2 is likely to crash, but I hope
the development snapshot will not; if it does, please try to produce a
backtrace form it).

Thanks.



0 new messages