On 08/09/2018 06:25 PM, Jan Beulich wrote:
On 09.08.18 at 12:21, <liezhi.yang@windriver.com> wrote:
--- a/gas/as.c
+++ b/gas/as.c
@@ -1259,8 +1259,10 @@ main (int argc, char ** argv)
if (sib.st_ino == sob.st_ino && sib.st_ino != 0)
{
/* Don't let as_fatal remove the output file! */
+ saved_out_file_name = xstrdup (out_file_name);
Actually - why xstrdup()? And why to a global variable?
The complete code is:
[snip]
saved_out_file_name = xstrdup (out_file_name);
out_file_name = NULL;
as_fatal (_("The input '%s' and output '%s' have the same inode"),
argv[i], saved_out_file_name);
[snip]
The out_file_name is set to NULL before as_fatal(), so I need a var to save it,
and it is similar to out_file_name, so I simulated it.