This is the mail archive of the gdb-patches@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]

Re: [PATCH] gcore: expand tilde in filename, like in "dump memory" command.


On Thu, Aug 8, 2013 at 9:42 PM, Pedro Alves <palves@redhat.com> wrote:
> On 08/07/2013 10:04 PM, Azat Khuzhin wrote:
>> Before this patch next command will fail:
>> (gdb) generate-core-file ~/core
>> Failed to open '~/core' for output.
>>
>> After this patch:
>> (gdb) generate-core-file ~/core
>> Saved corefile ~/core
>
> Thanks!  Our cvs server is unfortunately stuck at the moment, but
> I'll apply this as soon as it gets unstuck.
>
>> ---
>>  ChangeLog   |    4 ++++
>>  gdb/gcore.c |    6 +++++-
>>  2 files changed, 9 insertions(+), 1 deletion(-)
>>
>> diff --git a/ChangeLog b/ChangeLog
>> index 8b16b09..7aa8e8e 100644
>> --- a/ChangeLog
>> +++ b/ChangeLog
>> @@ -1,3 +1,7 @@
>
>> +2013-07-22  Azat Khuzhin  <a3at.mail@gmail.com>
>> +
>> +     * gdb/gcore.c: Use tilde_expand() to handle tilde in filename
>
> File paths mentioned in ChangeLog entries are relative to the directory
> that holds the ChangeLog.  So gdb/ should be dropped.
> No () when mentioning a function by name.  Period at end of
> sentence.
>
> I notice you don't seem to have a copyright assignment on file.
> The change is small enough that we can put it in without one
> (that's what "tiny" means in the ChangeLog).  If you intend to
> contribute further, contact me off list, and I'll get you
> started on the process.

Yes, I also think that it is small-enough to avoid copyright assignment.
Thanks, I'm thinking about this.

>
>>  bfd *
>>  create_gcore_bfd (const char *filename)
>>  {
>> -  bfd *obfd = gdb_bfd_openw (filename, default_gcore_target ());
>> +  char *fullname = tilde_expand (filename);
>> +
>> +  bfd *obfd = gdb_bfd_openw (fullname, default_gcore_target ());
>
> Empty line goes after last declaration.

Sorry, didn't notice it.

>
>> +  xfree (fullname);
>>
>>    if (!obfd)
>>      error (_("Failed to open '%s' for output."), filename);
>
> Here's the adjusted patch I plan to check in as soon as I'm able to.

Thanks for you review Pedro!

>
> ------------
> From: Azat Khuzhin <a3at.mail@gmail.com>
> Date: 2013-08-08 01:04:35 +0400
>
> gcore: expand tilde in filename, like in "dump memory" command.
>
> Before this patch this fails:
>
>  (gdb) generate-core-file ~/core
>  Failed to open '~/core' for output.
>
> After this patch:
>
>  (gdb) generate-core-file ~/core
>  Saved corefile ~/core
>
> gdb/
> 2013-08-08  Azat Khuzhin  <a3at.mail@gmail.com>  (tiny change)
>
>         * gcore.c (create_gcore_bfd): Use tilde_expand.
> ---
>
>  gdb/gcore.c |    8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/gdb/gcore.c b/gdb/gcore.c
> index 620be54..9c83ec8 100644
> --- a/gdb/gcore.c
> +++ b/gdb/gcore.c
> @@ -34,6 +34,7 @@
>  #include "regcache.h"
>  #include "regset.h"
>  #include "gdb_bfd.h"
> +#include "readline/tilde.h"
>
>  /* The largest amount of memory to read from the target at once.  We
>     must throttle it to limit the amount of memory used by GDB during
> @@ -51,7 +52,12 @@ static int gcore_memory_sections (bfd *);
>  bfd *
>  create_gcore_bfd (const char *filename)
>  {
> -  bfd *obfd = gdb_bfd_openw (filename, default_gcore_target ());
> +  char *fullname;
> +  bfd *obfd;
> +
> +  fullname = tilde_expand (filename);
> +  obfd = gdb_bfd_openw (fullname, default_gcore_target ());
> +  xfree (fullname);
>
>    if (!obfd)
>      error (_("Failed to open '%s' for output."), filename);
>



-- 
Respectfully
Azat Khuzhin


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