From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Chetan Pandya Newsgroups: gmane.emacs.devel Subject: Re: error in server-running-p on M$ Date: Tue, 9 Dec 2008 23:05:45 -0800 (PST) Message-ID: <649677.20897.qm@web83208.mail.mud.yahoo.com> References: Reply-To: pandyacus@sbcglobal.net NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1228892809 24328 80.91.229.12 (10 Dec 2008 07:06:49 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 10 Dec 2008 07:06:49 +0000 (UTC) Cc: emacs-devel@gnu.org To: Juanma Barranquero , Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Dec 10 08:07:54 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1LAJAj-0006oo-2H for ged-emacs-devel@m.gmane.org; Wed, 10 Dec 2008 08:07:49 +0100 Original-Received: from localhost ([127.0.0.1]:54722 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LAJ9X-0001NA-Rz for ged-emacs-devel@m.gmane.org; Wed, 10 Dec 2008 02:06:35 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1LAJ8o-0000wq-Os for emacs-devel@gnu.org; Wed, 10 Dec 2008 02:05:50 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1LAJ8m-0000wH-Ek for emacs-devel@gnu.org; Wed, 10 Dec 2008 02:05:48 -0500 Original-Received: from [199.232.76.173] (port=51340 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1LAJ8m-0000wA-64 for emacs-devel@gnu.org; Wed, 10 Dec 2008 02:05:48 -0500 Original-Received: from web83208.mail.mud.yahoo.com ([216.252.101.64]:21153) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1LAJ8l-0004bn-JX for emacs-devel@gnu.org; Wed, 10 Dec 2008 02:05:47 -0500 Original-Received: (qmail 20950 invoked by uid 60001); 10 Dec 2008 07:05:45 -0000 DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=sbcglobal.net; h=X-YMail-OSG:Received:X-Mailer:Date:From:Reply-To:Subject:To:Cc:In-Reply-To:MIME-Version:Content-Type:Message-ID; b=Ev47zkJJ/Eou8qu5A7Tte0lJ40N3UxbHsYGBN++fXoBkHmFFvWGmokaZkc5nqTSDTC3ulvBTjjK2ayWP9v2ansfmK4NLCIA5BqlFy1LCsYMSQw29BF30SnAEJ6fgwkLC6fr6s0xDN4YOHHCM0tIOsmL2QIub+ZwcSjShq8pHvyo=; X-YMail-OSG: rmVjqhoVM1ld7_5HhcQYCQ533xV2jFo7g03Vr.ln7X4GHDX84Fnr8A4loZ8qpz.YLhjKuKOAhRbSiUKCOHspHK0f8teNi9aUN9I3s2.u7NnPj_zKKshU5Ty8BzeVdwFyDa1I4ZzMpUC17wEKPpXLmeRvrC7BYlUMI4U7asujyOzVHw-- Original-Received: from [76.203.168.126] by web83208.mail.mud.yahoo.com via HTTP; Tue, 09 Dec 2008 23:05:45 PST X-Mailer: YahooMailWebService/0.7.218.2 In-Reply-To: X-detected-operating-system: by monty-python.gnu.org: FreeBSD 6.x (1) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:106743 Archived-At: I haven't seen earlier messages, but I am glad something is being done here. --- On Tue, 12/9/08, Stefan Monnier wrote: > Looks good, tho see comment below. > > > + (and (process-contact proc :server) > > + (eq (process-status proc) 'closed) > > + (ignore-errors (delete-file (process-get proc > :server-file)))) > > (server-log (format "Status changed to %s: > %s" (process-status > > It would be good to keep some comment about the fact that we don't know > for sure that the file is ours. It isn't too difficult to check that. Here is a version that checks that the file has the same pid. (let ((server-file (process-get proc :server-file))) (with-temp-buffer (set-buffer-multibyte nil) (insert-file server-file) (beginning-of-buffer) (end-of-line) (skip-chars-backward "0-9") (if (eq (read (current-buffer)) (emacs-pid)) (ignore-errors (delete-file server-file))))) > > + (if (not (server-running-p server-name)) > > + (ignore-errors (delete-file server-file)) > > + (setq server-mode nil) ;; already set by the minor > mode code > > + (error "Server %S is already running" > server-name)) > Finally, for the purpose of server-start, we don't > necessarily care if > there is a server named "foo" running on some > other machine, so maybe in > the server-use-tcp case, if the IP is not 127.0.0.1, > server-running-p > might return a special value like `remote' and > server-start might treat > it like "not running" (i.e. it will remove the > server-file). It is possible for the IP to be 127.0.0.1 and still the server be running on another system. Chetan