This is the mail archive of the gdb-cvs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] Move make_temp_filename to common/pathstuff.c


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=29be4d9dee1263b36e33421dd8ea69b9b7308391

commit 29be4d9dee1263b36e33421dd8ea69b9b7308391
Author: Tom Tromey <tom@tromey.com>
Date:   Fri Sep 14 11:28:45 2018 -0600

    Move make_temp_filename to common/pathstuff.c
    
    Currently make_temp_filename is a function local to
    write_psymtabs_to_index.  This patch moves it to pathstuff.c so that
    it can be used from other places in gdb.
    
    gdb/ChangeLog
    2018-10-27  Tom Tromey  <tom@tromey.com>
    
    	* dwarf-index-write.c (write_psymtabs_to_index): Move
    	make_temp_filename to common/pathstuff.c.
    	* common/pathstuff.h (make_temp_filename): Declare.
    	* common/pathstuff.c (make_temp_filename): New function, moved
    	from dwarf-index-write.c.

Diff:
---
 gdb/ChangeLog           |  8 ++++++++
 gdb/common/pathstuff.c  | 11 +++++++++++
 gdb/common/pathstuff.h  |  7 +++++++
 gdb/dwarf-index-write.c | 11 +----------
 4 files changed, 27 insertions(+), 10 deletions(-)

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 5c5c8b1..b9ffa69 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,13 @@
 2018-10-27  Tom Tromey  <tom@tromey.com>
 
+	* dwarf-index-write.c (write_psymtabs_to_index): Move
+	make_temp_filename to common/pathstuff.c.
+	* common/pathstuff.h (make_temp_filename): Declare.
+	* common/pathstuff.c (make_temp_filename): New function, moved
+	from dwarf-index-write.c.
+
+2018-10-27  Tom Tromey  <tom@tromey.com>
+
 	* procfs.c (procfs_target::create_inferior): Use get_shell.
 	* cli/cli-cmds.c (shell_escape): Use get_shell.
 	* windows-nat.c (windows_nat_target::create_inferior): Use
diff --git a/gdb/common/pathstuff.c b/gdb/common/pathstuff.c
index 6d8e53f..48ff861 100644
--- a/gdb/common/pathstuff.c
+++ b/gdb/common/pathstuff.c
@@ -202,3 +202,14 @@ get_shell ()
 
   return ret;
 }
+
+/* See common/pathstuff.h.  */
+
+gdb::char_vector
+make_temp_filename (const std::string &f)
+{
+  gdb::char_vector filename_temp (f.length () + 8);
+  strcpy (filename_temp.data (), f.c_str ());
+  strcat (filename_temp.data () + f.size (), "-XXXXXX");
+  return filename_temp;
+}
diff --git a/gdb/common/pathstuff.h b/gdb/common/pathstuff.h
index 0a8caea..d57aaff 100644
--- a/gdb/common/pathstuff.h
+++ b/gdb/common/pathstuff.h
@@ -20,6 +20,8 @@
 #ifndef PATHSTUFF_H
 #define PATHSTUFF_H
 
+#include "common/byte-vector.h"
+
 /* Path utilities.  */
 
 /* Return the real path of FILENAME, expanding all the symbolic links.
@@ -69,4 +71,9 @@ extern std::string get_standard_cache_dir ();
 
 extern const char *get_shell ();
 
+/* Make a filename suitable to pass to mkstemp based on F (e.g.
+   /tmp/foo -> /tmp/foo-XXXXXX).  */
+
+extern gdb::char_vector make_temp_filename (const std::string &f);
+
 #endif /* PATHSTUFF_H */
diff --git a/gdb/dwarf-index-write.c b/gdb/dwarf-index-write.c
index d4585af..4335c39 100644
--- a/gdb/dwarf-index-write.c
+++ b/gdb/dwarf-index-write.c
@@ -24,6 +24,7 @@
 #include "common/byte-vector.h"
 #include "common/filestuff.h"
 #include "common/gdb_unlinker.h"
+#include "common/pathstuff.h"
 #include "common/scoped_fd.h"
 #include "complaints.h"
 #include "dwarf-index-common.h"
@@ -1560,16 +1561,6 @@ write_psymtabs_to_index (struct dwarf2_per_objfile *dwarf2_per_objfile,
   if (stat (objfile_name (objfile), &st) < 0)
     perror_with_name (objfile_name (objfile));
 
-  /* Make a filename suitable to pass to mkstemp based on F (e.g.
-     /tmp/foo -> /tmp/foo-XXXXXX).  */
-  auto make_temp_filename = [] (const std::string &f) -> gdb::char_vector
-    {
-      gdb::char_vector filename_temp (f.length () + 8);
-      strcpy (filename_temp.data (), f.c_str ());
-      strcat (filename_temp.data () + f.size (), "-XXXXXX");
-      return filename_temp;
-    };
-
   std::string filename (std::string (dir) + SLASH_STRING + basename
 			+ (index_kind == dw_index_kind::DEBUG_NAMES
 			   ? INDEX5_SUFFIX : INDEX4_SUFFIX));


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]