Subject: patch output missing (b17.0, NT3.51, patch-2.1)
From: [email-masked] (James Dumser)

16 Dec 1996 15:28:05 -0800
Sender: [email-masked]
Approved: [email-masked]
Distribution: cygnus
Message-ID: <[email-masked]>
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Original-To: [email-masked] (Eero Raun)
Original-Cc: [email-masked]
In-Reply-To: <[email-masked]> from "Eero Raun" at Dec 16, 96 05:31:09 pm
X-Mailer: ELM [version 2.4 PL23]
Content-Length: 1345      
Original-Sender: [email-masked]

On Mon, 16 Dec 1996 17:31:09 +0200, Eero Raun <[email-masked]> wrote:
>You are probably using patch on some other drive than c:?
>Patch prepares the new file in /tmp and tries to rename it
>to the active directory.  Rename fails if the source and
>destination are on different filesystems.

If this is the case, then there is a bug in cygwin32's rename. patch
knows rename will fail if they are on different "filesystems" (drives)
and copies the output file if that happens. While I didn't try to track
down what cygwin32's rename does incorrectly (wrong return codes?), I
did verify it was the problem by using the rename.c supplied with
patch-2.1 instead. Doing so fixes the problem on my system -- output
files are now created.

>                                           You shouldn't
>mount /tmp, just have one in the root of every physical drive.

Sounds like you're using a non-cygwin32 implementation -- drive letters
don't exist in cygwin32. If I run patch from /apps/test (E:\ is mounted as
/apps), how is patch supposed to figure out it wants put its temporary
files in E:\tmp (/apps/tmp) instead of /tmp? Even if it could, why would
the Unix-derived GNU patch program attempt to do so? If it did, you
would have to have a tmp directory at the root of each filesystem in
Unix as well.

-- 
James Dumser    972-462-5335 [email-masked]
-
For help on using this list, send a message to
"[email-masked]" with one line of text: "help".