diff options
author | Tom Tromey <tom@tromey.com> | 2018-09-14 11:28:45 -0600 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2018-10-27 11:58:40 -0600 |
commit | 29be4d9dee1263b36e33421dd8ea69b9b7308391 (patch) | |
tree | 17db04186271dfff6b2816d044bf23672687a66f | |
parent | 974e68446388769f023c6c9bfb1e67ed75199618 (diff) | |
download | gdb-29be4d9dee1263b36e33421dd8ea69b9b7308391.zip gdb-29be4d9dee1263b36e33421dd8ea69b9b7308391.tar.gz gdb-29be4d9dee1263b36e33421dd8ea69b9b7308391.tar.bz2 |
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.
-rw-r--r-- | gdb/ChangeLog | 8 | ||||
-rw-r--r-- | gdb/common/pathstuff.c | 11 | ||||
-rw-r--r-- | gdb/common/pathstuff.h | 7 | ||||
-rw-r--r-- | 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)); |