From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Stefan-W. Hahn" Newsgroups: gmane.emacs.devel Subject: Re: [Emacs-diffs] trunk r116230: Fix bug #16558 with w32-shell-execute on remote file names. Date: Sun, 2 Feb 2014 08:45:20 +0100 Organization: -no organization- Message-ID: <20140202074520.GI26985@pille.home> References: <83ob2q4nbv.fsf@gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 X-Trace: ger.gmane.org 1391327148 32394 80.91.229.3 (2 Feb 2014 07:45:48 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 2 Feb 2014 07:45:48 +0000 (UTC) Cc: Eli Zaretskii , emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sun Feb 02 08:45:54 2014 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1W9rkY-0001se-1E for ged-emacs-devel@m.gmane.org; Sun, 02 Feb 2014 08:45:54 +0100 Original-Received: from localhost ([::1]:40588 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W9rkX-0004d7-GZ for ged-emacs-devel@m.gmane.org; Sun, 02 Feb 2014 02:45:53 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:44533) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W9rkN-0004cr-19 for emacs-devel@gnu.org; Sun, 02 Feb 2014 02:45:50 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1W9rkF-0004rP-Ka for emacs-devel@gnu.org; Sun, 02 Feb 2014 02:45:42 -0500 Original-Received: from moutng.kundenserver.de ([212.227.17.9]:57432) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W9rk7-0004nZ-I8; Sun, 02 Feb 2014 02:45:27 -0500 Original-Received: from pille.home (port-92-205-65-91.dynamic.qsc.de [92.205.65.91]) by mrelayeu.kundenserver.de (node=mreue006) with ESMTP (Nemesis) id 0MSCWE-1Vhims1H0k-00TGgV; Sun, 02 Feb 2014 08:45:24 +0100 Original-Received: from pille.home (localhost [127.0.0.1]) by pille.home (8.14.4/8.14.4/Debian-4) with ESMTP id s127jM0g016485 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Sun, 2 Feb 2014 08:45:22 +0100 Original-Received: (from hs@localhost) by pille.home (8.14.4/8.14.4/Submit) id s127jL95016484; Sun, 2 Feb 2014 08:45:21 +0100 X-Authentication-Warning: pille.home: hs set sender to info@s-hahn.de using -f Content-Disposition: inline In-Reply-To: X-Mailer: Mutt http://www.mutt.org/ X-Editor: GNU Emacs http://www.gnu.org/ X-Accept-Language: de en X-Location: Europe, Germany, Wolfenbuettel X-GPG-Public-Key: gpg --keyserver keys.gnupg.net --recv-keys E4FCD563 X-GPG-Fingerprint: 0xE4FCD563 / EF09 97BB 3731 7DC7 25BA 5C39 185C F986 E4FC D563 User-Agent: Mutt/1.5.21 (2010-09-15) X-Provags-ID: V02:K0:6bV40hQnwpNd2ZYp4ALe9In1afwhPp1lA9k1QIjSONb Z7XMO9trW/hUDd25ThVXo5xfXiboK+9Zw6ZAM9wgF2xRLkmlQ0 wflWc1mOZNZhKodcBaOnRdzZQfFKDWdiQWH/b4kwqTTP+bObqm L4eqy92BQcpO9rmWsN4I8akMl8ATikLIeo9hUVyK1dpVuT/dcz ieBa39/rGnZXoMiBdtQ8SMcpPQ6OCE+QrON8v9zjySrI+cY2CS z8juK1gPiyY8k0BPgnLS87Ynf1MjEG8OpymWFU8ISy5zoCWYux U6EGun+IfI+JGxI9OkrpSc6EDP7Y1BFRTTLurAr7YRmYrQM6QO owTGG0e4ZHLNkQgNwu6M= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.4.x-2.6.x [generic] X-Received-From: 212.227.17.9 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:169341 Archived-At: Mail von Stefan Monnier, Sat, 01 Feb 2014 at 19:44:54 -0500: Good Morning, > >> > + * w32fns.c (Fw32_shell_execute): Don't call file-exists-p for > >> > + DOCUMENT that is a "remote" file name, i.e. a file-handler exists > >> > + for it. (Bug#16558) > >> That means we don't call Ffile_exists_p for .gz files :-( > >> It seems arbitrary. > > What do you suggest? bind handlers-alist to nil? > > Could you describe the problem we're trying to solve? because I sent the bug report, I try to summarize. Because I'm not familar with the internals of emacs, I just use it, please throw away my thoughts if they are nonsens. I think the main problems are: - to define what Fw32_shell_execute has to do before calling Shellexecute and what not. - to distinct between real files and virtual objects. There are handlers for both types defined by file-name-handler-alist and if ShellExecute is called then windows itself also has handlers defined be registry (HKEY_CLASSES_ROOT\CLSID\{object_clsid}\Shell\verb). So, if calling a file-handler function inside of Fw32_shell_execute then file-name-handler-alist transforms the calls (this was my problem with the call to file-exists-p on an "https://url" because this was translated to a file download, which is not intended, because I wanted just to start the browser and in my case the url was in RESTAPI syntax too). Afterwards windows interprets the filename (or objectname) by checking the registry. So it knows how to handle things (i.e. virtual objects: http://url, outlook:00000000EFABE93C5C7E4947B0D4C936C001637FE4782400 (calls outlook), etc.). For me, if calling w32-shell-execute, the intention is to give the control of what to do with the object to windows. Kind regards, Stefan -- Stefan-W. Hahn It is easy to make things. It is hard to make things simple.