summaryrefslogtreecommitdiff
path: root/dev-lang/nasm/files/nasm-2.14-default-path-BR-3392529.patch
blob: 57cbb741505a1ae6663b7348953d20c2eaca8c95 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
https://bugzilla.nasm.us/show_bug.cgi?id=3392529
https://bugs.gentoo.org/670944

From 7b6371b9d35705ee3800082ca245f8dd289bb216 Mon Sep 17 00:00:00 2001
From: "H. Peter Anvin (Intel)" <hpa@zytor.com>
Date: Tue, 20 Nov 2018 10:56:57 -0800
Subject: [PATCH] BR 3392529: if the default output name is the same as input
 -> nasm.out

If no output filename is specified, then a default filename is used
based on the input filename. If that ends up the *same* as the input
filename, change the output filename to "nasm.out".

Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
---
 asm/nasm.c | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

--- a/asm/nasm.c
+++ b/asm/nasm.c
@@ -514,9 +514,14 @@ int main(int argc, char **argv)
      * is a preprocess mode, we're perfectly
      * fine to output into stdout.
      */
-    if (!outname) {
-        if (!(operating_mode & OP_PREPROCESS))
-            outname = filename_set_extension(inname, ofmt->extension);
+    if (!outname && !(operating_mode & OP_PREPROCESS)) {
+        outname = filename_set_extension(inname, ofmt->extension);
+        if (!strcmp(outname, inname)) {
+            outname = "nasm.out";
+            nasm_error(ERR_WARNING,
+                       "default output file same as input, using `%s' for output\n",
+                       inname, outname);
+        }
     }
 
     depend_ptr = (depend_file || (operating_mode & OP_DEPEND))
-- 
2.19.2