X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gdb%2Ffbsd-nat.c;h=6a362dafa59a9df9e2ebc076686367fab2f2f4cc;hb=1da77581c0559e62b80b27f06f81dad4c7a7a0be;hp=2072e0e6f4f923f5e9797408d8fff5e7b2e04b2f;hpb=766062f62f6362cdee0cdd33170002adea365fb2;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/fbsd-nat.c b/gdb/fbsd-nat.c index 2072e0e6f4..6a362dafa5 100644 --- a/gdb/fbsd-nat.c +++ b/gdb/fbsd-nat.c @@ -1,7 +1,6 @@ /* Native-dependent code for FreeBSD. - Copyright (C) 2002, 2003, 2004, 2007, 2008, 2009, 2010, 2011 - Free Software Foundation, Inc. + Copyright (C) 2002-2013 Free Software Foundation, Inc. This file is part of GDB. @@ -40,7 +39,7 @@ char * fbsd_pid_to_exec_file (int pid) { - size_t len = MAXPATHLEN; + size_t len = PATH_MAX; char *buf = xcalloc (len, sizeof (char)); char *path; @@ -56,7 +55,7 @@ fbsd_pid_to_exec_file (int pid) #endif path = xstrprintf ("/proc/%d/file", pid); - if (readlink (path, buf, MAXPATHLEN) == -1) + if (readlink (path, buf, PATH_MAX - 1) == -1) { xfree (buf); buf = NULL; @@ -126,14 +125,15 @@ fbsd_find_memory_regions (find_memory_region_ftype func, void *obfd) { fprintf_filtered (gdb_stdout, "Save segment, %ld bytes at %s (%c%c%c)\n", - size, paddress (target_gdbarch, start), + size, paddress (target_gdbarch (), start), read ? 'r' : '-', write ? 'w' : '-', exec ? 'x' : '-'); } - /* Invoke the callback function to create the corefile segment. */ - func (start, size, read, write, exec, obfd); + /* Invoke the callback function to create the corefile segment. + Pass MODIFIED as true, we do not know the real modification state. */ + func (start, size, read, write, exec, 1, obfd); } do_cleanups (cleanup); @@ -143,14 +143,14 @@ fbsd_find_memory_regions (find_memory_region_ftype func, void *obfd) static int find_signalled_thread (struct thread_info *info, void *data) { - if (info->suspend.stop_signal != TARGET_SIGNAL_0 + if (info->suspend.stop_signal != GDB_SIGNAL_0 && ptid_get_pid (info->ptid) == ptid_get_pid (inferior_ptid)) return 1; return 0; } -static enum target_signal +static enum gdb_signal find_stop_signal (void) { struct thread_info *info = @@ -159,7 +159,7 @@ find_stop_signal (void) if (info) return info->suspend.stop_signal; else - return TARGET_SIGNAL_0; + return GDB_SIGNAL_0; } /* Create appropriate note sections for a corefile, returning them in @@ -202,7 +202,7 @@ fbsd_make_corefile_notes (bfd *obfd, int *note_size) if (get_exec_file (0)) { - char *fname = strrchr (get_exec_file (0), '/') + 1; + const char *fname = lbasename (get_exec_file (0)); char *psargs = xstrdup (fname); if (get_inferior_args ())