From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1551 invoked by alias); 21 Sep 2012 18:59:51 -0000 Received: (qmail 1221 invoked by uid 22791); 21 Sep 2012 18:59:06 -0000 X-SWARE-Spam-Status: No, hits=-4.2 required=5.0 tests=AWL,BAYES_00,KHOP_THREADED,RCVD_IN_DNSWL_NONE,RCVD_IN_HOSTKARMA_NO,SPF_SOFTFAIL X-Spam-Check-By: sourceware.org Received: from mtaout21.012.net.il (HELO mtaout21.012.net.il) (80.179.55.169) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 21 Sep 2012 18:58:51 +0000 Received: from conversion-daemon.a-mtaout21.012.net.il by a-mtaout21.012.net.il (HyperSendmail v2007.08) id <0MAP00900RCQVK00@a-mtaout21.012.net.il> for gdb-patches@sourceware.org; Fri, 21 Sep 2012 21:58:49 +0300 (IDT) Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout21.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0MAP009BIRE1TV40@a-mtaout21.012.net.il>; Fri, 21 Sep 2012 21:58:49 +0300 (IDT) Date: Fri, 21 Sep 2012 18:59:00 -0000 From: Eli Zaretskii Subject: Re: [PATCH 1/2]: Refactor relocate_path to also check if the relocated file/directory exists In-reply-to: <20120921184623.GA12696@host2.jankratochvil.net> To: Jan Kratochvil Cc: khooyp@cs.umd.edu, gdb-patches@sourceware.org Reply-to: Eli Zaretskii Message-id: <83vcf7w6c8.fsf@gnu.org> References: <21ACC598-F6B4-4117-BA7B-B316414DE9E3@cs.umd.edu> <20120919130040.GA20442@host2.jankratochvil.net> <20120921182637.GA8747@host2.jankratochvil.net> <83y5k3w7es.fsf@gnu.org> <20120921184623.GA12696@host2.jankratochvil.net> X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2012-09/txt/msg00451.txt.bz2 > Date: Fri, 21 Sep 2012 20:46:23 +0200 > From: Jan Kratochvil > Cc: khooyp@cs.umd.edu, gdb-patches@sourceware.org > > On Fri, 21 Sep 2012 20:35:39 +0200, Eli Zaretskii wrote: > > > Date: Fri, 21 Sep 2012 20:26:37 +0200 > > > From: Jan Kratochvil > > > Cc: GDB Patches > > > > > > if (stat (path, &s) != 0 || (isdir && !S_ISDIR (s.st_mode)) > > > || (!isdir && S_ISDIR (s.st_mode))) > > > > a.k.a. > > > > if (stat (path, &s) != 0 || isdir != S_ISDIR (s.st_mode)) > > It is not POSIX compliant: > The macro evaluates to a non-zero value if the test is true Then if (stat (path, &s) != 0 || (isdir != 0) != (S_ISDIR (s.st_mode) != 0)) will do.